[OpenAFS-devel] Re: [OpenAFS] Linux kernel panic, OpenAFS client, gconf

chas williams (contractor) chas@cmf.nrl.navy.mil
Mon, 21 Jun 2004 16:45:57 -0400


In message <Pine.GSO.4.58-039.0406211554060.28175@johnstown.andrew.cmu.edu>,Derrick J Brashear writes:
>woot!

woot yourself.  take a look at the attached oops.   i have atleast two
like this even after the adding the BKL to dentry_revalidate.  one way
this could happen would be a race with afs_TryFlushDcacheChildren().
it seems likely that we need to grab lock_kernel() to prevent any lookups
while the dentries are in a state of flux.

ksymoops 2.4.9 on i686 2.4.21-226-smp4G.  Options used
     -V (default)
     -k /proc/ksyms (specified)
     -l /proc/modules (specified)
     -o /lib/modules/2.4.21-226-smp4G/ (default)
     -m /boot/System.map-2.4.21-226-smp4G (default)

TT3<1>Unable to handle kernel paging request at virtual address ffffffff
c6048b50
*pde = 00006063
Oops: 0002 2.4.21-226-smp4G #1 SMP Tue Jun 15 10:28:32 UTC 2004
CPU:    3
EIP:    0010:[<c6048b50>]    Tainted: P 
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00210292
eax: 00000003   ebx: f1a5dec8   ecx: 00200046   edx: c032d058
esi: fac14b98   edi: 00000001   ebp: fa60fa20   esp: f1a5de58
ds: 0018   es: 0018   ss: 0018
Process gconfd-2 (pid: 4342, stackpage=f1a5d000)
Stack: c606d490 ebf9c1e0 f1a5deec f1a5decc f1a5dee8 f1a5def8 f1a5dec0 c6029419 
       c606d490 ebf9c1e0 f1a5deec f1a5decc fa44e648 00000008 f1a5dee8 00000001 
       00000001 00000000 00000000 00000000 00000000 ebf9c1e0 00000000 00000006 
Call Trace:         [<c606d490>] (28) [<c6029419>] (04) [<c606d490>] (76)
  [<c6020e89>] (92) [<c6075664>] (12) [<c6075664>] (08) [<c6058b71>] (48)
  [<c0163742>] (32) [<c016512f>] (60) [<c0109637>] (60)
Code: c6 05 ff ff ff ff 2a 83 c4 1c c3 90 8d 74 26 00 b8 76 d9 06 


>>EIP; c6048b50 <[libafs]osi_Panic+20/60>   <=====

>>ebx; f1a5dec8 <[ide-cd]ignore+407dfcc/4440164>
>>edx; c032d058 <log_wait+0/c>
>>esp; f1a5de58 <[ide-cd]ignore+407df5c/4440164>

Trace; c606d490 <[libafs].rodata.end+4fe5/cb95>
Trace; c6029419 <[libafs]afs_lookup+fb9/1250>
Trace; c606d490 <[libafs].rodata.end+4fe5/cb95>
Trace; c6020e89 <[libafs]afs_access+f9/390>
Trace; c6075664 <[libafs]afs_global_lock+0/1c>
Trace; c6075664 <[libafs]afs_global_lock+0/1c>
Trace; c6058b71 <[libafs]afs_linux_lookup+61/1c0>
Trace; c0163742 <lookup_hash+c2/120>
Trace; c016512f <sys_unlink+8f/130>
Trace; c0109637 <system_call+33/38>

Code;  c6048b50 <[libafs]osi_Panic+20/60>
00000000 <_EIP>:
Code;  c6048b50 <[libafs]osi_Panic+20/60>   <=====
   0:   c6 05 ff ff ff ff 2a      movb   $0x2a,0xffffffff   <=====
Code;  c6048b57 <[libafs]osi_Panic+27/60>
   7:   83 c4 1c                  add    $0x1c,%esp
Code;  c6048b5a <[libafs]osi_Panic+2a/60>
   a:   c3                        ret    
Code;  c6048b5b <[libafs]osi_Panic+2b/60>
   b:   90                        nop    
Code;  c6048b5c <[libafs]osi_Panic+2c/60>
   c:   8d 74 26 00               lea    0x0(%esi,1),%esi
Code;  c6048b60 <[libafs]osi_Panic+30/60>
  10:   b8 76 d9 06 00            mov    $0x6d976,%eax