Re: segmentation-fault in btrfsck (git-version)

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

 



On Wed, Dec 5, 2012 at 2:50 PM, Hendrik Friedel <hendrik@xxxxxxxxxxxxx> wrote:
> Dear all,
>
> thanks for developing btrfsck!
> Now, I'd like to contribute -as far as I can. I'm not a developer, but I do
> have some linux-experience.
> I've been using btrfsck on two 3TB HDDs (mirrored) for a while now under
> Kernel 3.0. Now it's corrupt. I had some hard resets of the machine -which
> might have contributed. I do have a backup of the data -at least of the
> important stuff. Some TV-Recordings are missing. The reason I am writing is,
> to support the development.
>
> Unfortunately, btrfsck (latest git-version) crashes with a segmentation
> fault, when trying to repair this.
>
> Here's the backtrace:
> root 261 inode 64375 errors 400
> root 261 inode 64376 errors 400
> btrfsck: disk-io.c:382: __commit_transaction: Assertion `!(!eb || eb->start
> != start)' failed.
>
> Program received signal SIGABRT, Aborted.
> 0x00007ffff784c425 in raise () from /lib/x86_64-linux-gnu/libc.so.6
> (gdb)
> (gdb) backtrace
> #0  0x00007ffff784c425 in raise () from /lib/x86_64-linux-gnu/libc.so.6
> #1  0x00007ffff784fb8b in abort () from /lib/x86_64-linux-gnu/libc.so.6
> #2  0x00007ffff78450ee in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> #3  0x00007ffff7845192 in __assert_fail () from
> /lib/x86_64-linux-gnu/libc.so.6
> #4  0x000000000040d3ae in __commit_transaction (trans=0x62e010,
> root=0xb66ae0) at disk-io.c:382
> #5  0x000000000040d4d8 in btrfs_commit_transaction (trans=0x62e010,
> root=0xb66ae0) at disk-io.c:415
> #6  0x000000000040743d in main (ac=<optimized out>, av=<optimized out>) at
> btrfsck.c:3587
>
>
> Now, here's where my debugging knowledge ends. Are you interested in
> debugging this further, or is it a known bug?
>

Line 382 in disk-io.c is:

BUG_ON(!eb || eb->start != start);

So, basically, btrfsck is intentionally crashing because it doesn't
know how to handle this condition.

Future refinements of btrfsck will probably include proper error
messages for issues that can't be handled, or perhaps even fix the
error.

It might be interesting for you to try a newer kernel, and use scrub
on this volume if you have the two disks RAIDed.
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" 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 NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux