summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmds-restore.c4
-rw-r--r--ctree.c11
-rw-r--r--ctree.h4
3 files changed, 9 insertions, 10 deletions
diff --git a/cmds-restore.c b/cmds-restore.c
index 7a763018..7302e359 100644
--- a/cmds-restore.c
+++ b/cmds-restore.c
@@ -259,7 +259,7 @@ again:
}
if (path->reada)
- reada_for_search(root, path, level, slot, 0);
+ reada_for_search(fs_info, path, level, slot, 0);
next = read_node_slot(fs_info, c, slot);
if (extent_buffer_uptodate(next))
@@ -276,7 +276,7 @@ again:
if (!level)
break;
if (path->reada)
- reada_for_search(root, path, level, 0, 0);
+ reada_for_search(fs_info, path, level, 0, 0);
next = read_node_slot(fs_info, next, 0);
if (!extent_buffer_uptodate(next))
goto again;
diff --git a/ctree.c b/ctree.c
index 292c2e4f..e875f9f8 100644
--- a/ctree.c
+++ b/ctree.c
@@ -1001,10 +1001,9 @@ static int noinline push_nodes_for_insert(struct btrfs_trans_handle *trans,
/*
* readahead one full node of leaves
*/
-void reada_for_search(struct btrfs_root *root, struct btrfs_path *path,
- int level, int slot, u64 objectid)
+void reada_for_search(struct btrfs_fs_info *fs_info, struct btrfs_path *path,
+ int level, int slot, u64 objectid)
{
- struct btrfs_fs_info *fs_info = root->fs_info;
struct extent_buffer *node;
struct btrfs_disk_key disk_key;
u32 nritems;
@@ -1204,7 +1203,7 @@ again:
break;
if (should_reada)
- reada_for_search(root, p, level, slot,
+ reada_for_search(fs_info, p, level, slot,
key->objectid);
b = read_node_slot(fs_info, b, slot);
@@ -2977,7 +2976,7 @@ int btrfs_next_leaf(struct btrfs_root *root, struct btrfs_path *path)
}
if (path->reada)
- reada_for_search(root, path, level, slot, 0);
+ reada_for_search(fs_info, path, level, slot, 0);
next = read_node_slot(fs_info, c, slot);
if (!extent_buffer_uptodate(next))
@@ -2994,7 +2993,7 @@ int btrfs_next_leaf(struct btrfs_root *root, struct btrfs_path *path)
if (!level)
break;
if (path->reada)
- reada_for_search(root, path, level, 0, 0);
+ reada_for_search(fs_info, path, level, 0, 0);
next = read_node_slot(fs_info, next, 0);
if (!extent_buffer_uptodate(next))
return -EIO;
diff --git a/ctree.h b/ctree.h
index 2d45d93b..0a95352b 100644
--- a/ctree.h
+++ b/ctree.h
@@ -2572,8 +2572,8 @@ btrfs_check_node(struct btrfs_root *root, struct btrfs_disk_key *parent_key,
enum btrfs_tree_block_status
btrfs_check_leaf(struct btrfs_root *root, struct btrfs_disk_key *parent_key,
struct extent_buffer *buf);
-void reada_for_search(struct btrfs_root *root, struct btrfs_path *path,
- int level, int slot, u64 objectid);
+void reada_for_search(struct btrfs_fs_info *fs_info, struct btrfs_path *path,
+ int level, int slot, u64 objectid);
struct extent_buffer *read_node_slot(struct btrfs_fs_info *fs_info,
struct extent_buffer *parent, int slot);
int btrfs_previous_item(struct btrfs_root *root,