diff options
Diffstat (limited to 'fs/btrfs/disk-io.c')
-rw-r--r-- | fs/btrfs/disk-io.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c index 6182e5493d0f..8d486603e8a3 100644 --- a/fs/btrfs/disk-io.c +++ b/fs/btrfs/disk-io.c | |||
@@ -1631,6 +1631,7 @@ struct btrfs_root *btrfs_get_fs_root(struct btrfs_fs_info *fs_info, | |||
1631 | { | 1631 | { |
1632 | struct btrfs_root *root; | 1632 | struct btrfs_root *root; |
1633 | struct btrfs_path *path; | 1633 | struct btrfs_path *path; |
1634 | struct btrfs_key key; | ||
1634 | int ret; | 1635 | int ret; |
1635 | 1636 | ||
1636 | if (location->objectid == BTRFS_ROOT_TREE_OBJECTID) | 1637 | if (location->objectid == BTRFS_ROOT_TREE_OBJECTID) |
@@ -1675,8 +1676,11 @@ again: | |||
1675 | ret = -ENOMEM; | 1676 | ret = -ENOMEM; |
1676 | goto fail; | 1677 | goto fail; |
1677 | } | 1678 | } |
1678 | ret = btrfs_find_item(fs_info->tree_root, path, BTRFS_ORPHAN_OBJECTID, | 1679 | key.objectid = BTRFS_ORPHAN_OBJECTID; |
1679 | location->objectid, BTRFS_ORPHAN_ITEM_KEY, NULL); | 1680 | key.type = BTRFS_ORPHAN_ITEM_KEY; |
1681 | key.offset = location->objectid; | ||
1682 | |||
1683 | ret = btrfs_search_slot(NULL, fs_info->tree_root, &key, path, 0, 0); | ||
1680 | btrfs_free_path(path); | 1684 | btrfs_free_path(path); |
1681 | if (ret < 0) | 1685 | if (ret < 0) |
1682 | goto fail; | 1686 | goto fail; |