btrfs-progs: mask out all unwanted profiles in btrfs_group_profile_str
Commit ("btrfs-progs: switch btrfs_group_profile_str to use raid table") introduced a regression that raid profile of GlobalReserve will be printed as 'unknown'. $ btrfs filesystem df /mnt/test Data, single: total=5.02TiB, used=4.98TiB System, single: total=4.00MiB, used=624.00KiB Metadata, single: total=11.01GiB, used=6.94GiB GlobalReserve, unknown: total=512.00MiB, used=0.00B Fix it by: - take BTRFS_BLOCK_GROUP_RESERVED into account when masking the block group flags - update the define of BTRFS_BLOCK_GROUP_RESERVED too so it's same as in kernel Reviewed-by: Qu Wenruo <wqu@suse.com> Signed-off-by: Wang Yugui <wangyugui@e16-tech.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
dca6b12f0a
commit
b1d8f945c9
|
@ -1030,7 +1030,7 @@ const char* btrfs_group_profile_str(u64 flag)
|
|||
{
|
||||
int index;
|
||||
|
||||
flag &= ~BTRFS_BLOCK_GROUP_TYPE_MASK;
|
||||
flag &= ~(BTRFS_BLOCK_GROUP_TYPE_MASK | BTRFS_BLOCK_GROUP_RESERVED);
|
||||
if (flag & ~BTRFS_BLOCK_GROUP_PROFILE_MASK)
|
||||
return "unknown";
|
||||
|
||||
|
|
|
@ -972,7 +972,8 @@ struct btrfs_csum_item {
|
|||
#define BTRFS_BLOCK_GROUP_RAID6 (1ULL << 8)
|
||||
#define BTRFS_BLOCK_GROUP_RAID1C3 (1ULL << 9)
|
||||
#define BTRFS_BLOCK_GROUP_RAID1C4 (1ULL << 10)
|
||||
#define BTRFS_BLOCK_GROUP_RESERVED BTRFS_AVAIL_ALLOC_BIT_SINGLE
|
||||
#define BTRFS_BLOCK_GROUP_RESERVED (BTRFS_AVAIL_ALLOC_BIT_SINGLE | \
|
||||
BTRFS_SPACE_INFO_GLOBAL_RSV)
|
||||
|
||||
enum btrfs_raid_types {
|
||||
BTRFS_RAID_RAID10,
|
||||
|
|
Loading…
Reference in New Issue