Yup I have another plan for your situation, I will wire it up Monday and send 
it out.  Thanks,

Josef

> On Oct 26, 2013, at 7:16 PM, Martin <m_bt...@ml1.co.uk> wrote:
> 
>> On 25/10/13 19:31, Josef Bacik wrote:
>>> On Fri, Oct 25, 2013 at 07:27:24PM +0100, Martin wrote:
>>>> On 25/10/13 19:01, Josef Bacik wrote:
>>>> Unfortunately you can't run --init-extent-tree if you can't actually read 
>>>> the
>>>> extent root.  Fix this by allowing partial starts with no extent root and 
>>>> then
>>>> have fsck only check to see if the extent root is uptodate _after_ the 
>>>> check to
>>>> see if we are init'ing the extent tree.  Thanks,
>>>> 
>>>> Signed-off-by: Josef Bacik <jba...@fusionio.com>
>>>> ---
>>>> cmds-check.c |  9 ++++++---
>>>> disk-io.c    | 16 ++++++++++++++--
>>>> 2 files changed, 20 insertions(+), 5 deletions(-)
>>>> 
>>>> diff --git a/cmds-check.c b/cmds-check.c
>>>> index 69b0327..8ed7baa 100644
>>>> --- a/cmds-check.c
>>>> +++ b/cmds-check.c
>>> 
>>> Hey! Quick work!...
>>> 
>>> Is that worth patching locally and trying against my example?
>> 
>> Yes, I'm a little worried about your particular case so I'd like to see if it
>> works.  If you don't see a lot of output after say 5 minutes let's assume I
>> didn't fix your problem and let me know so I can make the other change I
>> considered.  Thanks,
> 
> Nope... No-go.
> 
> parent transid verify failed on 911904604160 wanted 17448 found 17449
> parent transid verify failed on 911904604160 wanted 17448 found 17449
> parent transid verify failed on 911904604160 wanted 17448 found 17449
> parent transid verify failed on 911904604160 wanted 17448 found 17449
> Ignoring transid failure
> 
> ...And nothing more. Looped.
> 
> 
> # gdb /sbin/btrfsck 31887
> GNU gdb (Gentoo 7.5.1 p2) 7.5.1
> Copyright (C) 2012 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later
> <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
> and "show warranty" for details.
> This GDB was configured as "x86_64-pc-linux-gnu".
> For bug reporting instructions, please see:
> <http://bugs.gentoo.org/>...
> Reading symbols from /sbin/btrfsck...Reading symbols from
> /usr/lib64/debug/sbin/btrfsck.debug...(no debugging symbols found)...done.
> (no debugging symbols found)...done.
> Attaching to program: /sbin/btrfsck, process 31887
> 
> warning: Could not load shared library symbols for linux-vdso.so.1.
> Do you need "set solib-search-path" or "set sysroot"?
> Reading symbols from /lib64/libuuid.so.1...(no debugging symbols
> found)...done.
> Loaded symbols for /lib64/libuuid.so.1
> Reading symbols from /lib64/libblkid.so.1...(no debugging symbols
> found)...done.
> Loaded symbols for /lib64/libblkid.so.1
> Reading symbols from /lib64/libz.so.1...(no debugging symbols found)...done.
> Loaded symbols for /lib64/libz.so.1
> Reading symbols from /usr/lib64/liblzo2.so.2...(no debugging symbols
> found)...done.
> Loaded symbols for /usr/lib64/liblzo2.so.2
> Reading symbols from /lib64/libpthread.so.0...(no debugging symbols
> found)...done.
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib64/libthread_db.so.1".
> Loaded symbols for /lib64/libpthread.so.0
> Reading symbols from /lib64/libc.so.6...(no debugging symbols found)...done.
> Loaded symbols for /lib64/libc.so.6
> Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols
> found)...done.
> Loaded symbols for /lib64/ld-linux-x86-64.so.2
> 0x000000000042b7a9 in read_extent_buffer ()
> (gdb)
> (gdb) bt
> #0  0x000000000042b7a9 in read_extent_buffer ()
> #1  0x000000000041ccfd in btrfs_check_node ()
> #2  0x000000000041e0a2 in check_block ()
> #3  0x000000000041e69e in btrfs_search_slot ()
> #4  0x0000000000425a6e in find_first_block_group ()
> #5  0x0000000000425b28 in btrfs_read_block_groups ()
> #6  0x0000000000421c40 in btrfs_setup_all_roots ()
> #7  0x0000000000421e3f in __open_ctree_fd ()
> #8  0x0000000000421f19 in open_ctree_fs_info ()
> #9  0x00000000004169b4 in cmd_check ()
> #10 0x000000000040443b in main ()
> (gdb)
> 
> 
> # btrfs version
> Btrfs v0.20-rc1-358-g194aa4a-dirty
> 
> 
>>>> Emerging (1 of 1) sys-fs/btrfs-progs-9999
>>>> Unpacking source...
> GIT update -->
>   repository:
> git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-progs.git
>   at the commit:            194aa4a1bd6447bb545286d0bcb0b0be8204d79f
>   branch:                   master
>   storage directory:
> "/usr/portage/distfiles/egit-src/btrfs-progs.git"
>   checkout type:            bare repository
> Cloning into
> '/var/tmp/portage/sys-fs/btrfs-progs-9999/work/btrfs-progs-9999'...
> done.
> Branch branch-master set up to track remote branch master from origin.
> Switched to a new branch 'branch-master'
>>>> Unpacked to
> /var/tmp/portage/sys-fs/btrfs-progs-9999/work/btrfs-progs-9999
>>>> Source unpacked in /var/tmp/portage/sys-fs/btrfs-progs-9999/work
>>>> Preparing source in
> /var/tmp/portage/sys-fs/btrfs-progs-9999/work/btrfs-progs-9999 ...
>>>> Source prepared.
> * Applying user patches from
> /etc/portage/patches//sys-fs/btrfs-progs-9999 ...
> *   jbpatch2013-10-25-extents-fix.patch ...
> 
> 
> [ ok ]
> * Done with patching
>>>> Configuring source in
> /var/tmp/portage/sys-fs/btrfs-progs-9999/work/btrfs-progs-9999 ...
>>>> Source configured.
> [...]
> 
> Note the compile warnings:
> 
> 
> * QA Notice: Package triggers severe warnings which indicate that it
> *            may exhibit random runtime failures.
> * disk-io.c:91:5: warning: dereferencing type-punned pointer will break
> strict-aliasing rules [-Wstrict-aliasing]
> * volumes.c:1905:5: warning: dereferencing type-punned pointer will
> break strict-aliasing rules [-Wstrict-aliasing]
> * volumes.c:1906:6: warning: dereferencing type-punned pointer will
> break strict-aliasing rules [-Wstrict-aliasing]
> 
> 
> * QA Notice: Package triggers severe warnings which indicate that it
> *            may exhibit random runtime failures.
> * cmds-chunk.c:1343:8: warning: array subscript is above array bounds
> [-Warray-bounds]
> 
> 
> 
> (The "jbpatch2013-10-25-extents-fix.patch" is the diff txt of your
> earlier posting.)
> 
> Hope that helps.
> 
> Next?
> 
> Regards,
> Martin
> 
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
> the body of a message to majord...@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to