summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/backref.c
diff options
context:
space:
mode:
authorJosef Bacik <jbacik@fb.com>2015-10-05 16:35:29 +0200
committerChris Mason <clm@fb.com>2015-10-22 03:51:41 +0200
commitd9ee522ba3ab51b7e3c6dfcf3743216371bc810f (patch)
tree628b6b1d8a1f1561d6e93bab27e0e99f809c9182 /fs/btrfs/backref.c
parentBtrfs: change how we wait for pending ordered extents (diff)
downloadlinux-d9ee522ba3ab51b7e3c6dfcf3743216371bc810f.tar.xz
linux-d9ee522ba3ab51b7e3c6dfcf3743216371bc810f.zip
Btrfs: fix qgroup sanity tests
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>
Diffstat (limited to 'fs/btrfs/backref.c')
-rw-r--r--fs/btrfs/backref.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/fs/btrfs/backref.c b/fs/btrfs/backref.c
index ecbc63d3143e..2adc152a32e3 100644
--- a/fs/btrfs/backref.c
+++ b/fs/btrfs/backref.c
@@ -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)