diff --git a/fs/btrfs/backref.c b/fs/btrfs/backref.c index ecbc63d3143e78d53a9ab0e3dd2091686e51d620..2adc152a32e31db7970324aacf498d94c967b87b 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)