It can be fetched from the transaction handle.
Signed-off-by: Lu Fengqi <lufq.fnst@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.com>
                        else
                                ret = btrfs_dec_ref(trans, root, eb, 0);
                        BUG_ON(ret); /* -ENOMEM */
-                       ret = btrfs_qgroup_trace_leaf_items(trans, fs_info, eb);
+                       ret = btrfs_qgroup_trace_leaf_items(trans, eb);
                        if (ret) {
                                btrfs_err_rl(fs_info,
                                             "error %d accounting leaf items. Quota is out of sync, rescan required.",
 
 }
 
 int btrfs_qgroup_trace_leaf_items(struct btrfs_trans_handle *trans,
-                                 struct btrfs_fs_info *fs_info,
                                  struct extent_buffer *eb)
 {
+       struct btrfs_fs_info *fs_info = trans->fs_info;
        int nr = btrfs_header_nritems(eb);
        int i, extent_type, ret;
        struct btrfs_key key;
        }
 
        if (root_level == 0) {
-               ret = btrfs_qgroup_trace_leaf_items(trans, fs_info, root_eb);
+               ret = btrfs_qgroup_trace_leaf_items(trans, root_eb);
                goto out;
        }
 
                }
 
                if (level == 0) {
-                       ret = btrfs_qgroup_trace_leaf_items(trans,fs_info,
-                                                          path->nodes[level]);
+                       ret = btrfs_qgroup_trace_leaf_items(trans,
+                                                           path->nodes[level]);
                        if (ret)
                                goto out;
 
 
  * Return <0 for error(ENOMEM)
  */
 int btrfs_qgroup_trace_leaf_items(struct btrfs_trans_handle *trans,
-                                 struct btrfs_fs_info *fs_info,
                                  struct extent_buffer *eb);
 /*
  * Inform qgroup to trace a whole subtree, including all its child tree