Btrfs: fix qgroup sanity tests
authorJosef Bacik <jbacik@fb.com>
Mon, 5 Oct 2015 14:35:29 +0000 (10:35 -0400)
committerChris Mason <clm@fb.com>
Thu, 22 Oct 2015 01:51:41 +0000 (18:51 -0700)
With my changes to allow us to find old roots when resolving indirect refs I
introduced a regression to the sanity tests.  Since we don't really care to go
down into the fs roots we just need to have the old behavior of returning ENOENT
for dummy roots for the sanity tests.  In the future if we want to get fancy we
can populate the test fs trees with the references as well.  Thanks,

Signed-off-by: Josef Bacik <jbacik@fb.com>
Signed-off-by: Chris Mason <clm@fb.com>
fs/btrfs/backref.c

index ecbc63d3143e78d53a9ab0e3dd2091686e51d620..2adc152a32e31db7970324aacf498d94c967b87b 100644 (file)
@@ -362,6 +362,12 @@ static int __resolve_indirect_ref(struct btrfs_fs_info *fs_info,
                goto out;
        }
 
+       if (btrfs_test_is_dummy_root(root)) {
+               srcu_read_unlock(&fs_info->subvol_srcu, index);
+               ret = -ENOENT;
+               goto out;
+       }
+
        if (path->search_commit_root)
                root_level = btrfs_header_level(root->commit_root);
        else if (time_seq == (u64)-1)