Commit 3acfbd6a authored by Josef Bacik's avatar Josef Bacik Committed by David Sterba

btrfs: use btrfs_read_node_slot in qgroup_trace_new_subtree_blocks

We're open-coding btrfs_read_node_slot() here, replace with the helper.
Reviewed-by: default avatarFilipe Manana <fdmanana@suse.com>
Signed-off-by: default avatarJosef Bacik <josef@toxicpanda.com>
Reviewed-by: default avatarDavid Sterba <dsterba@suse.com>
Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent 6b2cb7cb
...@@ -2052,10 +2052,8 @@ static int qgroup_trace_new_subtree_blocks(struct btrfs_trans_handle* trans, ...@@ -2052,10 +2052,8 @@ static int qgroup_trace_new_subtree_blocks(struct btrfs_trans_handle* trans,
/* Read the tree block if needed */ /* Read the tree block if needed */
if (dst_path->nodes[cur_level] == NULL) { if (dst_path->nodes[cur_level] == NULL) {
struct btrfs_key first_key;
int parent_slot; int parent_slot;
u64 child_gen; u64 child_gen;
u64 child_bytenr;
/* /*
* dst_path->nodes[root_level] must be initialized before * dst_path->nodes[root_level] must be initialized before
...@@ -2074,23 +2072,16 @@ static int qgroup_trace_new_subtree_blocks(struct btrfs_trans_handle* trans, ...@@ -2074,23 +2072,16 @@ static int qgroup_trace_new_subtree_blocks(struct btrfs_trans_handle* trans,
*/ */
eb = dst_path->nodes[cur_level + 1]; eb = dst_path->nodes[cur_level + 1];
parent_slot = dst_path->slots[cur_level + 1]; parent_slot = dst_path->slots[cur_level + 1];
child_bytenr = btrfs_node_blockptr(eb, parent_slot);
child_gen = btrfs_node_ptr_generation(eb, parent_slot); child_gen = btrfs_node_ptr_generation(eb, parent_slot);
btrfs_node_key_to_cpu(eb, &first_key, parent_slot);
/* This node is old, no need to trace */ /* This node is old, no need to trace */
if (child_gen < last_snapshot) if (child_gen < last_snapshot)
goto out; goto out;
eb = read_tree_block(fs_info, child_bytenr, child_gen, eb = btrfs_read_node_slot(eb, parent_slot);
cur_level, &first_key);
if (IS_ERR(eb)) { if (IS_ERR(eb)) {
ret = PTR_ERR(eb); ret = PTR_ERR(eb);
goto out; goto out;
} else if (!extent_buffer_uptodate(eb)) {
free_extent_buffer(eb);
ret = -EIO;
goto out;
} }
dst_path->nodes[cur_level] = eb; dst_path->nodes[cur_level] = eb;
......
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