[OpenAFS-devel] PROBLEM: Oops on startup in Linux 2.4.21-xfs; read the tale of how it was SOLVED, too

Asheesh Laroia openafs@asheeshenterprises.com
Wed, 16 Jul 2003 15:52:52 -0400 (EDT)


I was running the Debian 2.4.18-xfs kernel for a while, but upgraded to
install a new IDE adapter.  I started the OpenAFS module, but it always
causes an Oops when I do /etc/init.d/openafs-client start.

Seeing as the problem occurs at the AFS Cache Scan, I tried mving the
/var/cache/openafs to /var/cache/q to see if anything changed.

I've tried the latest -ac 2.4.22-pre, a 2.4.20 tree called WOLK that has
various patches in it, and 2.4.21 vanilla with XFS patches from SGI.
(This is what I call "2.4.21-xfs".)  When the same thing happened in the
latter, I knew I should hand the problem over, as I was out of my league.

I tried 1.2.9 first, and then 1.2.9a.  The first ksymoops is from 1.2.9a
after a few runs of starting, stopping, rmmoding, modprobing the driver
and service.  I then installed 1.2.10-pre4 and rebooted fresh into that,
but it failed with the ksymoops that follows.

Anything at all I could do to help would be greatly appreciated.  This is
(was?  sigh...) a production server, and I feel quite out of control.

(FYI, I posted an earlier version of this to the bug tracking system, but
I thought it would be better to get more exposure.  Also, that version
didn't have the update with openafs-1.2.10-pre4.  My apologies to those
of you who will receive duplicates.  I also posted it because I noticed
someone else complained of an Oops in 2.4.21 which looks unrelated, but I
don't know enough to be sure.)

Thanks,

Frustrated in Rochester.

--

Update:

I tried moving the new, still broken cache to /var/cache/qball, and did
mkdir /var/cache/openafs, and did a reboot.  OpenAFS works now.

Can I interest the group in at least my dirty old cache?

Thanks for dealing with my self-response,

Asheesh Laroia.

-- 
Do something unusual today.  Pay a bill.

<ksymoops output: 1.2.9a>

ksymoops 2.4.5 on i686 2.4.21-xfs.  Options used
     -V (default)
     -k /proc/ksyms (default)
     -l /proc/modules (default)
     -o /lib/modules/2.4.21-xfs/ (default)
     -m /boot/System.map-2.4.21-xfs (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.

Unable to handle kernel NULL pointer dereference at virtual address 00000004
cc9d0e64
*pde = 00000000
Oops: 0000
CPU:    0
EIP:    0010:[<cc9d0e64>]    Tainted: PF
Using defaults from ksymoops -t elf32-i386 -a i386

EFLAGS: 00010246
eax: 00000000   ebx: c3e55f98   ecx: cacee000   edx: 00000001
esi: 00000001   edi: c3e55f98   ebp: 000000c9   esp: c3e55e84
ds: 0018   es: 0018   ss: 0018
Process afsd (pid: 17415, stackpage=c3e55000)
Stack: c3e55f98 bfffc8bc 00000000 c0125bc4 c7a8bc74 c10b3b68 c0125bf1
cc9e6f13
       cc9f64d3 00000000 c6808260 0000001e c129842c c7a8bbc0 c4c210a0
cc9e6a25
       c3e55f98 bfffc8bc c3e55f98 00000000 c55514a0 00000000 c6808260
c01227ee
Call Trace: [<c0125bc4>]  [<c0125bf1>]  [<cc9e6f13>]  [<cc9f64d3>]
[<cc9e6a25>]  [<c01227ee>]  [<c01122c4>]  [<c0112164>]  [<cc9e6d38>]
[<c01e0e3a>]  [<c0108774>]  [<c0108683>]
Code: 8b 58 04 3d fc 7b a0 cc 75 b5 5b 83 c4 18 c3 90 83 ec 1c 55


>>EIP; cc9d0e64 <[libafs-2.4.21-xfs]rx_WakeupServerProcs+e4/f4>   <=====

>>ebx; c3e55f98 <_end+3af0b1c/c4b6b84>
>>ecx; cacee000 <_end+a988b84/c4b6b84>
>>edi; c3e55f98 <_end+3af0b1c/c4b6b84>
>>esp; c3e55e84 <_end+3af0a08/c4b6b84>

Trace; c0125bc4 <filemap_nopage+bc/1f8>
Trace; c0125bf1 <filemap_nopage+e9/1f8>
Trace; cc9e6f13 <[libafs-2.4.21-xfs]afs_shutdown+5f/288>
Trace; cc9f64d3 <[libafs-2.4.21-xfs]rcsid+333/400>
Trace; cc9e6a25 <[libafs-2.4.21-xfs]afs_syscall_call+9dd/bc0>
Trace; c01227ee <handle_mm_fault+52/b0>
Trace; c01122c4 <do_page_fault+160/480>
Trace; c0112164 <do_page_fault+0/480>
Trace; cc9e6d38 <[libafs-2.4.21-xfs]afs_syscall+d4/1f4>
Trace; c01e0e3a <tty_write+1c2/230>
Trace; c0108774 <error_code+34/3c>
Trace; c0108683 <system_call+33/38>

Code;  cc9d0e64 <[libafs-2.4.21-xfs]rx_WakeupServerProcs+e4/f4>
00000000 <_EIP>:
Code;  cc9d0e64 <[libafs-2.4.21-xfs]rx_WakeupServerProcs+e4/f4>   <=====
   0:   8b 58 04                  mov    0x4(%eax),%ebx   <=====
Code;  cc9d0e67 <[libafs-2.4.21-xfs]rx_WakeupServerProcs+e7/f4>
   3:   3d fc 7b a0 cc            cmp    $0xcca07bfc,%eax
Code;  cc9d0e6c <[libafs-2.4.21-xfs]rx_WakeupServerProcs+ec/f4>
   8:   75 b5                     jne    ffffffbf <_EIP+0xffffffbf>
cc9d0e23 <[libafs-2.4.21-xfs]rx_WakeupServerProcs+a3/f4>
Code;  cc9d0e6e <[libafs-2.4.21-xfs]rx_WakeupServerProcs+ee/f4>
   a:   5b                        pop    %ebx
Code;  cc9d0e6f <[libafs-2.4.21-xfs]rx_WakeupServerProcs+ef/f4>
   b:   83 c4 18                  add    $0x18,%esp
Code;  cc9d0e72 <[libafs-2.4.21-xfs]rx_WakeupServerProcs+f2/f4>
   e:   c3                        ret
Code;  cc9d0e73 <[libafs-2.4.21-xfs]rx_WakeupServerProcs+f3/f4>
   f:   90                        nop
Code;  cc9d0e74 <[libafs-2.4.21-xfs]rx_GetCall+0/280>
  10:   83 ec 1c                  sub    $0x1c,%esp
Code;  cc9d0e77 <[libafs-2.4.21-xfs]rx_GetCall+3/280>
  13:   55                        push   %ebp

1 warning issued.  Results may not be reliable.

</ksymoops>

<ksymoops output: 1.2.10-rc4>

ksymoops 2.4.5 on i686 2.4.21-xfs.  Options used
     -V (default)
     -k /proc/ksyms (default)
     -l /proc/modules (default)
     -o /lib/modules/2.4.21-xfs/ (default)
     -m /boot/System.map-2.4.21-xfs (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.

Starting AFS cache scan...<1>Unable to handle kernel NULL pointer dereference at virtual address 00000000
00000000
*pde = 00000000
Oops: 0000
CPU:    0
EIP:    0010:[<00000000>]    Tainted: PF
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010287
eax: 00000000   ebx: c77a4080   ecx: c77a4134   edx: c7ab6ea8
esi: c7fe10c0   edi: c7fe1130   ebp: c13a7000   esp: c7b0dc20
ds: 0018   es: 0018   ss: 0018
Process afsd (pid: 950, stackpage=c7b0d000)
Stack: cc9da71b c77a4080 0066364d 00000000 00000000 cc9f6a70 ccbbb000 00000000
       00000001 cc9f6a70 0066364d 00000000 00000000 c7fe1ac0 c7fe1b30 3f0f3d6d
       cc9a58c8 0066364d 00000000 c7fe10cb cc9a8134 c7b0df98 0066364d c7b0df98
Call Trace: [<cc9da71b>]  [<cc9f6a70>]  [<cc9f6a70>]  [<cc9a58c8>]  [<cc9a8134>]  [<cc9fe6c0>]  [<cc9de622>]  [<cc9de834>]  [<c0196503>]  [<c01961ab>]  [<c019c3a8>]  [<c01c82a6>]  [<c01c8dbb>]  [<c01be1f3>]  [<c01967f2>]  [<c01d31c5>]  [<c019c7e5>]  [<c0198ac0>]  [<c0198ac0>]  [<c018a453>]  [<c0198ac0>]  [<c012b810>]
[<c01220fa>]  [<c0122816>]  [<c01122c4>]  [<c0112164>]  [<cc9deef0>]  [<c0108774>]  [<c0108683>]
Code:  Bad EIP value.


>>EIP; 00000000 Before first symbol

>>ebx; c77a4080 <_end+743ec04/c4b6b84>
>>ecx; c77a4134 <_end+743ecb8/c4b6b84>
>>edx; c7ab6ea8 <_end+7751a2c/c4b6b84>
>>esi; c7fe10c0 <_end+7c7bc44/c4b6b84>
>>edi; c7fe1130 <_end+7c7bcb4/c4b6b84>
>>ebp; c13a7000 <_end+1041b84/c4b6b84>
>>esp; c7b0dc20 <_end+77a87a4/c4b6b84>

Trace; cc9da71b <[libafs-2.4.21-xfs]osi_UFSOpen+cb/194>
Trace; cc9f6a70 <[libafs-2.4.21-xfs]afs_xdcache+0/1c>
Trace; cc9f6a70 <[libafs-2.4.21-xfs]afs_xdcache+0/1c>
Trace; cc9a58c8 <[libafs-2.4.21-xfs]afs_InitCacheFile+128/2f8>
Trace; cc9a8134 <[libafs-2.4.21-xfs]afs_InitVolumeInfo+48/64>
Trace; cc9fe6c0 <[libafs-2.4.21-xfs]volumeInode+0/4>
Trace; cc9de622 <[libafs-2.4.21-xfs]afs_syscall_call+40a/ba4>
Trace; cc9de834 <[libafs-2.4.21-xfs]afs_syscall_call+61c/ba4>
Trace; c0196503 <xfs_da_buf_make+1b/12c>
Trace; c01961ab <xfs_da_do_buf+5b3/72c>
Trace; c019c3a8 <xfs_dir2_leaf_getdents+50c/974>
Trace; c01c82a6 <_pagebuf_free_object+ea/f4>
Trace; c01c8dbb <pagebuf_rele+7f/88>
Trace; c01be1f3 <xfs_trans_brelse+bf/c8>
Trace; c01967f2 <xfs_da_brelse+86/b0>
Trace; c01d31c5 <kmem_free+25/3c>
Trace; c019c7e5 <xfs_dir2_leaf_getdents+949/974>
Trace; c0198ac0 <xfs_dir2_put_dirent64_direct+0/7c>
Trace; c0198ac0 <xfs_dir2_put_dirent64_direct+0/7c>
Trace; c018a453 <xfs_bmap_last_offset+df/108>
Trace; c0198ac0 <xfs_dir2_put_dirent64_direct+0/7c>
Trace; c012b810 <__alloc_pages+40/160>
Trace; c01220fa <do_wp_page+46/1f0>
Trace; c0122816 <handle_mm_fault+7a/b0>
Trace; c01122c4 <do_page_fault+160/480>
Trace; c0112164 <do_page_fault+0/480>
Trace; cc9deef0 <[libafs-2.4.21-xfs]afs_syscall+d0/1e8>
Trace; c0108774 <error_code+34/3c>
Trace; c0108683 <system_call+33/38>


1 warning issued.  Results may not be reliable.
</ksymoops>