btrfs: add and use helper to check if block group is used
commit 1693d5442c458ae8d5b0d58463b873cd879569ed upstream. Add a helper function to determine if a block group is being used and make use of it at btrfs_delete_unused_bgs(). This helper will also be used in future code changes. Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Reviewed-by: Josef Bacik <josef@toxicpanda.com> Reviewed-by: Boris Burkov <boris@bur.io> Signed-off-by: Filipe Manana <fdmanana@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
3af7236d6d
commit
84b576ad44
|
@ -1375,8 +1375,7 @@ void btrfs_delete_unused_bgs(struct btrfs_fs_info *fs_info)
|
||||||
}
|
}
|
||||||
|
|
||||||
spin_lock(&block_group->lock);
|
spin_lock(&block_group->lock);
|
||||||
if (block_group->reserved || block_group->pinned ||
|
if (btrfs_is_block_group_used(block_group) || block_group->ro ||
|
||||||
block_group->used || block_group->ro ||
|
|
||||||
list_is_singular(&block_group->list)) {
|
list_is_singular(&block_group->list)) {
|
||||||
/*
|
/*
|
||||||
* We want to bail if we made new allocations or have
|
* We want to bail if we made new allocations or have
|
||||||
|
|
|
@ -241,6 +241,13 @@ static inline u64 btrfs_block_group_end(struct btrfs_block_group *block_group)
|
||||||
return (block_group->start + block_group->length);
|
return (block_group->start + block_group->length);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline bool btrfs_is_block_group_used(const struct btrfs_block_group *bg)
|
||||||
|
{
|
||||||
|
lockdep_assert_held(&bg->lock);
|
||||||
|
|
||||||
|
return (bg->used > 0 || bg->reserved > 0 || bg->pinned > 0);
|
||||||
|
}
|
||||||
|
|
||||||
static inline bool btrfs_is_block_group_data_only(
|
static inline bool btrfs_is_block_group_data_only(
|
||||||
struct btrfs_block_group *block_group)
|
struct btrfs_block_group *block_group)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue