lkml.org 
[lkml]   [2004]   [Sep]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subject[OOPS] Oops with kernel 2.6.9-rc2
Dear people,

Yesterday night, I was running my own self compiled kernel 2.6.9-rc2,
without any patches applied and, while I had my computer left unattended
for some moments, I saw that it generated two Oopsen in a row.

BTW, I was excited to use 2.6.9-rc2 because it included the 8 byte-fix for
USB urb's, which is needed for my desktop to cooperate with my USB Drive.

I'm attaching the decoded Oops through ksymoops. I'm using a Debian testing
machine with a Duron 600MHz processor, an Asus A7V motherboard and 386MB of
memory. The kernel is not tainted. I used GCC 3.3.4 to compile the kernel;
gcc --version says: gcc (GCC) 3.3.4 (Debian 1:3.3.4-6sarge1).

Since the decoded Oops mentioned things related to filesystems, I became
scared, with fear of data corruption.

Please let me know if any further details are necessary about the
situation.


Thanks, Rogério Brito.

--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Rogério Brito - rbrito@ime.usp.br - http://www.ime.usp.br/~rbrito
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
ksymoops 2.4.9 on i686 2.6.9-rc2-1. Options used
-V (default)
-k /proc/ksyms (default)
-l /proc/modules (default)
-o /lib/modules/2.6.9-rc2-1/ (default)
-m /boot/System.map-2.6.9-rc2-1 (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.

Error (regular_file): read_ksyms stat /proc/ksyms failed
No modules in ksyms, skipping objects
No ksyms, skipping lsmod
Machine check exception polling timer started.
8139too Fast Ethernet driver 0.9.27
ac97_codec: AC97 Audio codec, id: 0x8384:0x7609 (SigmaTel STAC9721/23)
Unable to handle kernel paging request at virtual address 0805c130
c01274d2
*pde = 00000000
Oops: 0000 [#1]
CPU: 0
EIP: 0060:[<c01274d2>] Not tainted VLI
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010206 (2.6.9-rc2-1)
eax: 0805c124 ebx: 00000006 ecx: 00000003 edx: 00000003
esi: 00000000 edi: d7c6da80 ebp: 00000000 esp: c6eb7c38
ds: 007b es: 007b ss: 0068
Stack: c6eb6000 00000001 00000004 d7c830c0 c01276d2 d7c6da80 00000000 000081ed
c6eb6000 c0190df4 00000000 c6eb7c64 c6eb7c64 00000004 c6eb6000 00000004
00000000 c015a739 d7c830c0 00000004 00000000 c6eb6000 c01583fd d7c830c0
Call Trace:
[<c01276d2>] in_group_p+0x42/0x80
[<c0190df4>] ext3_permission+0xb4/0x1d0
[<c015a739>] permission+0x49/0x50
[<c01583fd>] flush_old_exec+0x2ad/0x760
[<c0157fce>] kernel_read+0x4e/0x60
[<c0173542>] load_elf_binary+0x2a2/0xb70
[<c013333b>] generic_file_aio_read+0x5b/0x80
[<c015b375>] link_path_walk+0x745/0xb70
[<c01aec42>] copy_from_user+0x42/0x70
[<c0158ad6>] search_binary_handler+0x56/0x1b0
[<c0158df8>] do_execve+0x1c8/0x250
[<c0102be2>] sys_execve+0x42/0x80
[<c010400f>] syscall_call+0x7/0xb
Code: 1f 8d 0c 10 d1 f9 83 f9 ff 8d 81 ff 03 00 00 89 cd 0f 4f c1 c1 f8 0a 89 c2 c1 e2 0a 8b 84 87 8c 00 00 00 29 d5 89 ea 8b 6c 24 18 <2b> 2c 90 85 ed 7e 0e 8d 71 01 39 de 7c c0 31 c0 5b 5e 5f 5d c3


>>EIP; c01274d2 <groups_search+52/80> <=====

>>edi; d7c6da80 <pg0+178f6a80/3fc87400>
>>esp; c6eb7c38 <pg0+6b40c38/3fc87400>

Trace; c01276d2 <in_group_p+42/80>
Trace; c0190df4 <ext3_permission+b4/1d0>
Trace; c015a739 <permission+49/50>
Trace; c01583fd <flush_old_exec+2ad/760>
Trace; c0157fce <kernel_read+4e/60>
Trace; c0173542 <load_elf_binary+2a2/b70>
Trace; c013333b <generic_file_aio_read+5b/80>
Trace; c015b375 <link_path_walk+745/b70>
Trace; c01aec42 <copy_from_user+42/70>
Trace; c0158ad6 <search_binary_handler+56/1b0>
Trace; c0158df8 <do_execve+1c8/250>
Trace; c0102be2 <sys_execve+42/80>
Trace; c010400f <syscall_call+7/b>

This architecture has variable length instructions, decoding before eip
is unreliable, take these instructions with a pinch of salt.

Code; c01274a7 <groups_search+27/80>
00000000 <_EIP>:
Code; c01274a7 <groups_search+27/80>
0: 1f pop %ds
Code; c01274a8 <groups_search+28/80>
1: 8d 0c 10 lea (%eax,%edx,1),%ecx
Code; c01274ab <groups_search+2b/80>
4: d1 f9 sar %ecx
Code; c01274ad <groups_search+2d/80>
6: 83 f9 ff cmp $0xffffffff,%ecx
Code; c01274b0 <groups_search+30/80>
9: 8d 81 ff 03 00 00 lea 0x3ff(%ecx),%eax
Code; c01274b6 <groups_search+36/80>
f: 89 cd mov %ecx,%ebp
Code; c01274b8 <groups_search+38/80>
11: 0f 4f c1 cmovg %ecx,%eax
Code; c01274bb <groups_search+3b/80>
14: c1 f8 0a sar $0xa,%eax
Code; c01274be <groups_search+3e/80>
17: 89 c2 mov %eax,%edx
Code; c01274c0 <groups_search+40/80>
19: c1 e2 0a shl $0xa,%edx
Code; c01274c3 <groups_search+43/80>
1c: 8b 84 87 8c 00 00 00 mov 0x8c(%edi,%eax,4),%eax
Code; c01274ca <groups_search+4a/80>
23: 29 d5 sub %edx,%ebp
Code; c01274cc <groups_search+4c/80>
25: 89 ea mov %ebp,%edx
Code; c01274ce <groups_search+4e/80>
27: 8b 6c 24 18 mov 0x18(%esp,1),%ebp

This decode from eip onwards should be reliable

Code; c01274d2 <groups_search+52/80>
00000000 <_EIP>:
Code; c01274d2 <groups_search+52/80> <=====
0: 2b 2c 90 sub (%eax,%edx,4),%ebp <=====
Code; c01274d5 <groups_search+55/80>
3: 85 ed test %ebp,%ebp
Code; c01274d7 <groups_search+57/80>
5: 7e 0e jle 15 <_EIP+0x15>
Code; c01274d9 <groups_search+59/80>
7: 8d 71 01 lea 0x1(%ecx),%esi
Code; c01274dc <groups_search+5c/80>
a: 39 de cmp %ebx,%esi
Code; c01274de <groups_search+5e/80>
c: 7c c0 jl ffffffce <_EIP+0xffffffce>
Code; c01274e0 <groups_search+60/80>
e: 31 c0 xor %eax,%eax
Code; c01274e2 <groups_search+62/80>
10: 5b pop %ebx
Code; c01274e3 <groups_search+63/80>
11: 5e pop %esi
Code; c01274e4 <groups_search+64/80>
12: 5f pop %edi
Code; c01274e5 <groups_search+65/80>
13: 5d pop %ebp
Code; c01274e6 <groups_search+66/80>
14: c3 ret

Unable to handle kernel paging request at virtual address 08049074
c01274d2
*pde = 00000000
Oops: 0000 [#2]
CPU: 0
EIP: 0060:[<c01274d2>] Not tainted VLI
EFLAGS: 00010206 (2.6.9-rc2-1)
eax: 08049068 ebx: 00000006 ecx: 00000003 edx: 00000003
esi: 00000000 edi: d7c6d980 ebp: 00000046 esp: cb7f1c38
ds: 007b es: 007b ss: 0068
Stack: cb7f0000 00000001 00000004 d5b90630 c01276d2 d7c6d980 00000046 000081c9
cb7f0000 c0190df4 00000046 cb7f1c64 cb7f1c64 00000004 cb7f0000 00000004
00000000 c015a739 d5b90630 00000004 00000000 cb7f0000 c01583fd d5b90630
Call Trace:
[<c01276d2>] in_group_p+0x42/0x80
[<c0190df4>] ext3_permission+0xb4/0x1d0
[<c015a739>] permission+0x49/0x50
[<c01583fd>] flush_old_exec+0x2ad/0x760
[<c0157fce>] kernel_read+0x4e/0x60
[<c0173542>] load_elf_binary+0x2a2/0xb70
[<c013333b>] generic_file_aio_read+0x5b/0x80
[<c015b51b>] link_path_walk+0x8eb/0xb70
[<c01aec42>] copy_from_user+0x42/0x70
[<c0158ad6>] search_binary_handler+0x56/0x1b0
[<c0158df8>] do_execve+0x1c8/0x250
[<c0102be2>] sys_execve+0x42/0x80
[<c010400f>] syscall_call+0x7/0xb
Code: 1f 8d 0c 10 d1 f9 83 f9 ff 8d 81 ff 03 00 00 89 cd 0f 4f c1 c1 f8 0a 89 c2 c1 e2 0a 8b 84 87 8c 00 00 00 29 d5 89 ea 8b 6c 24 18 <2b> 2c 90 85 ed 7e 0e 8d 71 01 39 de 7c c0 31 c0 5b 5e 5f 5d c3


>>EIP; c01274d2 <groups_search+52/80> <=====

>>edi; d7c6d980 <pg0+178f6980/3fc87400>
>>esp; cb7f1c38 <pg0+b47ac38/3fc87400>

Trace; c01276d2 <in_group_p+42/80>
Trace; c0190df4 <ext3_permission+b4/1d0>
Trace; c015a739 <permission+49/50>
Trace; c01583fd <flush_old_exec+2ad/760>
Trace; c0157fce <kernel_read+4e/60>
Trace; c0173542 <load_elf_binary+2a2/b70>
Trace; c013333b <generic_file_aio_read+5b/80>
Trace; c015b51b <link_path_walk+8eb/b70>
Trace; c01aec42 <copy_from_user+42/70>
Trace; c0158ad6 <search_binary_handler+56/1b0>
Trace; c0158df8 <do_execve+1c8/250>
Trace; c0102be2 <sys_execve+42/80>
Trace; c010400f <syscall_call+7/b>

This architecture has variable length instructions, decoding before eip
is unreliable, take these instructions with a pinch of salt.

Code; c01274a7 <groups_search+27/80>
00000000 <_EIP>:
Code; c01274a7 <groups_search+27/80>
0: 1f pop %ds
Code; c01274a8 <groups_search+28/80>
1: 8d 0c 10 lea (%eax,%edx,1),%ecx
Code; c01274ab <groups_search+2b/80>
4: d1 f9 sar %ecx
Code; c01274ad <groups_search+2d/80>
6: 83 f9 ff cmp $0xffffffff,%ecx
Code; c01274b0 <groups_search+30/80>
9: 8d 81 ff 03 00 00 lea 0x3ff(%ecx),%eax
Code; c01274b6 <groups_search+36/80>
f: 89 cd mov %ecx,%ebp
Code; c01274b8 <groups_search+38/80>
11: 0f 4f c1 cmovg %ecx,%eax
Code; c01274bb <groups_search+3b/80>
14: c1 f8 0a sar $0xa,%eax
Code; c01274be <groups_search+3e/80>
17: 89 c2 mov %eax,%edx
Code; c01274c0 <groups_search+40/80>
19: c1 e2 0a shl $0xa,%edx
Code; c01274c3 <groups_search+43/80>
1c: 8b 84 87 8c 00 00 00 mov 0x8c(%edi,%eax,4),%eax
Code; c01274ca <groups_search+4a/80>
23: 29 d5 sub %edx,%ebp
Code; c01274cc <groups_search+4c/80>
25: 89 ea mov %ebp,%edx
Code; c01274ce <groups_search+4e/80>
27: 8b 6c 24 18 mov 0x18(%esp,1),%ebp

This decode from eip onwards should be reliable

Code; c01274d2 <groups_search+52/80>
00000000 <_EIP>:
Code; c01274d2 <groups_search+52/80> <=====
0: 2b 2c 90 sub (%eax,%edx,4),%ebp <=====
Code; c01274d5 <groups_search+55/80>
3: 85 ed test %ebp,%ebp
Code; c01274d7 <groups_search+57/80>
5: 7e 0e jle 15 <_EIP+0x15>
Code; c01274d9 <groups_search+59/80>
7: 8d 71 01 lea 0x1(%ecx),%esi
Code; c01274dc <groups_search+5c/80>
a: 39 de cmp %ebx,%esi
Code; c01274de <groups_search+5e/80>
c: 7c c0 jl ffffffce <_EIP+0xffffffce>
Code; c01274e0 <groups_search+60/80>
e: 31 c0 xor %eax,%eax
Code; c01274e2 <groups_search+62/80>
10: 5b pop %ebx
Code; c01274e3 <groups_search+63/80>
11: 5e pop %esi
Code; c01274e4 <groups_search+64/80>
12: 5f pop %edi
Code; c01274e5 <groups_search+65/80>
13: 5d pop %ebp
Code; c01274e6 <groups_search+66/80>
14: c3 ret


1 warning and 1 error issued. Results may not be reliable.
\
 
 \ /
  Last update: 2005-03-22 14:06    [W:2.126 / U:1.760 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site