xfs
[Top] [All Lists]

Re: kernelcrash during root filesystem recovery

To: utz lehmann <xfs@xxxxxxxxxx>
Subject: Re: kernelcrash during root filesystem recovery
From: Russell Cattelan <cattelan@xxxxxxxxxxx>
Date: Sat, 02 Dec 2000 01:25:03 -0600
Cc: Keith Owens <kaos@xxxxxxxxxxxxxxxxx>, linux-xfs@xxxxxxxxxxx
References: <20001201193703.A1636@xxxxxxxxxx> <20516.975707506@xxxxxxxxxxxx> <20001202040151.A5499@xxxxxxxxxx> <20001202043601.A6078@xxxxxxxxxx>
Reply-to: cattelan@xxxxxxxxxxx
Sender: owner-linux-xfs@xxxxxxxxxxx
utz lehmann wrote:

I've actually recently hit the same bug.

But it looks like Ananth hit the nail on the head
and found the problem.


Keep the cable handy :-)


> interesting.
> i repeated the test:
> - booting with the good kernel to recover the filesytem.
> - cp -av /usr/src/linux/ /tmp/
> - hardreset
> - booting the bad kernel
>
> [...]
> fatfs: bogus cluster size
> fatfs: bogus cluster size
> Start mounting filesystem: ide0(3,6)
> XFS: WARNING: recovery required on readonly filesystem.
>
> XFS: write access will be enabled during recovery.
>
> Starting XFS recovery on filesystem: ide0(3,6) (dev: 3/6)
> cmn_err level 1 Filesystem "ide0(3,6)": xfs_inode_recover: Bad inode log 
> record, rec ptr 0xc12a2ce0, dino ptr 0xc12b9b00, dino bp 0xc7f45d00, ino 
> 13752315, total extents = -2, nblocks = 0
> XFS: log mount/recovery failed
> XFS: log mount failed
> Kernel panic: VFS: Unable to mount root fs on 03:06
>
> the kernel hangs, no kdb!
>
> same procedure above:
>
> [...]
> fatfs: bogus cluster size
> fatfs: bogus cluster size
> Start mounting filesystem: ide0(3,6)
> XFS: WARNING: recovery required on readonly filesystem.
>
> XFS: write access will be enabled during recovery.
>
> Starting XFS recovery on filesystem: ide0(3,6) (dev: 3/6)
> Unable to handle kernel NULL pointer dereference at virtual address 0000003c
>  printing eip:
> c0163d04
> *pde = 00000000
>
> Entering kdb (current=0xc125c000, pid 1) Panic: Oops
> due to panic @ 0xc0163d04
> eax = 0x00000000 ebx = 0xc7f87400 ecx = 0x00000000 edx = 0x00000200
> esi = 0xc1281d20 edi = 0x00000001 esp = 0xc125d944 eip = 0xc0163d04
> ebp = 0x00000000 xss = 0x00000018 xcs = 0x00000010 eflags = 0x00010282
> xds = 0x00000018 xes = 0x00000018 origeax = 0xffffffff &regs = 0xc125d910
> kdb> bt
>     EBP       EIP         Function(args)
>            0x00000000c0163d04 pagebuf_geterror+0x4 (0x0)
>                                kernel .text 0xc0100000 0xc0163d00 0xc0163d08
>            0x00000000c01ad329 xlog_recover_do_buffer_trans+0x155 (0xc125bb60, 
> 0xc12811e0, 0x2)
>                                kernel .text 0xc0100000 0xc01ad1d4 0xc01ad490
>            0x00000000c01adfb5 xlog_recover_do_trans+0xf9 (0xc125bb60, 
> 0xc7f861a0, 0x2)
>                                kernel .text 0xc0100000 0xc01adebc 0xc01adfc8
>            0x00000000c01ae05b xlog_recover_commit_trans+0x27 (0xc125bb60, 
> 0xc125da78, 0xc7f861a0, 0x2)
>                                kernel .text 0xc0100000 0xc01ae034 0xc01ae070
>            0x00000000c01ae1a8 xlog_recover_process_data+0x124 (0xc125bb60, 
> 0xc125da60, 0xc7f8ec00, 0xc7f30d9c, 0x2)
>                                kernel .text 0xc0100000 0xc01ae084 0xc01ae230
>            0x00000000c01aed45 xlog_do_recovery_pass+0x42d (0xc125bb60, 0x6d9, 
> 0x0, 0x123d, 0x0)
>                                kernel .text 0xc0100000 0xc01ae918 0xc01aeed0
>            0x00000000c01aef45 xlog_do_log_recovery+0x75 (0xc125bb60, 0x6d9, 
> 0x0, 0x123d, 0x0)
>                                kernel .text 0xc0100000 0xc01aeed0 0xc01aef6c
>            0x00000000c01aef8e xlog_do_recover+0x22 (0xc125bb60, 0x6d9, 0x0, 
> 0x123d, 0x0)
>                                kernel .text 0xc0100000 0xc01aef6c 0xc01af064
>            0x00000000c01af100 xlog_recover+0x9c (0xc125bb60, 0x1)
>                                kernel .text 0xc0100000 0xc01af064 0xc01af128
>            0x00000000c01a9045 xfs_log_mount+0x75 (0xc7f87400, 0x306, 
> 0x24c520, 0x0, 0x2580)
>                                kernel .text 0xc0100000 0xc01a8fd0 0xc01a907c
>            0x00000000c01b07e8 xfs_mountfs+0xcf4 (0xc7f86160, 0xc7f87400, 
> 0x306, 0x0)
> more>
>                                kernel .text 0xc0100000 0xc01afaf4 0xc01b0c64
>            0x00000000c01b8bd9 xfs_cmountfs+0x51d (0xc7f86160, 0x306, 0x306, 
> 0x0, 0x2)
>                                kernel .text 0xc0100000 0xc01b86bc 0xc01b8c44
>            0x00000000c01b8dde xfs_mount+0xd2 (0xc7f86160, 0xc7f8e6ec, 
> 0xc125df20, 0xc0388fe0, 0xc7f86160)
>                                kernel .text 0xc0100000 0xc01b8d0c 0xc01b8de8
>            0x00000000c01b8e0b xfs_vfsmount+0x23 (0xc7f86160, 0xc7f8e6ec, 
> 0xc125df20, 0x0, 0xc0388fe0)
>                                kernel .text 0xc0100000 0xc01b8de8 0xc01b8e20
>            0x00000000c01c9bc1 linvfs_read_super+0x225 (0xc7f8e400, 0x0, 0x1)
>                                kernel .text 0xc0100000 0xc01c999c 0xc01c9ca4
>            0x00000000c01337bc read_super+0x100 (0x306, 0xc7f85120, 
> 0xc0326270, 0x1, 0x0)
>                                kernel .text 0xc0100000 0xc01336bc 0xc013382c
>            0x00000000c033c834 mount_root+0x164
>                                kernel .text.init 0xc0336000 0xc033c6d0 
> 0xc033ca40
>            0x00000000c033692e do_basic_setup+0x3a
>                                kernel .text.init 0xc0336000 0xc03368f4 
> 0xc0336930
>            0x00000000c0107007 init+0x7
>                                kernel .text 0xc0100000 0xc0107000 0xc0107150
>            0x00000000c0108da7 kernel_thread+0x23
>                                kernel .text 0xc0100000 0xc0108d84 0xc0108db4
> kdb>

--
Russell Cattelan
cattelan@xxxxxxxxxxx




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