mirror of
https://gitee.com/bianbu-linux/linux-6.6
synced 2025-04-24 14:07:52 -04:00
btrfs: convert block group bit field to use bit helpers
We use a bit field in the btrfs_block_group for different flags, however this is awkward because we have to hold the block_group->lock for any modification of any of these fields, and makes the code clunky for a few of these flags. Convert these to a properly flags setup so we can utilize the bit helpers. Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: Josef Bacik <josef@toxicpanda.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
723de71d41
commit
3349b57fd4
9 changed files with 71 additions and 56 deletions
|
@ -546,7 +546,7 @@ static int mark_block_group_to_copy(struct btrfs_fs_info *fs_info,
|
|||
continue;
|
||||
|
||||
spin_lock(&cache->lock);
|
||||
cache->to_copy = 1;
|
||||
set_bit(BLOCK_GROUP_FLAG_TO_COPY, &cache->runtime_flags);
|
||||
spin_unlock(&cache->lock);
|
||||
|
||||
btrfs_put_block_group(cache);
|
||||
|
@ -577,7 +577,7 @@ bool btrfs_finish_block_group_to_copy(struct btrfs_device *srcdev,
|
|||
return true;
|
||||
|
||||
spin_lock(&cache->lock);
|
||||
if (cache->removed) {
|
||||
if (test_bit(BLOCK_GROUP_FLAG_REMOVED, &cache->runtime_flags)) {
|
||||
spin_unlock(&cache->lock);
|
||||
return true;
|
||||
}
|
||||
|
@ -611,7 +611,7 @@ bool btrfs_finish_block_group_to_copy(struct btrfs_device *srcdev,
|
|||
|
||||
/* Last stripe on this device */
|
||||
spin_lock(&cache->lock);
|
||||
cache->to_copy = 0;
|
||||
clear_bit(BLOCK_GROUP_FLAG_TO_COPY, &cache->runtime_flags);
|
||||
spin_unlock(&cache->lock);
|
||||
|
||||
return true;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue