mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-26 02:39:48 +00:00
Btrfs: add __get_block_group_index() helper
Add __get_block_group_index() helper to be able to derive block group index from an arbitary set of flags. Implement get_block_group_index() in terms of it. Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
This commit is contained in:
parent
fc67c45083
commit
7738a53a3a
1 changed files with 12 additions and 5 deletions
|
@ -5248,22 +5248,29 @@ wait_block_group_cache_done(struct btrfs_block_group_cache *cache)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int get_block_group_index(struct btrfs_block_group_cache *cache)
|
||||
static int __get_block_group_index(u64 flags)
|
||||
{
|
||||
int index;
|
||||
if (cache->flags & BTRFS_BLOCK_GROUP_RAID10)
|
||||
|
||||
if (flags & BTRFS_BLOCK_GROUP_RAID10)
|
||||
index = 0;
|
||||
else if (cache->flags & BTRFS_BLOCK_GROUP_RAID1)
|
||||
else if (flags & BTRFS_BLOCK_GROUP_RAID1)
|
||||
index = 1;
|
||||
else if (cache->flags & BTRFS_BLOCK_GROUP_DUP)
|
||||
else if (flags & BTRFS_BLOCK_GROUP_DUP)
|
||||
index = 2;
|
||||
else if (cache->flags & BTRFS_BLOCK_GROUP_RAID0)
|
||||
else if (flags & BTRFS_BLOCK_GROUP_RAID0)
|
||||
index = 3;
|
||||
else
|
||||
index = 4;
|
||||
|
||||
return index;
|
||||
}
|
||||
|
||||
static int get_block_group_index(struct btrfs_block_group_cache *cache)
|
||||
{
|
||||
return __get_block_group_index(cache->flags);
|
||||
}
|
||||
|
||||
enum btrfs_loop_type {
|
||||
LOOP_CACHING_NOWAIT = 0,
|
||||
LOOP_CACHING_WAIT = 1,
|
||||
|
|
Loading…
Reference in a new issue