Commit d44b72aa authored by Josef Bacik's avatar Josef Bacik Committed by David Sterba
Browse files

btrfs: export space_info_add_*_bytes



Prep work for consolidating all of the space_info code into one file.
We need to export these so multiple files can use them.

Reviewed-by: default avatarNikolay Borisov <nborisov@suse.com>
Signed-off-by: default avatarJosef Bacik <josef@toxicpanda.com>
Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent fc471cb0
Loading
Loading
Loading
Loading
+18 −22
Original line number Diff line number Diff line
@@ -75,12 +75,6 @@ static void dump_space_info(struct btrfs_fs_info *fs_info,
			    int dump_block_groups);
static int block_rsv_use_bytes(struct btrfs_block_rsv *block_rsv,
			       u64 num_bytes);
static void space_info_add_new_bytes(struct btrfs_fs_info *fs_info,
				     struct btrfs_space_info *space_info,
				     u64 num_bytes);
static void space_info_add_old_bytes(struct btrfs_fs_info *fs_info,
				     struct btrfs_space_info *space_info,
				     u64 num_bytes);

static noinline int
block_group_cache_done(struct btrfs_block_group_cache *cache)
@@ -3908,7 +3902,7 @@ static void update_space_info(struct btrfs_fs_info *info, u64 flags,
	found->bytes_readonly += bytes_readonly;
	if (total_bytes > 0)
		found->full = 0;
	space_info_add_new_bytes(info, found, total_bytes -
	btrfs_space_info_add_new_bytes(info, found, total_bytes -
				       bytes_used - bytes_readonly);
	spin_unlock(&found->lock);
	*space_info = found;
@@ -5108,7 +5102,8 @@ static int wait_reserve_ticket(struct btrfs_fs_info *fs_info,
	spin_unlock(&space_info->lock);

	if (reclaim_bytes)
		space_info_add_old_bytes(fs_info, space_info, reclaim_bytes);
		btrfs_space_info_add_old_bytes(fs_info, space_info,
					       reclaim_bytes);
	return ret;
}

@@ -5225,7 +5220,8 @@ static int __reserve_metadata_bytes(struct btrfs_fs_info *fs_info,
	spin_unlock(&space_info->lock);

	if (reclaim_bytes)
		space_info_add_old_bytes(fs_info, space_info, reclaim_bytes);
		btrfs_space_info_add_old_bytes(fs_info, space_info,
					       reclaim_bytes);
	ASSERT(list_empty(&ticket.list));
	return ret;
}
@@ -5391,8 +5387,8 @@ void btrfs_migrate_to_delayed_refs_rsv(struct btrfs_fs_info *fs_info,
		trace_btrfs_space_reservation(fs_info, "delayed_refs_rsv",
					      0, num_bytes, 1);
	if (to_free)
		space_info_add_old_bytes(fs_info, delayed_refs_rsv->space_info,
					 to_free);
		btrfs_space_info_add_old_bytes(fs_info,
				delayed_refs_rsv->space_info, to_free);
}

/**
@@ -5435,7 +5431,7 @@ int btrfs_delayed_refs_rsv_refill(struct btrfs_fs_info *fs_info,
 * This is for space we already have accounted in space_info->bytes_may_use, so
 * basically when we're returning space from block_rsv's.
 */
static void space_info_add_old_bytes(struct btrfs_fs_info *fs_info,
void btrfs_space_info_add_old_bytes(struct btrfs_fs_info *fs_info,
				    struct btrfs_space_info *space_info,
				    u64 num_bytes)
{
@@ -5495,7 +5491,7 @@ again:
 * space_info->bytes_may_use yet.  So if we allocate a chunk or unpin an extent
 * we use this helper.
 */
static void space_info_add_new_bytes(struct btrfs_fs_info *fs_info,
void btrfs_space_info_add_new_bytes(struct btrfs_fs_info *fs_info,
				    struct btrfs_space_info *space_info,
				    u64 num_bytes)
{
@@ -5581,7 +5577,7 @@ static u64 block_rsv_release_bytes(struct btrfs_fs_info *fs_info,
			spin_unlock(&dest->lock);
		}
		if (num_bytes)
			space_info_add_old_bytes(fs_info, space_info,
			btrfs_space_info_add_old_bytes(fs_info, space_info,
						       num_bytes);
	}
	if (qgroup_to_release_ret)
@@ -6758,8 +6754,8 @@ static int unpin_extent_range(struct btrfs_fs_info *fs_info,
			spin_unlock(&global_rsv->lock);
			/* Add to any tickets we may have */
			if (len)
				space_info_add_new_bytes(fs_info, space_info,
							 len);
				btrfs_space_info_add_new_bytes(fs_info,
						space_info, len);
		}
		spin_unlock(&space_info->lock);
	}
+7 −0
Original line number Diff line number Diff line
@@ -75,4 +75,11 @@ static inline bool btrfs_mixed_space_info(struct btrfs_space_info *space_info)
		(space_info->flags & BTRFS_BLOCK_GROUP_DATA));
}

void btrfs_space_info_add_new_bytes(struct btrfs_fs_info *fs_info,
				    struct btrfs_space_info *space_info,
				    u64 num_bytes);
void btrfs_space_info_add_old_bytes(struct btrfs_fs_info *fs_info,
				    struct btrfs_space_info *space_info,
				    u64 num_bytes);

#endif /* BTRFS_SPACE_INFO_H */