void check_system_chunk(struct btrfs_trans_handle *trans,
                        struct btrfs_fs_info *fs_info, const u64 type);
 u64 add_new_free_space(struct btrfs_block_group_cache *block_group,
-                      struct btrfs_fs_info *info, u64 start, u64 end);
+                      u64 start, u64 end);
 
 /* ctree.c */
 int btrfs_bin_search(struct extent_buffer *eb, const struct btrfs_key *key,
 
  * since their free space will be released as soon as the transaction commits.
  */
 u64 add_new_free_space(struct btrfs_block_group_cache *block_group,
-                      struct btrfs_fs_info *info, u64 start, u64 end)
+                      u64 start, u64 end)
 {
+       struct btrfs_fs_info *info = block_group->fs_info;
        u64 extent_start, extent_end, size, total_added = 0;
        int ret;
 
 
                if (key.type == BTRFS_EXTENT_ITEM_KEY ||
                    key.type == BTRFS_METADATA_ITEM_KEY) {
-                       total_found += add_new_free_space(block_group,
-                                                         fs_info, last,
+                       total_found += add_new_free_space(block_group, last,
                                                          key.objectid);
                        if (key.type == BTRFS_METADATA_ITEM_KEY)
                                last = key.objectid +
        }
        ret = 0;
 
-       total_found += add_new_free_space(block_group, fs_info, last,
+       total_found += add_new_free_space(block_group, last,
                                          block_group->key.objectid +
                                          block_group->key.offset);
        caching_ctl->progress = (u64)-1;
                } else if (btrfs_block_group_used(&cache->item) == 0) {
                        cache->last_byte_to_unpin = (u64)-1;
                        cache->cached = BTRFS_CACHE_FINISHED;
-                       add_new_free_space(cache, info,
-                                          found_key.objectid,
+                       add_new_free_space(cache, found_key.objectid,
                                           found_key.objectid +
                                           found_key.offset);
                        free_excluded_extents(info, cache);
                return ret;
        }
 
-       add_new_free_space(cache, fs_info, chunk_offset, chunk_offset + size);
+       add_new_free_space(cache, chunk_offset, chunk_offset + size);
 
        free_excluded_extents(fs_info, cache);
 
 
                                extent_start = offset;
                        } else if (prev_bit == 1 && bit == 0) {
                                total_found += add_new_free_space(block_group,
-                                                                 fs_info,
                                                                  extent_start,
                                                                  offset);
                                if (total_found > CACHING_CTL_WAKE_UP) {
                }
        }
        if (prev_bit == 1) {
-               total_found += add_new_free_space(block_group, fs_info,
-                                                 extent_start, end);
+               total_found += add_new_free_space(block_group, extent_start,
+                                                 end);
                extent_count++;
        }
 
 
                caching_ctl->progress = key.objectid;
 
-               total_found += add_new_free_space(block_group, fs_info,
-                                                 key.objectid,
+               total_found += add_new_free_space(block_group, key.objectid,
                                                  key.objectid + key.offset);
                if (total_found > CACHING_CTL_WAKE_UP) {
                        total_found = 0;