2000-11-16 04:27:38

by Philippe Troin

[permalink] [raw]
Subject: 2.2.17: TCP keepalive oops

Got this oops (captured by kmsgdump) today.
The machine was completely stuck.


ksymoops 2.3.4 on i686 2.2.17. Options used
-V (default)
-k /proc/ksyms (default)
-l /proc/modules (default)
-o /lib/modules/2.2.17/ (default)
-m /boot/System.map-2.2.17 (default)

Warning: You did not tell me where to find symbol information. I will
assume that the log matches the kernel and modules that are running
right now and I'll use the default options above for symbol resolution.
If the current kernel and/or modules do not match the log, you can get
more accurate output by telling me the kernel version and where to find
map, modules, ksyms etc. ksymoops -h explains the options.

<1>Unable to handle kernel NULL pointer dereference at virtual address 00000022
<1>current->tss.cr3 = 00101000, %cr3 = 00101000
<1>*pde = 00000000
<6>Oops: 0000
<6>CPU: 0
<6>EIP: 0010:[<c016988c>]
Using defaults from ksymoops -t elf32-i386 -a i386
<6>EFLAGS: 00010202
<6>eax: cfd00000 ebx: 00000002 ecx: 00000000 edx: 00000000
<6>esi: 0369af3b edi: 000070a2 ebp: 00000010 esp: cfffbe8c
<6>ds: 0018 es: 0018 ss: 0018
<6>Process swapper (pid: 0, process nr: 1, stackpage=cfffb000)
<6>Stack: 00000001 00000010 cf782ec0 00000001 00000000 00000000 cfffbf54 cfff1000
<6> c0203700 c0169ce9 c0203f70 cfffbf54 cfffbedc c0115d42 c0203f34 c0169cb0
<6> 00000001 cfffbf1c 00000000 00000000 cfffbf1c c011614d 00000000 00000001
<6>Call Trace: [<c0169ce9>] [<c0115d42>] [<c0169cb0>] [<c011614d>] [<c0111b14>] [<c0111ac6>] [<c011d451>]
<6> [<c010ce39>] [<c010ce50>] [<c010b8a8>] [<c0108ac9>] [<c011d451>] [<c0106000>] [<c010ce39>] [<c010ce50>]
<6> [<c01cf660>]
<6>Code: 8b 43 20 89 44 24 18 8b 43 30 85 c0 0f 85 09 01 00 00 8a 43

>>EIP; c016988c <tcp_keepalive+38/19c> <=====
Trace; c0169ce9 <tcp_sltimer_handler+39/80>
Trace; c0115d42 <update_wall_time+12/48>
Trace; c0169cb0 <tcp_sltimer_handler+0/80>
Trace; c011614d <timer_bh+2d1/404>
Trace; c0111b14 <do_edge_ioapic_IRQ+78/a8>
Trace; c0111ac6 <do_edge_ioapic_IRQ+2a/a8>
Trace; c011d451 <do_bottom_half+89/ac>
Trace; c010ce39 <do_IRQ+3d/58>
Trace; c010ce50 <do_IRQ+54/58>
Trace; c010b8a8 <common_interrupt+18/20>
Trace; c0108ac9 <cpu_idle+41/54>
Trace; c011d451 <do_bottom_half+89/ac>
Trace; c0106000 <get_options+0/7c>
Trace; c010ce39 <do_IRQ+3d/58>
Trace; c010ce50 <do_IRQ+54/58>
Trace; c01cf660 <lk_lockmsg+a40/1860>
Code; c016988c <tcp_keepalive+38/19c>
00000000 <_EIP>:
Code; c016988c <tcp_keepalive+38/19c> <=====
0: 8b 43 20 mov 0x20(%ebx),%eax <=====
Code; c016988f <tcp_keepalive+3b/19c>
3: 89 44 24 18 mov %eax,0x18(%esp,1)
Code; c0169893 <tcp_keepalive+3f/19c>
7: 8b 43 30 mov 0x30(%ebx),%eax
Code; c0169896 <tcp_keepalive+42/19c>
a: 85 c0 test %eax,%eax
Code; c0169898 <tcp_keepalive+44/19c>
c: 0f 85 09 01 00 00 jne 11b <_EIP+0x11b> c01699a7 <tcp_keepalive+153/19c>
Code; c016989e <tcp_keepalive+4a/19c>
12: 8a 43 00 mov 0x0(%ebx),%al

<6>Aiee, killing interrupt handler
<0>Kernel panic: Attempted to kill the idle task!

1 warning issued. Results may not be reliable.