[Top] [All Lists]

Re: Another XFS crash

To: ak@xxxxxxx (Andi Kleen)
Subject: Re: Another XFS crash
From: Jim Mostek <mostek@xxxxxxx>
Date: Fri, 31 Mar 2000 09:18:14 -0600 (CST)
Cc: linux-xfs@xxxxxxxxxxx
In-reply-to: <20000331161903.A21597@xxxxxxxxxxxxxxxxxxx> from "Andi Kleen" at Mar 31, 2000 04:19:03 PM
Sender: owner-linux-xfs@xxxxxxxxxxx
Andy and others running XFS and sending us those wonderfull
crashes. Keep those cards and letters coming! 

It would be really useful if you could send a tad bit more info.
There are a couple of debug kernel modules that can be loaded.
These are xfsidbg.o, kdbm_pb.o, and  kdbm_vm.o.

With these and with kdb turned on, you can dump a few of
the structures that are on the stack and ....

For example, kdbm_pb.o has commands to dump the following:

pb              <vaddr>              Display page_buf_t
pbtrace         <vaddr>              page_buf_t trace
pbflags         <flags>              Display page buf flags
kiobuf          <vaddr>              Display kiobuf
page            <vaddr>              Display page
inode           <vaddr>              Display inode
bh              <buffer head address Display buffer

I especially find the pb, inode, page, and bh command very

kdbm_vm.o. has:

vm              <vaddr>              Display vm_area_struct
modlist                              Display loaded modules
modsyms         module-name          Display module symbols
filp            <filp>               Display interesting filp stuff
sh              <vaddr>              Show scsi_host
sd              <vaddr>              Show scsi_device
sc              <vaddr>              Show scsi_cmnd

and xfsidbg.o has many commands specific to xfs like:

xnode -- print and xfs inode given it's address
xmount -- xfs mount structure


Thanks and keep those cards and letters coming.


>My XFS machine just crashed again:
>Unable to handle kernel paging request at virtual address dead4ead
>*pde = 00000000
>Entering kdb (0xc5f3e000) on processor 1 Panic: Oops
>due to panic @ 0xc012f96f
>eax = 0x00000000  ebx = 0x00012fff  ecx = 0xc0352784  edx = 0x00000000  
>esi = 0x00000000  edi = 0xdead4ead  esp = 0xc0352784  eip = 0xc012f96f  
>ebp = 0xc5f3fbdc   ss = 0x00012fff   cs = 0x00000010  eflags = 0x00010246  
> ds = 0x00000018   es = 0x00000018  origeax = 0xffffffff  &regs = 0xc5f3fb94
>[1E]nktdebri>n g kdb (0xc786c000) on processor 0 due to NonMaskable Interrupt 
>@ 0xc012ab7a
>eax = 0xffffffff  ebx = 0x377efe82  ecx = 0xc0349200  edx = 0x00000000  
>esi = 0xc0159b50  edi = 0xc1463ce0  esp = 0xc0349200  eip = 0xc012ab7a  
>ebp = 0xc786df24   ss = 0x00000000   cs = 0x00000010  eflags = 0x00000297  
> ds = 0xc0110018   es = 0xc0340018  origeax = 0xffffffff  &regs = 0xc786dee8
>[0]kdb> bt
>    EBP       EIP         Function(args)
>0xc786df24 0xc012ab7a  _spin_lock_+0x32( 0xc0349200)
>0xc786df60 0xc0159b51  do_select+0x115( 0x1, 0xc786dfa4, 0xc786dfa0)
>0xc786dfbc 0xc015a10b  sys_select+0x34f( 0x1, 0xbffffccc, 0x0, 0x0, 0x0)
>0xbffffd4c 0xc010bd68  system_call
>[0]kdb> cpu 1
>Entering kdb (0xc5f3e000) on processor 1 due to cpu switch
>[1]kdb> bt
>    EBP       EIP         Function(args)
>0xc5f3f928 0xc0242346  get_kbd_char+0x6( )
>0xc5f3f93c 0xc02424d2  kdba_read+0x2e( 0xc5f3f998, 0xff)
>0xc5f3f94c 0xc019af40  kdb_read+0x10( 0xc5f3f998, 0xff, 0xc02733d9, 0x1)
>0xc5f3f96c 0xc019af6a  kdb_getstr+0x26( 0xc5f3f998, 0xff, 0xc02733d9, 
>0xc5f3fa98 0xc0199330  kdb+0x498( 0x4, 0x0, 0xc5f3fb94)
>0xc5f3faac 0xc0243063  kdba_callback_die+0x1b( 0xc5f3fb94, 0x0, 0xffffffff, 
>0xc5f3fad0 0xc010c466  die+0x86( 0xc025113e, 0xc5f3fb94, 0x0, 0xc5f3e000, 0x0)
>0xc5f3fb84 0xc0117c3c  do_page_fault+0x3ac( 0xc5f3fb94, 0x0, 0x12fff, 
>0xc0352784, 0x0)
>0xc5f3fbdc 0xc010bebd  error_code+0x2d( 0xc7102000, 0x0, 0x12fff, 0xc012f888)
>0xc5f3fc00 0xc012faf4  generic_buffer_fdatasync+0x1c( 0xc7102000, 0x0, 0x12fff)
>0xc5f3fc20 0xc0143a32  pagebuf_flushinval+0x2a( 0xc7102000, 0x0, 0x0, 0x12fff, 
>0xc5f3fc40 0xc88d797f  fs_flushinval_pages+0x23( 0xc7103820, 0x0, 0x0, 
>0x12fff, 0x0)
>0xc5f3fc70 0xc88d4115  xfs_reclaim+0x151( 0xc7103820, 0x0, 0xc1464ec8)
>0xc5f3fc90 0xc88de68c  vn_unhash+0x118( 0xc14e1d58, 0x0)
>0xc5f3fcc8 0xc88deb85  vn_alloc+0x2e1( 0xc0a2a540, 0x2, 0x0)
>0xc5f3fd20 0xc88b4fde  xfs_iget+0x1fe( 0xc094f000, 0x0, 0x171196, 0x0, 0x0)
>0xc5f3fd68 0xc88cbd36  xfs_dir_lookup_int+0x136( 0x0, 0xc71032f0, 0x5, 
>0xc5058800, 0xc5f3ff30)
>0xc5f3fdc8 0xc88d0489  xfs_lookup+0x9d( 0xc71032f0, 0xc5058800, 0xc5f3fe00, 
>0xc5f3ff30, 0x0)
>0xc5f3ff3c 0xc88d8473  linvfs_lookup+0x7b( 0xc4b6b5a0, 0xc50587a0)
>0xc5f3ff5c 0xc0154f60  real_lookup+0xa0( 0xc5058820, 0xc5f3ff7c, 0x0)
>0xc5f3ff88 0xc01551d8  lookup_dentry+0x134( 0xc5c88003, 0xc5058820, 0x0)
>0xc5f3ffa4 0xc01553ad  __namei+0x29( 0x8055a59, 0x0, 0xc5f3e000, 0xbffff8a4)
>0xc5f3ffbc 0xc0150cf8  sys_newlstat+0x6c( 0x8055a59, 0xbffff7fc, 0x8055a59, 
>0xbffff8a4, 0x8055a59)
>0xbffff83c 0xc010bd68  system_call

<Prev in Thread] Current Thread [Next in Thread>