lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <c002e7b30711192343n35c32f40n226d6847445ce22b@mail.gmail.com>
Date:	Tue, 20 Nov 2007 15:43:38 +0800
From:	"jordan liu" <jordanliuster@...il.com>
To:	linux-kernel@...r.kernel.org
Subject: Fwd: kernel panic occurs randomly and has two different oops messages when configuring wireless

1. Problems&Help:
kernel panic occurs randomly and has two different oops messages when
configuring wireless.
I want to know the correct crash position and the solution.

2. Platform:Linux_2.4.17_mvl21 - MIPS (embedded)

3. Oops Messages:
1)Oops-1 messages
------------------------------------------------------------------------------------------------------------------------------------------------
Unable to handle kernel paging request at virtual address 00000004,
epc == 9403fc1c, ra == 9403fa8c
Oops in fault.c:do_page_fault, line 229:
$0 : 00000000 941dc674 00000000 941dc468 000180d1 943ecf70 941dc294 00000000
$8 : 03ffffff 000fffff 941dc260 94172408 00018000 00000002 00018000 00000001
$16: 00000001 941c9620 fffffffe ffffffff 1000fc00 941c8860 941c00c0 9457e4e0
$24: 00000000 2ab86410                   94026000 94027e08 01000000 9403fa8c
Hi : 0000596a
Lo : e147fc52
epc  : 9403fc1c    Not tainted
Status: 1000fc02
Cause : 3080000c
Process swapper (pid: 0, stackpage=94026000)
Stack: 00000000 941c8860 00000001 941c0080 941c95e8 ffffffff 9403fe84 9403b890
       941ed918 a8611800 c0061da8 ffffffef 00000001 941c00c0 9403b25c ffffffef
       94026000 00000001 00000000 9403f918 7ffffffe 941c7f94 941c8864 94027eb8
       00000000 9400b478 0000000b 9403b544 00000000 9400b478 0000000b 9403b544
       9416d530 9000e310 941c8864 94003f30 9416298c 94162958 00808000 94003f30
       00000001 ...
Call Trace: [<9403fe84>] [<9403b890>] [<c0061da8>] [<9403b25c>]
[<94026000>] [<9403f918>]
 [<94027eb8>] [<9403b544>] [<9403b544>] [<9416d530>] [<9416298c>] [<94162958>]
 [<9416d0c0>] [<9416d0d8>] [<94027fe0>] [<94027fe0>] [<94026000>] [<94027f68>]
 [<94028578>] [<94028560>] [<9402802c>] [<9416dc18>] [<94027f84>] [<9416eff4>]
 [<940204b0>]

Code: 3508ffff  8ca70000  8ca20004 <ace20004> ac470000  8ca40008
008c1823  2c620100  14400020
Kernel panic: Aiee, killing interrupt handler!
------------------------------------------------------------------------------------------------------------------------------------------------

2)Oops-2 message
------------------------------------------------------------------------------------------------------------------------------------------------
Unable to handle kernel paging request at virtual address 00000004,
epc == 9403f020, ra == 94130b60
Oops in fault.c:do_page_fault, line 229:
$0 : 00000000 941dc264 94630e70 00000000 94c77cc4 0000464f 000188d7 1000fc01
$8 : 00001407 0101a8c0 6901a8c0 00001407 00000001 00000001 00000001 00000000
$16: 94c77cc4 94c77c60 00004650 941d5a08 94451c4c 00000000 00000003 94451d88
$24: 94451c28 00000714                   94450000 94451bc8 9411b604 94130b60
Hi : 0000007e
Lo : 013ef214
epc  : 9403f020    Not tainted
Status: 1000fc02
Cause : 3080000c
Process wpa_authenticat (pid: 1161, stackpage=94450000)
Stack: 00000001 6901a8c0 941c8868 94125b00 94130b60 00000002 00000000 942f28e8
       6901a8c0 00000000 94c77c60 94018e20 94451d10 941329c0 00000003 94450000
       94bea2e0 94c640a0 94c77c60 9412fb70 00014287 940dd7f0 0080005d 9405e300
       0101a8c0 00001407 6901a8c0 00001407 940dda34 940d0011 940890a0 c0100d80
       00000000 00000000 94451ce0 94451d10 941d1ca0 940fd5a0 94fa600c 9412dd7c
       00000000 ...
Call Trace: [<94125b00>] [<94130b60>] [<941329c0>] [<9412fb70>]
[<940dd7f0>] [<9405e300>]
 [<940dda34>] [<940d0011>] [<940890a0>] [<c0100d80>] [<940fd5a0>] [<9412dd7c>]
 [<9411d5d0>] [<940fd5a0>] [<940e2224>] [<940d78ac>] [<940fd5a0>] [<940fd5a0>]
 [<940e2874>] [<940fd5a0>] [<9411b63c>] [<940fca88>] [<940fd5a0>] [<9411bb78>]
 [<9404a6f8>] [<941236e8>] [<940d1694>] [<9404769c>] [<940d2660>] [<940543cc>]
 [<9402e9a8>] [<9402e950>] [<9406d3d0>] [<94092bb0>] [<94092b74>] [<94071280>]
 [<9406d88c>] [<9406d754>] [<9402d428>] [<940302f8>]

Code: 00221021  8c420004  8c430000 <ac640004> ac830000  ac820004
ac440000  40016000  30e70001
Kernel panic: Aiee, killing interrupt handler!
------------------------------------------------------------------------------------------------------------------------------------------------


3. analyzing through ksymoops
./ksymoops -v vmlinux -k /proc/ksyms -l /proc/modules -o /lib/modules
-m System.map  -t elf32-tradlittlemips -a mips < panic.log

1)Oops-1
------------------------------------------------------------------------------------------------------------------------------------------------
>>RA;  9403fa8c <timer_bh+60/410>
>>$1; 941dc674 <tv1+4/804>
>>$3; 941dc468 <tv2+0/208>
>>$5; 943ecf70 <_end+1feb90/2be31c80>
>>$6; 941dc294 <tv3+34/208>
>>$10; 941dc260 <tv3+0/208>
>>$11; 94172408 <tvecs+8/23fc>
>>$17; 941c9620 <jiffies_64+0/8>
>>$21; 941c8860 <irq_stat+0/20>
>>$22; 941c00c0 <softirq_vec+0/100>
>>$23; 9457e4e0 <_end+390100/2be31c80>
>>$28; 94026000 <init_task_union+0/0>
>>$29; 94027e08 <dummy+1e08/2000>
>>$31; 9403fa8c <timer_bh+60/410>

>>PC;  9403fc1c <timer_bh+1f0/410>   <=====

Trace; 9403fe84 <timer_softirq+48/74>
Trace; 9403b890 <tasklet_action+d0/150>
Trace; c0061da8 <END_OF_CODE+85c0/????>
Trace; 9403b25c <do_softirq_from_daemon+c4/194>
Trace; 94026000 <init_task_union+0/0>
Trace; 9403f918 <update_process_times+34/f8>
Trace; 94027eb8 <dummy+1eb8/2000>
Trace; 9403b544 <do_softirq+30/3c>
Trace; 9403b544 <do_softirq+30/3c>
Trace; 9416d530 <__gnu_compiled_c+c0/f0>
Trace; 9416298c <avalanche_hw0_irqdispatch+e8/f8>
Trace; 94162958 <avalanche_hw0_irqdispatch+b4/f8>
Trace; 9416d0c0 <mipsIRQ+100/160>
Trace; 9416d0d8 <mipsIRQ+118/160>
Trace; 94027fe0 <dummy+1fe0/2000>
(skip...)

Kernel panic: Aiee, killing interrupt handler!

1 warning and 1 error issued.  Results may not be reliable.
------------------------------------------------------------------------------------------------------------------------------------------------

2)Oops-2
------------------------------------------------------------------------------------------------------------------------------------------------
>>RA;  94130b60 <ip_ct_refresh+78/bc>
>>$1; 941dc264 <tv3+4/208>
>>$2; 94630e70 <_end+442a90/2be31c80>
>>$4; 94c77cc4 <_end+a898e4/2be31c80>
>>$16; 94c77cc4 <_end+a898e4/2be31c80>
>>$17; 94c77c60 <_end+a89880/2be31c80>
>>$19; 941d5a08 <ip_conntrack_protocol_udp+0/38>
>>$20; 94451c4c <_end+26386c/2be31c80>
>>$23; 94451d88 <_end+2639a8/2be31c80>
>>$24; 94451c28 <_end+263848/2be31c80>
>>$28; 94450000 <_end+261c20/2be31c80>
>>$29; 94451bc8 <_end+2637e8/2be31c80>
>>$30; 9411b604 <udp_getfrag+0/134>
>>$31; 94130b60 <ip_ct_refresh+78/bc>

>>PC;  9403f020 <add_timer+10c/18c>   <=====

Trace; 94125b00 <inet_addr_type+84/dc>
Trace; 94130b60 <ip_ct_refresh+78/bc>
Trace; 941329c0 <udp_packet+30/70>
Trace; 9412fb70 <ip_conntrack_in+274/39c>
Trace; 940dd7f0 <neigh_alloc+8c/150>
Trace; 9405e300 <refile_buffer+c/1c>
Trace; 940dda34 <neigh_create+90/284>
Trace; 940d0011 <erase_write+4d/170>
Trace; 940890a0 <read_data+370/47c>
Trace; c0100d80 <END_OF_CODE+a7598/????>
Trace; 940fd5a0 <output_maybe_reroute+0/24>
Trace; 9412dd7c <ip_conntrack_local+64/70>
Trace; 9411d5d0 <arp_bind_neighbour+9c/d4>
Trace; 940fd5a0 <output_maybe_reroute+0/24>
Trace; 940e2224 <nf_iterate+70/144>
(skip...)

Kernel panic: Aiee, killing interrupt handler!

1 warning and 1 error issued.  Results may not be reliable.
------------------------------------------------------------------------------------------------------------------------------------------------

4. Objdump kernel vmlinux
the result is following:
------------------------------------------------------------------------------------------------------------------------------------------------
vmlinux:     file format elf32-tradlittlemips

Disassembly of section .text:

ffffffff94020000 <_ftext>:
    ...

ffffffff94020280 <except_vec2_generic>:
ffffffff94020280:    401a8000     mfc0    $k0,$16
ffffffff94020284:    241bfff8     li    $k1,-8
ffffffff94020288:    035bd024     and    $k0,$k0,$k1
ffffffff9402028c:    375a0002     ori    $k0,$k0,0x2
ffffffff94020290:    409a8000     mtc0    $k0,$16
    ...
(skip ...)

ffffffff9403ef14 <add_timer>:
ffffffff9403ef14:    27bdffe8     addiu    $sp,$sp,-24
ffffffff9403ef18:    afbf0010     sw    $ra,16($sp)
ffffffff9403ef1c:    40076000     mfc0    $a3,$12
ffffffff9403ef20:    00000000     nop
ffffffff9403ef24:    34e10001     ori    $at,$a3,0x1
ffffffff9403ef28:    38210001     xori    $at,$at,0x1
ffffffff9403ef2c:    40816000     mtc0    $at,$12
ffffffff9403ef30:    00000040     sll    $zero,$zero,0x1
ffffffff9403ef34:    00000040     sll    $zero,$zero,0x1
ffffffff9403ef38:    00000040     sll    $zero,$zero,0x1
ffffffff9403ef3c:    8c820000     lw    $v0,0($a0)
ffffffff9403ef40:    14400046     bnez    $v0,ffffffff9403f05c <add_timer+0x148>
ffffffff9403ef44:    00000000     nop
ffffffff9403ef48:    8c860008     lw    $a2,8($a0)
ffffffff9403ef4c:    3c02941e     lui    $v0,0x941e
ffffffff9403ef50:    8c42ce74     lw    $v0,-12684($v0)
ffffffff9403ef54:    00c22823     subu    $a1,$a2,$v0
ffffffff9403ef58:    2ca30100     sltiu    $v1,$a1,256
ffffffff9403ef5c:    14600024     bnez    $v1,ffffffff9403eff0 <add_timer+0xdc>
ffffffff9403ef60:    30c200ff     andi    $v0,$a2,0xff
ffffffff9403ef64:    2ca24000     sltiu    $v0,$a1,16384
ffffffff9403ef68:    10400007     beqz    $v0,ffffffff9403ef88 <add_timer+0x74>
ffffffff9403ef6c:    00061142     srl    $v0,$a2,0x5
ffffffff9403ef70:    304201f8     andi    $v0,$v0,0x1f8
ffffffff9403ef74:    3c01941e     lui    $at,0x941e
ffffffff9403ef78:    2421c46c     addiu    $at,$at,-15252
ffffffff9403ef7c:    00221021     addu    $v0,$at,$v0
ffffffff9403ef80:    0900fc07     j    ffffffff9403f01c <add_timer+0x108>
ffffffff9403ef84:    8c420004     lw    $v0,4($v0)
ffffffff9403ef88:    3c02000f     lui    $v0,0xf
ffffffff9403ef8c:    3442ffff     ori    $v0,$v0,0xffff
ffffffff9403ef90:    0045102b     sltu    $v0,$v0,$a1
ffffffff9403ef94:    14400008     bnez    $v0,ffffffff9403efb8 <add_timer+0xa4>
ffffffff9403ef98:    3c0203ff     lui    $v0,0x3ff
ffffffff9403ef9c:    000612c2     srl    $v0,$a2,0xb
ffffffff9403efa0:    304201f8     andi    $v0,$v0,0x1f8
ffffffff9403efa4:    3c01941e     lui    $at,0x941e
ffffffff9403efa8:    2421c264     addiu    $at,$at,-15772
ffffffff9403efac:    00221021     addu    $v0,$at,$v0
ffffffff9403efb0:    0900fc07     j    ffffffff9403f01c <add_timer+0x108>
ffffffff9403efb4:    8c420004     lw    $v0,4($v0)
ffffffff9403efb8:    3442ffff     ori    $v0,$v0,0xffff
ffffffff9403efbc:    0045102b     sltu    $v0,$v0,$a1
ffffffff9403efc0:    14400007     bnez    $v0,ffffffff9403efe0 <add_timer+0xcc>
ffffffff9403efc4:    00061442     srl    $v0,$a2,0x11
ffffffff9403efc8:    304201f8     andi    $v0,$v0,0x1f8
ffffffff9403efcc:    3c01941e     lui    $at,0x941e
ffffffff9403efd0:    2421c05c     addiu    $at,$at,-16292
ffffffff9403efd4:    00221021     addu    $v0,$at,$v0
ffffffff9403efd8:    0900fc07     j    ffffffff9403f01c <add_timer+0x108>
ffffffff9403efdc:    8c420004     lw    $v0,4($v0)
ffffffff9403efe0:    04a10009     bgez    $a1,ffffffff9403f008 <add_timer+0xf4>
ffffffff9403efe4:    00061682     srl    $v0,$a2,0x1a
ffffffff9403efe8:    3c02941e     lui    $v0,0x941e
ffffffff9403efec:    8c42c670     lw    $v0,-14736($v0)
ffffffff9403eff0:    000210c0     sll    $v0,$v0,0x3
ffffffff9403eff4:    3c01941e     lui    $at,0x941e
ffffffff9403eff8:    2421c674     addiu    $at,$at,-14732
ffffffff9403effc:    00221021     addu    $v0,$at,$v0
ffffffff9403f000:    0900fc07     j    ffffffff9403f01c <add_timer+0x108>
ffffffff9403f004:    8c420004     lw    $v0,4($v0)
ffffffff9403f008:    000210c0     sll    $v0,$v0,0x3
ffffffff9403f00c:    3c01941e     lui    $at,0x941e
ffffffff9403f010:    2421be54     addiu    $at,$at,-16812
ffffffff9403f014:    00221021     addu    $v0,$at,$v0
ffffffff9403f018:    8c420004     lw    $v0,4($v0)
ffffffff9403f01c:    8c430000     lw    $v1,0($v0)
ffffffff9403f020:    ac640004     sw    $a0,4($v1)
ffffffff9403f024:    ac830000     sw    $v1,0($a0)
ffffffff9403f028:    ac820004     sw    $v0,4($a0)
ffffffff9403f02c:    ac440000     sw    $a0,0($v0)
ffffffff9403f030:    40016000     mfc0    $at,$12
ffffffff9403f034:    30e70001     andi    $a3,$a3,0x1
ffffffff9403f038:    34210001     ori    $at,$at,0x1
ffffffff9403f03c:    38210001     xori    $at,$at,0x1
ffffffff9403f040:    00e13825     or    $a3,$a3,$at
ffffffff9403f044:    40876000     mtc0    $a3,$12
    ...
ffffffff9403f054:    0900fc26     j    ffffffff9403f098 <add_timer+0x184>
ffffffff9403f058:    8fbf0010     lw    $ra,16($sp)
ffffffff9403f05c:    40016000     mfc0    $at,$12
ffffffff9403f060:    30e70001     andi    $a3,$a3,0x1
ffffffff9403f064:    34210001     ori    $at,$at,0x1
ffffffff9403f068:    38210001     xori    $at,$at,0x1
ffffffff9403f06c:    00e13825     or    $a3,$a3,$at
ffffffff9403f070:    40876000     mtc0    $a3,$12
    ...
ffffffff9403f080:    27a30010     addiu    $v1,$sp,16
ffffffff9403f084:    3c049417     lui    $a0,0x9417
ffffffff9403f088:    24842414     addiu    $a0,$a0,9236
ffffffff9403f08c:    0d00d260     jal    ffffffff94034980 <printk>
ffffffff9403f090:    8c650000     lw    $a1,0($v1)
ffffffff9403f094:    8fbf0010     lw    $ra,16($sp)
ffffffff9403f098:    03e00008     jr    $ra
ffffffff9403f09c:    27bd0018     addiu    $sp,$sp,24

ffffffff9403f0a0 <mod_timer>:
ffffffff9403f0a0:    40076000     mfc0    $a3,$12

(skip ...)

ffffffff9403fa2c <timer_bh>:
ffffffff9403fa2c:    27bdffe0     addiu    $sp,$sp,-32
ffffffff9403fa30:    afbf0018     sw    $ra,24($sp)
ffffffff9403fa34:    afb10014     sw    $s1,20($sp)
ffffffff9403fa38:    afb00010     sw    $s0,16($sp)
ffffffff9403fa3c:    40016000     mfc0    $at,$12
ffffffff9403fa40:    00000000     nop
ffffffff9403fa44:    34210001     ori    $at,$at,0x1
ffffffff9403fa48:    38210001     xori    $at,$at,0x1
ffffffff9403fa4c:    40816000     mtc0    $at,$12
    ...
ffffffff9403fa5c:    3c11941d     lui    $s1,0x941d
ffffffff9403fa60:    26319620     addiu    $s1,$s1,-27104
ffffffff9403fa64:    8e220000     lw    $v0,0($s1)
ffffffff9403fa68:    3c03941d     lui    $v1,0x941d
ffffffff9403fa6c:    8c639678     lw    $v1,-27016($v1)
ffffffff9403fa70:    00438023     subu    $s0,$v0,$v1
ffffffff9403fa74:    12000005     beqz    $s0,ffffffff9403fa8c <timer_bh+0x60>
ffffffff9403fa78:    00701021     addu    $v0,$v1,$s0
ffffffff9403fa7c:    3c01941d     lui    $at,0x941d
ffffffff9403fa80:    ac229678     sw    $v0,-27016($at)
ffffffff9403fa84:    0d00fdcd     jal    ffffffff9403f734 <update_wall_time>
ffffffff9403fa88:    02002021     move    $a0,$s0
ffffffff9403fa8c:    40016000     mfc0    $at,$12
ffffffff9403fa90:    00000000     nop
ffffffff9403fa94:    3421001f     ori    $at,$at,0x1f
ffffffff9403fa98:    3821001e     xori    $at,$at,0x1e
ffffffff9403fa9c:    40816000     mtc0    $at,$12
ffffffff9403faa0:    3c02941d     lui    $v0,0x941d
ffffffff9403faa4:    8c429630     lw    $v0,-27088($v0)
ffffffff9403faa8:    00501023     subu    $v0,$v0,$s0
ffffffff9403faac:    3c01941d     lui    $at,0x941d
ffffffff9403fab0:    ac229630     sw    $v0,-27088($at)
ffffffff9403fab4:    04410032     bgez    $v0,ffffffff9403fb80 <timer_bh+0x154>
ffffffff9403fab8:    244201f4     addiu    $v0,$v0,500
ffffffff9403fabc:    3c01941d     lui    $at,0x941d
ffffffff9403fac0:    0d00fe77     jal    ffffffff9403f9dc <count_active_tasks>
ffffffff9403fac4:    ac229630     sw    $v0,-27088($at)
ffffffff9403fac8:    00021880     sll    $v1,$v0,0x2
ffffffff9403facc:    00621821     addu    $v1,$v1,$v0
ffffffff9403fad0:    000318c0     sll    $v1,$v1,0x3
ffffffff9403fad4:    3c05941d     lui    $a1,0x941d
ffffffff9403fad8:    8ca5964c     lw    $a1,-27060($a1)
ffffffff9403fadc:    00621821     addu    $v1,$v1,$v0
ffffffff9403fae0:    00052100     sll    $a0,$a1,0x4
ffffffff9403fae4:    00852023     subu    $a0,$a0,$a1
ffffffff9403fae8:    00042080     sll    $a0,$a0,0x2
ffffffff9403faec:    00852023     subu    $a0,$a0,$a1
ffffffff9403faf0:    000420c0     sll    $a0,$a0,0x3
ffffffff9403faf4:    00852023     subu    $a0,$a0,$a1
ffffffff9403faf8:    00641821     addu    $v1,$v1,$a0
ffffffff9403fafc:    00031880     sll    $v1,$v1,0x2
ffffffff9403fb00:    00031ac2     srl    $v1,$v1,0xb
ffffffff9403fb04:    3c01941d     lui    $at,0x941d
ffffffff9403fb08:    ac23964c     sw    $v1,-27060($at)
ffffffff9403fb0c:    00021900     sll    $v1,$v0,0x4
ffffffff9403fb10:    3c05941d     lui    $a1,0x941d
ffffffff9403fb14:    8ca59650     lw    $a1,-27056($a1)
ffffffff9403fb18:    00621821     addu    $v1,$v1,$v0
ffffffff9403fb1c:    00052180     sll    $a0,$a1,0x6
ffffffff9403fb20:    00852023     subu    $a0,$a0,$a1
ffffffff9403fb24:    00042100     sll    $a0,$a0,0x4
ffffffff9403fb28:    00852023     subu    $a0,$a0,$a1
ffffffff9403fb2c:    00641821     addu    $v1,$v1,$a0
ffffffff9403fb30:    00031840     sll    $v1,$v1,0x1
ffffffff9403fb34:    00031ac2     srl    $v1,$v1,0xb
ffffffff9403fb38:    3c01941d     lui    $at,0x941d
ffffffff9403fb3c:    ac239650     sw    $v1,-27056($at)
ffffffff9403fb40:    00021840     sll    $v1,$v0,0x1
ffffffff9403fb44:    00621821     addu    $v1,$v1,$v0
ffffffff9403fb48:    00031880     sll    $v1,$v1,0x2
ffffffff9403fb4c:    3c05941d     lui    $a1,0x941d
ffffffff9403fb50:    8ca59654     lw    $a1,-27052($a1)
ffffffff9403fb54:    00621823     subu    $v1,$v1,$v0
ffffffff9403fb58:    000521c0     sll    $a0,$a1,0x7
ffffffff9403fb5c:    00852023     subu    $a0,$a0,$a1
ffffffff9403fb60:    00042080     sll    $a0,$a0,0x2
ffffffff9403fb64:    00852021     addu    $a0,$a0,$a1
ffffffff9403fb68:    00042080     sll    $a0,$a0,0x2
ffffffff9403fb6c:    00852021     addu    $a0,$a0,$a1
ffffffff9403fb70:    00832021     addu    $a0,$a0,$v1
ffffffff9403fb74:    000422c2     srl    $a0,$a0,0xb
ffffffff9403fb78:    3c01941d     lui    $at,0x941d
ffffffff9403fb7c:    ac249654     sw    $a0,-27052($at)
ffffffff9403fb80:    40016000     mfc0    $at,$12
ffffffff9403fb84:    00000000     nop
ffffffff9403fb88:    34210001     ori    $at,$at,0x1
ffffffff9403fb8c:    38210001     xori    $at,$at,0x1
ffffffff9403fb90:    40816000     mtc0    $at,$12
    ...
ffffffff9403fba0:    8e220000     lw    $v0,0($s1)
ffffffff9403fba4:    3c03941e     lui    $v1,0x941e
ffffffff9403fba8:    8c63ce74     lw    $v1,-12684($v1)
ffffffff9403fbac:    00431023     subu    $v0,$v0,$v1
ffffffff9403fbb0:    04400098     bltz    $v0,ffffffff9403fe14 <timer_bh+0x3e8>
ffffffff9403fbb4:    00000000     nop
ffffffff9403fbb8:    3c02941e     lui    $v0,0x941e
ffffffff9403fbbc:    8c42c670     lw    $v0,-14736($v0)
ffffffff9403fbc0:    14400060     bnez    $v0,ffffffff9403fd44 <timer_bh+0x318>
ffffffff9403fbc4:    000210c0     sll    $v0,$v0,0x3
ffffffff9403fbc8:    240d0001     li    $t5,1
ffffffff9403fbcc:    240f0001     li    $t7,1
ffffffff9403fbd0:    3c0e941e     lui    $t6,0x941e
ffffffff9403fbd4:    8dcece74     lw    $t6,-12684($t6)
ffffffff9403fbd8:    3c0b9417     lui    $t3,0x9417
ffffffff9403fbdc:    256b2404     addiu    $t3,$t3,9220
ffffffff9403fbe0:    8d6a0000     lw    $t2,0($t3)
ffffffff9403fbe4:    8d420000     lw    $v0,0($t2)
ffffffff9403fbe8:    000210c0     sll    $v0,$v0,0x3
ffffffff9403fbec:    24420004     addiu    $v0,$v0,4
ffffffff9403fbf0:    01423021     addu    $a2,$t2,$v0
ffffffff9403fbf4:    8cc50000     lw    $a1,0($a2)
ffffffff9403fbf8:    50a60042     0x50a60042
ffffffff9403fbfc:    acc60000     sw    $a2,0($a2)
ffffffff9403fc00:    01c06021     move    $t4,$t6
ffffffff9403fc04:    3c09000f     lui    $t1,0xf
ffffffff9403fc08:    3529ffff     ori    $t1,$t1,0xffff
ffffffff9403fc0c:    3c0803ff     lui    $t0,0x3ff
ffffffff9403fc10:    3508ffff     ori    $t0,$t0,0xffff
ffffffff9403fc14:    8ca70000     lw    $a3,0($a1)
ffffffff9403fc18:    8ca20004     lw    $v0,4($a1)
ffffffff9403fc1c:    ace20004     sw    $v0,4($a3)
ffffffff9403fc20:    ac470000     sw    $a3,0($v0)
ffffffff9403fc24:    8ca40008     lw    $a0,8($a1)
ffffffff9403fc28:    008c1823     subu    $v1,$a0,$t4
ffffffff9403fc2c:    2c620100     sltiu    $v0,$v1,256
ffffffff9403fc30:    14400020     bnez    $v0,ffffffff9403fcb4 <timer_bh+0x288>
ffffffff9403fc34:    308200ff     andi    $v0,$a0,0xff
ffffffff9403fc38:    2c624000     sltiu    $v0,$v1,16384
ffffffff9403fc3c:    10400007     beqz    $v0,ffffffff9403fc5c <timer_bh+0x230>
ffffffff9403fc40:    00041142     srl    $v0,$a0,0x5
ffffffff9403fc44:    304201f8     andi    $v0,$v0,0x1f8
ffffffff9403fc48:    3c01941e     lui    $at,0x941e
ffffffff9403fc4c:    2421c46c     addiu    $at,$at,-15252
ffffffff9403fc50:    00221021     addu    $v0,$at,$v0
ffffffff9403fc54:    0900ff38     j    ffffffff9403fce0 <timer_bh+0x2b4>
ffffffff9403fc58:    8c430004     lw    $v1,4($v0)
ffffffff9403fc5c:    0123102b     sltu    $v0,$t1,$v1
ffffffff9403fc60:    14400008     bnez    $v0,ffffffff9403fc84 <timer_bh+0x258>
ffffffff9403fc64:    0103102b     sltu    $v0,$t0,$v1
ffffffff9403fc68:    000412c2     srl    $v0,$a0,0xb
ffffffff9403fc6c:    304201f8     andi    $v0,$v0,0x1f8
ffffffff9403fc70:    3c01941e     lui    $at,0x941e
ffffffff9403fc74:    2421c264     addiu    $at,$at,-15772
ffffffff9403fc78:    00221021     addu    $v0,$at,$v0
ffffffff9403fc7c:    0900ff38     j    ffffffff9403fce0 <timer_bh+0x2b4>
ffffffff9403fc80:    8c430004     lw    $v1,4($v0)
ffffffff9403fc84:    14400007     bnez    $v0,ffffffff9403fca4 <timer_bh+0x278>
ffffffff9403fc88:    00041442     srl    $v0,$a0,0x11
ffffffff9403fc8c:    304201f8     andi    $v0,$v0,0x1f8
ffffffff9403fc90:    3c01941e     lui    $at,0x941e
ffffffff9403fc94:    2421c05c     addiu    $at,$at,-16292
ffffffff9403fc98:    00221021     addu    $v0,$at,$v0
ffffffff9403fc9c:    0900ff38     j    ffffffff9403fce0 <timer_bh+0x2b4>
ffffffff9403fca0:    8c430004     lw    $v1,4($v0)
ffffffff9403fca4:    04610009     bgez    $v1,ffffffff9403fccc <timer_bh+0x2a0>
ffffffff9403fca8:    00041682     srl    $v0,$a0,0x1a
ffffffff9403fcac:    3c02941e     lui    $v0,0x941e
ffffffff9403fcb0:    8c42c670     lw    $v0,-14736($v0)
ffffffff9403fcb4:    000210c0     sll    $v0,$v0,0x3
ffffffff9403fcb8:    3c01941e     lui    $at,0x941e
ffffffff9403fcbc:    2421c674     addiu    $at,$at,-14732
ffffffff9403fcc0:    00221021     addu    $v0,$at,$v0
ffffffff9403fcc4:    0900ff38     j    ffffffff9403fce0 <timer_bh+0x2b4>
ffffffff9403fcc8:    8c430004     lw    $v1,4($v0)
ffffffff9403fccc:    000210c0     sll    $v0,$v0,0x3
ffffffff9403fcd0:    3c01941e     lui    $at,0x941e
ffffffff9403fcd4:    2421be54     addiu    $at,$at,-16812
ffffffff9403fcd8:    00221021     addu    $v0,$at,$v0
ffffffff9403fcdc:    8c430004     lw    $v1,4($v0)
ffffffff9403fce0:    8c620000     lw    $v0,0($v1)
ffffffff9403fce4:    ac450004     sw    $a1,4($v0)
ffffffff9403fce8:    aca20000     sw    $v0,0($a1)
ffffffff9403fcec:    aca30004     sw    $v1,4($a1)
ffffffff9403fcf0:    ac650000     sw    $a1,0($v1)
ffffffff9403fcf4:    00e02821     move    $a1,$a3
ffffffff9403fcf8:    54a6ffc7     0x54a6ffc7
ffffffff9403fcfc:    8ca70000     lw    $a3,0($a1)
ffffffff9403fd00:    acc60000     sw    $a2,0($a2)
ffffffff9403fd04:    acc60004     sw    $a2,4($a2)
ffffffff9403fd08:    8d420000     lw    $v0,0($t2)
ffffffff9403fd0c:    24420001     addiu    $v0,$v0,1
ffffffff9403fd10:    3042003f     andi    $v0,$v0,0x3f
ffffffff9403fd14:    ad420000     sw    $v0,0($t2)
ffffffff9403fd18:    8d630000     lw    $v1,0($t3)
ffffffff9403fd1c:    8c620000     lw    $v0,0($v1)
ffffffff9403fd20:    144f0005     bne    $v0,$t7,ffffffff9403fd38
<timer_bh+0x30c>
ffffffff9403fd24:    00000000     nop
ffffffff9403fd28:    25ad0001     addiu    $t5,$t5,1
ffffffff9403fd2c:    2da20005     sltiu    $v0,$t5,5
ffffffff9403fd30:    1440ffab     bnez    $v0,ffffffff9403fbe0 <timer_bh+0x1b4>
ffffffff9403fd34:    256b0004     addiu    $t3,$t3,4
ffffffff9403fd38:    3c02941e     lui    $v0,0x941e
ffffffff9403fd3c:    8c42c670     lw    $v0,-14736($v0)
ffffffff9403fd40:    000210c0     sll    $v0,$v0,0x3
ffffffff9403fd44:    3c10941e     lui    $s0,0x941e
ffffffff9403fd48:    2610c674     addiu    $s0,$s0,-14732
ffffffff9403fd4c:    02028021     addu    $s0,$s0,$v0
ffffffff9403fd50:    8e050000     lw    $a1,0($s0)
ffffffff9403fd54:    10b00020     beq    $a1,$s0,ffffffff9403fdd8
<timer_bh+0x3ac>
ffffffff9403fd58:    00000000     nop
ffffffff9403fd5c:    8e220000     lw    $v0,0($s1)
ffffffff9403fd60:    8ca30008     lw    $v1,8($a1)
ffffffff9403fd64:    00431023     subu    $v0,$v0,$v1
ffffffff9403fd68:    0440001b     bltz    $v0,ffffffff9403fdd8 <timer_bh+0x3ac>
ffffffff9403fd6c:    00000000     nop
ffffffff9403fd70:    8ca60010     lw    $a2,16($a1)
ffffffff9403fd74:    8ca30000     lw    $v1,0($a1)
ffffffff9403fd78:    10600004     beqz    $v1,ffffffff9403fd8c <timer_bh+0x360>
ffffffff9403fd7c:    8ca4000c     lw    $a0,12($a1)
ffffffff9403fd80:    8ca20004     lw    $v0,4($a1)
ffffffff9403fd84:    ac620004     sw    $v0,4($v1)
ffffffff9403fd88:    ac430000     sw    $v1,0($v0)
ffffffff9403fd8c:    aca00004     sw    $zero,4($a1)
ffffffff9403fd90:    aca00000     sw    $zero,0($a1)
ffffffff9403fd94:    40016000     mfc0    $at,$12
ffffffff9403fd98:    00000000     nop
ffffffff9403fd9c:    3421001f     ori    $at,$at,0x1f
ffffffff9403fda0:    3821001e     xori    $at,$at,0x1e
ffffffff9403fda4:    40816000     mtc0    $at,$12
ffffffff9403fda8:    00c0f809     jalr    $a2
ffffffff9403fdac:    00000000     nop
ffffffff9403fdb0:    40016000     mfc0    $at,$12
ffffffff9403fdb4:    00000000     nop
ffffffff9403fdb8:    34210001     ori    $at,$at,0x1
ffffffff9403fdbc:    38210001     xori    $at,$at,0x1
ffffffff9403fdc0:    40816000     mtc0    $at,$12
    ...
ffffffff9403fdd0:    0900ff55     j    ffffffff9403fd54 <timer_bh+0x328>
ffffffff9403fdd4:    8e050000     lw    $a1,0($s0)
ffffffff9403fdd8:    3c02941e     lui    $v0,0x941e
ffffffff9403fddc:    8c42ce74     lw    $v0,-12684($v0)
ffffffff9403fde0:    3c03941e     lui    $v1,0x941e
ffffffff9403fde4:    8c63c670     lw    $v1,-14736($v1)
ffffffff9403fde8:    24420001     addiu    $v0,$v0,1
ffffffff9403fdec:    24630001     addiu    $v1,$v1,1
ffffffff9403fdf0:    3c01941e     lui    $at,0x941e
ffffffff9403fdf4:    ac22ce74     sw    $v0,-12684($at)
ffffffff9403fdf8:    8e240000     lw    $a0,0($s1)
ffffffff9403fdfc:    306300ff     andi    $v1,$v1,0xff
ffffffff9403fe00:    3c01941e     lui    $at,0x941e
ffffffff9403fe04:    ac23c670     sw    $v1,-14736($at)
ffffffff9403fe08:    00822023     subu    $a0,$a0,$v0
ffffffff9403fe0c:    0481ff6a     bgez    $a0,ffffffff9403fbb8 <timer_bh+0x18c>
ffffffff9403fe10:    00000000     nop
ffffffff9403fe14:    40016000     mfc0    $at,$12
ffffffff9403fe18:    00000000     nop
ffffffff9403fe1c:    3421001f     ori    $at,$at,0x1f
ffffffff9403fe20:    3821001e     xori    $at,$at,0x1e
ffffffff9403fe24:    40816000     mtc0    $at,$12
ffffffff9403fe28:    8fbf0018     lw    $ra,24($sp)
ffffffff9403fe2c:    8fb10014     lw    $s1,20($sp)
ffffffff9403fe30:    8fb00010     lw    $s0,16($sp)
ffffffff9403fe34:    03e00008     jr    $ra
ffffffff9403fe38:    27bd0020     addiu    $sp,$sp,32

ffffffff9403fe3c <timer_softirq>:
ffffffff9403fe3c:    27bdffe0     addiu    $sp,$sp,-32

(skip ...)

--------------------------------------------------------------------------------------------

5. The attached is the source file of timer.c(linux-2.4.17_mvl21/kernel/timer.c)


Thanks.

-- 
Best Regards,

Libing Liu

Download attachment "timer.c" of type "application/octet-stream" (37533 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ