On Wed, Apr 14, 2010 at 12:51 PM, Ryusuke Konishi <ryusuke@xxxxxxxx> wrote: > I have no idea why the corruption occured since the 2.6.31-20 Ubuntu > kernel is almost the same with the 2.6.31.y stable kernel. I believe that the error was caused by accumulated defects on the DVD-RAM disk, not by NILFS2. I interpret the error messages to mean that the DVD drive detected a hardware error when it tried to read sector 8778160 and then had a write error at sector 8781280 that could not be correct by the drive because there were no more spare defect-correction sectors on that particular DVD-RAM disk. > I'd appreciate it if you could help to test whether the same problem > arises with nilfs in 2.6.32.y or 2.6.33.y. The problem does not seem to be repeatable, even on 2.6.31. I detected no errors when I previously ran the same general test many times using both that DVD-RAM and a loop-back file system on a hard drive. I will try again when I upgrade to 2.6.32 with Ubuntu 10.04. > The following are the steps to make&install a newer nilfs in the > 2.6.31 kernel. > > $ sudo apt-get install linux-headers-`uname -r` > $ cd /usr/src > $ wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.32.11.tar.bz2 > $ tar jxf linux-2.6.32.11.tar.bz2 > $ cd linux-2.6.32.11/fs/nilfs2 > $ make -C /lib/modules/`uname -r`/build SUBDIRS=$PWD BUILD_DIR=$PWD modules > $ su > # rmmod nilfs2 > # mv /lib/modules/`uname -r`/kernel/fs/nilfs2/nilfs2.ko{,.bak} > # install -m 644 -c nilfs2.ko /lib/modules/`uname -r`/kernel/fs/nilfs2/ > # /sbin/depmod -A > # mount -t nilfs2 <device> <mount-dir> Thank you for clarifying that process. It will be very useful in keeping the kernel module up-to-date. > As for the write errors, the following two patches may work: > > "nilfs2: use GFP_NOIO for bio_alloc instead of GFP_NOWAIT" (merged to v2.6.32) > "nilfs2: do not return io error for bio allocation failure" (merged to v2.6.33) > > It's hard to track the cause from the raw block data, so you don't > have to keep the DVD-RAM data. (dumpseg log for in-use segments is > enough to me) I will send a segment dump off-list. If my analysis is correct, I have a DVD-RAM disk that has no more sectors with which my DVD drive can correct defects. Would you like for me to save that disk for future error handling experiments? Ed -- To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html