btrfs: take an fs_info directly when the root is not used otherwise
[linux-block.git] / fs / btrfs / qgroup.c
index eb389b1452ae2fe3d8d834a9faaf21aa03b825c4..135bb7986dfb807111bbeb41b69a236e9a0650c0 100644 (file)
@@ -1509,8 +1509,7 @@ int btrfs_qgroup_trace_extent(struct btrfs_trans_handle *trans,
        record->old_roots = NULL;
 
        spin_lock(&delayed_refs->lock);
-       ret = btrfs_qgroup_trace_extent_nolock(fs_info, delayed_refs,
-                                                     record);
+       ret = btrfs_qgroup_trace_extent_nolock(fs_info, delayed_refs, record);
        spin_unlock(&delayed_refs->lock);
        if (ret > 0)
                kfree(record);
@@ -1518,10 +1517,9 @@ int btrfs_qgroup_trace_extent(struct btrfs_trans_handle *trans,
 }
 
 int btrfs_qgroup_trace_leaf_items(struct btrfs_trans_handle *trans,
-                                 struct btrfs_root *root,
+                                 struct btrfs_fs_info *fs_info,
                                  struct extent_buffer *eb)
 {
-       struct btrfs_fs_info *fs_info = root->fs_info;
        int nr = btrfs_header_nritems(eb);
        int i, extent_type, ret;
        struct btrfs_key key;
@@ -1645,7 +1643,7 @@ int btrfs_qgroup_trace_subtree(struct btrfs_trans_handle *trans,
        }
 
        if (root_level == 0) {
-               ret = btrfs_qgroup_trace_leaf_items(trans, root, root_eb);
+               ret = btrfs_qgroup_trace_leaf_items(trans, fs_info, root_eb);
                goto out;
        }
 
@@ -1683,7 +1681,7 @@ walk_down:
                        child_bytenr = btrfs_node_blockptr(eb, parent_slot);
                        child_gen = btrfs_node_ptr_generation(eb, parent_slot);
 
-                       eb = read_tree_block(root, child_bytenr, child_gen);
+                       eb = read_tree_block(fs_info, child_bytenr, child_gen);
                        if (IS_ERR(eb)) {
                                ret = PTR_ERR(eb);
                                goto out;
@@ -1709,8 +1707,8 @@ walk_down:
                }
 
                if (level == 0) {
-                       ret = btrfs_qgroup_trace_leaf_items(trans, root,
-                                       path->nodes[level]);
+                       ret = btrfs_qgroup_trace_leaf_items(trans,fs_info,
+                                                          path->nodes[level]);
                        if (ret)
                                goto out;