Re: Kernel BUG in btree.c:514 when mounting

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

thanks for your really quick reply.

> The BUG tells that nilfs met a corrupted block during lookup of a
> btree. 
> 
> Can you confirm which version of 2.6.31 kernel you were using?

The problem was, I had compiled the kernel on the same partition that is corrupted now. Anyway, by modifying the line in btree.c, I was able to recover most files, including the kernel tarball. (Though something like 1000 files are inaccessible.) I still cannot figure out the exact release number, though, because I can't find any place in the kernel source where it is written down. It was a kernel from the Debian testing distribution, downloaded on October 24. All files in the tarball are dated September 10. Does that help?

I had actually seen the post on www.nilfs.org about a file system corruption fix in nilfs 2.0.17, but when I downloaded the Linux source from Debian 3 weeks later, I thought for sure they would include the fix. I didn't know Debian testing was this far behind on critical bugfixes.

> > (Unfortunately, it is executed even if I use the "ro" option on the
> > Linux command line -- why?!) It happens during a sys_open call. If
> > the entire stack trace helps, I could post that, too.
> 
> Sounds weird.. 

I still don't understand why nilfs_cleanerd was started even if the root fs was mounted read-only, but with the patched nilfs, it became clear that a library required by nilfs_cleanerd was among the files that were inaccessible, and that's why crashed right away. If I mount the file system later instead (as a non-root FS), the mount operation actually completes; the kernel just crashes when I try to access some files (with an unpatched/older nilfs such as the one in the current Ubuntu release).

> That's a good point.  The BUG_ON call was replaced in 2.6.33-rc1 to
> handle it as a filesystem error.

Oh, I didn't realize that.

> Unfortunately, the disk image is rarely-helpful from my experiences
> since it's hard to track the cause from a corrupted state.

OK, I sort of expected that it wouldn't help. Then again, since there is no practical way of reproducing the bug, I thought the end result might be the only thing one can analyze to find the bug. Well, I'm glad I'm not a file system developer. :-)

Best regards,
Sebastian Reichelt
--
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

[Index of Archives]     [Linux Filesystem Development]     [Linux BTRFS]     [Linux CIFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux