Re: "Unknown code" error when enabling metadata_csum on ext4 raid1 device
From: Nick Semenkovich <hidden>
Date: 2012-08-02 03:43:26
On Wed, Aug 1, 2012 at 3:17 AM, Zheng Liu [off-list ref] wrote:
On Wed, Aug 01, 2012 at 02:51:43PM +0700, Tomasz Chmielewski wrote:quoted
On 08/01/2012 02:48 PM, Zheng Liu wrote:quoted
quoted
didn't try the patch yet, but I've noticed the following in dmesg since 3.5: [69004.637293] EXT4-fs warning (device sda1): dx_probe:732: Corrupt dir inode 524293, running e2fsck is recommended. [69004.637330] EXT4-fs warning (device sda1): dx_probe:647: dx entry: limit != root limit [69004.637335] EXT4-fs warning (device sda1): dx_probe:732: Corrupt dir inode 524293, running e2fsck is recommended. [69004.637365] EXT4-fs warning (device sda1): dx_probe:647: dx entry: limit != root limit [69004.637370] EXT4-fs warning (device sda1): dx_probe:732: Corrupt dir inode 524293, running e2fsck is recommended. Could this be related?Are these messages printed before you enable metadata_csum feature?I didn't notice them before trying to enable metadata_csum feature. On the other hand, enabling metadata_csum feature was pretty much the first thing I've made after booting to 3.5 kernel on this system, so it could be it changed something.Yes, it will change something when you try to enable metadata_csum feature in tune2fs. So you'd better to run e2fsck to check your filesystem IMHO.
Sorry for the slow reply -- I hadn't seen any "Corrupt dir inode" errors until now. Before running the one-line patch above, I resynced the MD array and ran a quick fsck (via "touch /forcefsck" & reboot). Then, $ sudo misc/tune2fs -O metadata_csum /dev/md1 [says something about running e2fsck -D] Then I got a few dmesg errors like: [128700.816091] JBD2: Spotted dirty metadata buffer (dev = md1, blocknr = 5243385). There's a risk of filesystem corruption in case of system crash. [128700.816106] JBD2: Spotted dirty metadata buffer (dev = md1, blocknr = 1057). There's a risk of filesystem corruption in case of system crash. then a lot of [128711.000677] EXT4-fs warning (device md1): dx_probe:647: dx entry: limit != root limit [128711.000679] EXT4-fs warning (device md1): dx_probe:732: Corrupt dir inode 7733251, running e2fsck is recommended. On my next command (sudo -s), I got an immediate kernel panic: [128713.776475] EXT4-fs warning (device md1): dx_probe:732: Corrupt dir inode 7733251, running e2fsck is recommended. [128761.137143] BUG: unable to handle kernel NULL pointer dereference at (null) [128761.137195] IP: [<ffffffff8121d448>] ext4_iget+0x498/0xa50 [128761.137231] PGD 106651067 PUD 11cf41067 PMD 0 [128761.137258] Oops: 0000 [#1] SMP [128761.137279] CPU 0 [snip...] Full panic @ http://web.mit.edu/semenko/Public/panic.txt -- Nick Semenkovich Laboratory of Dr. Jeffrey I. Gordon Medical Scientist Training Program School of Medicine Washington University in St. Louis http://web.mit.edu/semenko/