Commit 33a0f1f7 authored by Qu Wenruo's avatar Qu Wenruo Committed by David Sterba

btrfs: reloc: add backref_cache::fs_info member

Add this member so that we can grab fs_info without the help from
reloc_control.
Reviewed-by: default avatarJosef Bacik <josef@toxicpanda.com>
Signed-off-by: default avatarQu Wenruo <wqu@suse.com>
Reviewed-by: default avatarDavid Sterba <dsterba@suse.com>
Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent 84780289
...@@ -164,6 +164,8 @@ struct backref_cache { ...@@ -164,6 +164,8 @@ struct backref_cache {
/* The list of useless backref nodes during backref cache build */ /* The list of useless backref nodes during backref cache build */
struct list_head useless_node; struct list_head useless_node;
struct btrfs_fs_info *fs_info;
}; };
/* /*
...@@ -266,7 +268,8 @@ static void mapping_tree_init(struct mapping_tree *tree) ...@@ -266,7 +268,8 @@ static void mapping_tree_init(struct mapping_tree *tree)
spin_lock_init(&tree->lock); spin_lock_init(&tree->lock);
} }
static void backref_cache_init(struct backref_cache *cache) static void backref_cache_init(struct btrfs_fs_info *fs_info,
struct backref_cache *cache)
{ {
int i; int i;
cache->rb_root = RB_ROOT; cache->rb_root = RB_ROOT;
...@@ -277,6 +280,7 @@ static void backref_cache_init(struct backref_cache *cache) ...@@ -277,6 +280,7 @@ static void backref_cache_init(struct backref_cache *cache)
INIT_LIST_HEAD(&cache->leaves); INIT_LIST_HEAD(&cache->leaves);
INIT_LIST_HEAD(&cache->pending_edge); INIT_LIST_HEAD(&cache->pending_edge);
INIT_LIST_HEAD(&cache->useless_node); INIT_LIST_HEAD(&cache->useless_node);
cache->fs_info = fs_info;
} }
static void backref_cache_cleanup(struct backref_cache *cache) static void backref_cache_cleanup(struct backref_cache *cache)
...@@ -4188,7 +4192,7 @@ static struct reloc_control *alloc_reloc_control(struct btrfs_fs_info *fs_info) ...@@ -4188,7 +4192,7 @@ static struct reloc_control *alloc_reloc_control(struct btrfs_fs_info *fs_info)
INIT_LIST_HEAD(&rc->reloc_roots); INIT_LIST_HEAD(&rc->reloc_roots);
INIT_LIST_HEAD(&rc->dirty_subvol_roots); INIT_LIST_HEAD(&rc->dirty_subvol_roots);
backref_cache_init(&rc->backref_cache); backref_cache_init(fs_info, &rc->backref_cache);
mapping_tree_init(&rc->reloc_root_tree); mapping_tree_init(&rc->reloc_root_tree);
extent_io_tree_init(fs_info, &rc->processed_blocks, extent_io_tree_init(fs_info, &rc->processed_blocks,
IO_TREE_RELOC_BLOCKS, NULL); IO_TREE_RELOC_BLOCKS, NULL);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment