2.1.51 oopses in d_lookup

mb@ichabod.han.de
Fri, 22 Aug 1997 15:57:21 +0200 (MET DST)


These oopses showed up on an otherwise idle 2.1.51 (one man one
tin). Two very similar crond 2.1.50 oopses were reported here
last week, I just want to stress the fact that this strangeness
isn't gone in 2.1.51.

The tin died trying to open(<tmp file>, O_RDWR|O_CREAT|O_EXCL, 0666)
After a while every /usr/bin/clear trying to follow the symlink
/usr/lib/terminfo oopsed on me, as well as any other attempt to
act on the directory pointed to.

After another couple of minutes, a /usr/bin/clear somehow looped
in d_lookup, some sysrqs of that:

EIP: 0010:[<c012d48e>] EFLAGS: 00000297
EAX: c01bd470 EBX: c34328e0 ECX: 0ac1902c EDX: cea793a1
ESI: cea79f48 EDI: 0ac1902c EBP: c01bbc78 DS: 0018 ES: 0018

EIP: 0010:[<c012d492>] EFLAGS: 00000212
EAX: c01bd470 EBX: c01bbc60 ECX: 0ac1902c EDX: cea793a1
ESI: cea79f48 EDI: 0ac1902c EBP: c34328f8 DS: 0018 ES: 0018

dentry_hashtable is c01bba30. Ask if you need more info.

------< oops 1 >------
Unable to handle kernel NULL pointer dereference at virtual address 00000005
current->tss.cr3 = 03ede000, %cr3 = 03ede000
*pde = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[<c012d48b>]
EFLAGS: 00010292
eax: c01bd470 ebx: ffffffed ecx: 949e2999 edx: 584146cd
esi: 58414348 edi: 949e2999 ebp: 00000005 esp: c3f07ef8
ds: 0018 es: 0018 ss: 0018
Process crond (pid: 35, process nr: 9, stackpage=c3f07000)
Stack: c3f07f4c c3b92980 c3e65011 00000001 c3e65005 949e2999 0000000c c01bd470
c0128cd1 c3b92980 c3f07f4c c3f07f4c c3b92980 c0128f2e c3b92980 c3f07f4c
c3ba4360 00000003 000006c2 00008180 000161c1 c3e65005 0000000c 949e2999
Call Trace: [<c0128cd1>] [<c0128f2e>] [<c0129042>] [<c01219fd>] [<c0121b96>] [<c01093ca>]
Code: 8b 6d 00 8b 7c 24 14 39 7b 38 75 5d 8b 7c 24 24 39 7b 0c 75
Using `/System.map' to map addresses to symbols.

>>EIP: c012d48b <d_lookup+5b/d4>
Trace: c0128cd1 <cached_lookup+11/5c>
Trace: c0128f2e <lookup_dentry+146/1a0>
Trace: c0129042 <open_namei+3e/2b0>
Trace: c01219fd <do_open+49/128>
Trace: c0121b96 <sys_open+3a/6c>
Trace: c01093ca <system_call+3a/40>

Code: c012d48b <d_lookup+5b/d4> movl 0x0(%ebp),%ebp
Code: c012d48e <d_lookup+5e/d4> movl 0x14(%esp,1),%edi
Code: c012d492 <d_lookup+62/d4> cmpl %edi,0x38(%ebx)
Code: c012d495 <d_lookup+65/d4> jne c012d4f4 <d_lookup+c4/d4>
Code: c012d497 <d_lookup+67/d4> movl 0x24(%esp,1),%edi
Code: c012d49b <d_lookup+6b/d4> cmpl %edi,0xc(%ebx)
Code: c012d49e <d_lookup+6e/d4> jne c012d4a0 <d_lookup+70/d4>
Code: c012d4a0 <d_lookup+70/d4> nop
Code: c012d4a1 <d_lookup+71/d4> nop
Code: c012d4a2 <d_lookup+72/d4> nop
------< oops 2 >------
Unable to handle kernel NULL pointer dereference at virtual address 00000000
current->tss.cr3 = 0366b000, %cr3 = 0366b000
*pde = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[<c012d48b>]
EFLAGS: 00010282
eax: c01bd470 ebx: ffffffe8 ecx: 33245dc4 edx: f6e03025
esi: f6e03f48 edi: 33245dc4 ebp: 00000000 esp: c3675ef8
ds: 0018 es: 0018 ss: 0018
Process tin (pid: 103, process nr: 23, stackpage=c3675000)
Stack: c3675f4c c3b92980 c008d011 00000001 c008d005 33245dc4 0000000c c01bd470
c0128cd1 c3b92980 c3675f4c c3675f4c c3b92980 c0128f2e c3b92980 c3675f4c
c3ba4300 00000007 000000c3 000081a4 0001d013 c008d005 0000000c 33245dc4
Call Trace: [<c0128cd1>] [<c0128f2e>] [<c0129042>] [<c01219fd>] [<c0121b96>] [<c01093ca>]
Code: 8b 6d 00 8b 7c 24 14 39 7b 38 75 5d 8b 7c 24 24 39 7b 0c 75
Using `/System.map' to map addresses to symbols.

>>EIP: c012d48b <d_lookup+5b/d4>
Trace: c0128cd1 <cached_lookup+11/5c>
Trace: c0128f2e <lookup_dentry+146/1a0>
Trace: c0129042 <open_namei+3e/2b0>
Trace: c01219fd <do_open+49/128>
Trace: c0121b96 <sys_open+3a/6c>
Trace: c01093ca <system_call+3a/40>

Code: c012d48b <d_lookup+5b/d4> movl 0x0(%ebp),%ebp
Code: c012d48e <d_lookup+5e/d4> movl 0x14(%esp,1),%edi
Code: c012d492 <d_lookup+62/d4> cmpl %edi,0x38(%ebx)
Code: c012d495 <d_lookup+65/d4> jne c012d4f4 <d_lookup+c4/d4>
Code: c012d497 <d_lookup+67/d4> movl 0x24(%esp,1),%edi
Code: c012d49b <d_lookup+6b/d4> cmpl %edi,0xc(%ebx)
Code: c012d49e <d_lookup+6e/d4> jne c012d4a0 <d_lookup+70/d4>
Code: c012d4a0 <d_lookup+70/d4> nop
Code: c012d4a1 <d_lookup+71/d4> nop
Code: c012d4a2 <d_lookup+72/d4> nop
------< oops 3 >------
Unable to handle kernel NULL pointer dereference at virtual address 00000000
current->tss.cr3 = 020d0000, %cr3 = 020d0000
*pde = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[<c012d48b>]
EFLAGS: 00010282
eax: c01bd470 ebx: ffffffe8 ecx: 0ac1902c edx: cea793a1
esi: cea79f48 edi: 0ac1902c ebp: 00000000 esp: c204de90
ds: 0018 es: 0018 ss: 0018
Process clear (pid: 182, process nr: 23, stackpage=c204d000)
Stack: c204dee4 c3d2a680 c37d8f5e 00000001 c37d8f50 0ac1902c 0000000e c01bd470
c0128cd1 c3d2a680 c204dee4 c204dee4 c3d2a680 c0128f2e c3d2a680 c204dee4
00000000 c37d8ec4 c3d2a680 c37d8f50 00011c8c c37d8f50 0000000e 0ac1902c
Call Trace: [<c0128cd1>] [<c0128f2e>] [<c013a963>] [<c013a8e4>] [<c0128da9>] [<c0128f57>] [<c0129042>]
[<c01219fd>] [<c0121b96>] [<c01093ca>]
Code: 8b 6d 00 8b 7c 24 14 39 7b 38 75 5d 8b 7c 24 24 39 7b 0c 75
Using `/System.map' to map addresses to symbols.

>>EIP: c012d48b <d_lookup+5b/d4>
Trace: c0128cd1 <cached_lookup+11/5c>
Trace: c0128f2e <lookup_dentry+146/1a0>
Trace: c013a963 <ext2_follow_link+7f/9c>
Trace: c013a963 <ext2_follow_link+7f/9c>
Trace: c0128da9 <do_follow_link+45/84>
Trace: c0128f57 <lookup_dentry+16f/1a0>
Trace: c0129042 <open_namei+3e/2b0>
Trace: c01219fd <do_open+49/128>
Trace: c0121b96 <sys_open+3a/6c>
Trace: c01093ca <system_call+3a/40>

Code: c012d48b <d_lookup+5b/d4> movl 0x0(%ebp),%ebp
Code: c012d48e <d_lookup+5e/d4> movl 0x14(%esp,1),%edi
Code: c012d492 <d_lookup+62/d4> cmpl %edi,0x38(%ebx)
Code: c012d495 <d_lookup+65/d4> jne c012d4f4 <d_lookup+c4/d4>
Code: c012d497 <d_lookup+67/d4> movl 0x24(%esp,1),%edi
Code: c012d49b <d_lookup+6b/d4> cmpl %edi,0xc(%ebx)
Code: c012d49e <d_lookup+6e/d4> jne c012d4a0 <d_lookup+70/d4>
Code: c012d4a0 <d_lookup+70/d4> nop
Code: c012d4a1 <d_lookup+71/d4> nop
Code: c012d4a2 <d_lookup+72/d4> nop

-- 
Michail Brzitwa            <mb@ichabod.han.de>            +49-511-343215