Btrfs-progs: alloc our super copy in btrfs-find-root
authorJosef Bacik <jbacik@fusionio.com>
Tue, 12 Mar 2013 14:07:39 +0000 (10:07 -0400)
committerDavid Sterba <dsterba@suse.cz>
Tue, 12 Mar 2013 15:26:42 +0000 (16:26 +0100)
Dave fixed the fs_info to allocate the super copy instead of embedding it, but
he failed to notice that I open code open_ctree in btrfs-find-root so we end up
with a super that's not allocated, so we segfault whenever you try to run
btrfs-find-root.  I've fixed this up and now we don't segfault anymore.  Thanks,

Signed-off-by: Josef Bacik <jbacik@fusionio.com>
find-root.c

index f99fb76..810d835 100644 (file)
@@ -116,6 +116,7 @@ static struct btrfs_root *open_ctree_broken(int fd, const char *device)
        }
 
        memset(fs_info, 0, sizeof(*fs_info));
+       fs_info->super_copy = calloc(1, BTRFS_SUPER_INFO_SIZE);
        fs_info->tree_root = tree_root;
        fs_info->extent_root = extent_root;
        fs_info->chunk_root = chunk_root;