Commit c2a67a76 authored by Josef Bacik's avatar Josef Bacik Committed by David Sterba

btrfs: export block_rsv_use_bytes

We are going to need this to move the metadata reservation stuff to
space_info.c.
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 b338b013
...@@ -2844,6 +2844,7 @@ int btrfs_block_rsv_refill(struct btrfs_root *root, ...@@ -2844,6 +2844,7 @@ int btrfs_block_rsv_refill(struct btrfs_root *root,
int btrfs_block_rsv_migrate(struct btrfs_block_rsv *src_rsv, int btrfs_block_rsv_migrate(struct btrfs_block_rsv *src_rsv,
struct btrfs_block_rsv *dst_rsv, u64 num_bytes, struct btrfs_block_rsv *dst_rsv, u64 num_bytes,
bool update_size); bool update_size);
int btrfs_block_rsv_use_bytes(struct btrfs_block_rsv *block_rsv, u64 num_bytes);
int btrfs_cond_migrate_bytes(struct btrfs_fs_info *fs_info, int btrfs_cond_migrate_bytes(struct btrfs_fs_info *fs_info,
struct btrfs_block_rsv *dest, u64 num_bytes, struct btrfs_block_rsv *dest, u64 num_bytes,
int min_factor); int min_factor);
......
...@@ -53,8 +53,6 @@ static int find_next_key(struct btrfs_path *path, int level, ...@@ -53,8 +53,6 @@ static int find_next_key(struct btrfs_path *path, int level,
static void dump_space_info(struct btrfs_fs_info *fs_info, static void dump_space_info(struct btrfs_fs_info *fs_info,
struct btrfs_space_info *info, u64 bytes, struct btrfs_space_info *info, u64 bytes,
int dump_block_groups); int dump_block_groups);
static int block_rsv_use_bytes(struct btrfs_block_rsv *block_rsv,
u64 num_bytes);
static noinline int static noinline int
block_group_cache_done(struct btrfs_block_group_cache *cache) block_group_cache_done(struct btrfs_block_group_cache *cache)
...@@ -5031,7 +5029,7 @@ static int reserve_metadata_bytes(struct btrfs_root *root, ...@@ -5031,7 +5029,7 @@ static int reserve_metadata_bytes(struct btrfs_root *root,
if (ret == -ENOSPC && if (ret == -ENOSPC &&
unlikely(root->orphan_cleanup_state == ORPHAN_CLEANUP_STARTED)) { unlikely(root->orphan_cleanup_state == ORPHAN_CLEANUP_STARTED)) {
if (block_rsv != global_rsv && if (block_rsv != global_rsv &&
!block_rsv_use_bytes(global_rsv, orig_bytes)) !btrfs_block_rsv_use_bytes(global_rsv, orig_bytes))
ret = 0; ret = 0;
} }
if (ret == -ENOSPC) { if (ret == -ENOSPC) {
...@@ -5067,8 +5065,7 @@ static struct btrfs_block_rsv *get_block_rsv( ...@@ -5067,8 +5065,7 @@ static struct btrfs_block_rsv *get_block_rsv(
return block_rsv; return block_rsv;
} }
static int block_rsv_use_bytes(struct btrfs_block_rsv *block_rsv, int btrfs_block_rsv_use_bytes(struct btrfs_block_rsv *block_rsv, u64 num_bytes)
u64 num_bytes)
{ {
int ret = -ENOSPC; int ret = -ENOSPC;
spin_lock(&block_rsv->lock); spin_lock(&block_rsv->lock);
...@@ -5265,7 +5262,7 @@ int btrfs_block_rsv_migrate(struct btrfs_block_rsv *src, ...@@ -5265,7 +5262,7 @@ int btrfs_block_rsv_migrate(struct btrfs_block_rsv *src,
{ {
int ret; int ret;
ret = block_rsv_use_bytes(src, num_bytes); ret = btrfs_block_rsv_use_bytes(src, num_bytes);
if (ret) if (ret)
return ret; return ret;
...@@ -8134,7 +8131,7 @@ use_block_rsv(struct btrfs_trans_handle *trans, ...@@ -8134,7 +8131,7 @@ use_block_rsv(struct btrfs_trans_handle *trans,
if (unlikely(block_rsv->size == 0)) if (unlikely(block_rsv->size == 0))
goto try_reserve; goto try_reserve;
again: again:
ret = block_rsv_use_bytes(block_rsv, blocksize); ret = btrfs_block_rsv_use_bytes(block_rsv, blocksize);
if (!ret) if (!ret)
return block_rsv; return block_rsv;
...@@ -8172,7 +8169,7 @@ use_block_rsv(struct btrfs_trans_handle *trans, ...@@ -8172,7 +8169,7 @@ use_block_rsv(struct btrfs_trans_handle *trans,
*/ */
if (block_rsv->type != BTRFS_BLOCK_RSV_GLOBAL && if (block_rsv->type != BTRFS_BLOCK_RSV_GLOBAL &&
block_rsv->space_info == global_rsv->space_info) { block_rsv->space_info == global_rsv->space_info) {
ret = block_rsv_use_bytes(global_rsv, blocksize); ret = btrfs_block_rsv_use_bytes(global_rsv, blocksize);
if (!ret) if (!ret)
return global_rsv; return global_rsv;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment