struct extent_buffer *dst,
                          struct extent_buffer *src, int empty);
 static int balance_node_right(struct btrfs_trans_handle *trans,
-                             struct btrfs_fs_info *fs_info,
                              struct extent_buffer *dst_buf,
                              struct extent_buffer *src_buf);
 static void del_ptr(struct btrfs_root *root, struct btrfs_path *path,
                        btrfs_handle_fs_error(fs_info, ret, NULL);
                        goto enospc;
                }
-               wret = balance_node_right(trans, fs_info, mid, left);
+               wret = balance_node_right(trans, mid, left);
                if (wret < 0) {
                        ret = wret;
                        goto enospc;
                        if (ret)
                                wret = 1;
                        else {
-                               wret = balance_node_right(trans, fs_info,
-                                                         right, mid);
+                               wret = balance_node_right(trans, right, mid);
                        }
                }
                if (wret < 0)
  * this will  only push up to 1/2 the contents of the left node over
  */
 static int balance_node_right(struct btrfs_trans_handle *trans,
-                             struct btrfs_fs_info *fs_info,
                              struct extent_buffer *dst,
                              struct extent_buffer *src)
 {
+       struct btrfs_fs_info *fs_info = trans->fs_info;
        int push_items = 0;
        int max_push;
        int src_nritems;