Skip to content

Commit c9d713d

Browse files
committed
btrfs: improve messages when updating feature flags
Currently the messages printed after setting an incompat feature are cryptis, we can easily make it better as the textual description is passed to the helpers. Old: setting 128 feature flag updated: setting incompat feature flag for RAID56 (0x80) Signed-off-by: David Sterba <[email protected]>
1 parent 6c64460 commit c9d713d

File tree

1 file changed

+24
-16
lines changed

1 file changed

+24
-16
lines changed

fs/btrfs/ctree.h

Lines changed: 24 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -3636,10 +3636,11 @@ do { \
36363636
/* compatibility and incompatibility defines */
36373637

36383638
#define btrfs_set_fs_incompat(__fs_info, opt) \
3639-
__btrfs_set_fs_incompat((__fs_info), BTRFS_FEATURE_INCOMPAT_##opt)
3639+
__btrfs_set_fs_incompat((__fs_info), BTRFS_FEATURE_INCOMPAT_##opt, \
3640+
#opt)
36403641

36413642
static inline void __btrfs_set_fs_incompat(struct btrfs_fs_info *fs_info,
3642-
u64 flag)
3643+
u64 flag, const char* name)
36433644
{
36443645
struct btrfs_super_block *disk_super;
36453646
u64 features;
@@ -3652,18 +3653,20 @@ static inline void __btrfs_set_fs_incompat(struct btrfs_fs_info *fs_info,
36523653
if (!(features & flag)) {
36533654
features |= flag;
36543655
btrfs_set_super_incompat_flags(disk_super, features);
3655-
btrfs_info(fs_info, "setting %llu feature flag",
3656-
flag);
3656+
btrfs_info(fs_info,
3657+
"setting incompat feature flag for %s (0x%llx)",
3658+
name, flag);
36573659
}
36583660
spin_unlock(&fs_info->super_lock);
36593661
}
36603662
}
36613663

36623664
#define btrfs_clear_fs_incompat(__fs_info, opt) \
3663-
__btrfs_clear_fs_incompat((__fs_info), BTRFS_FEATURE_INCOMPAT_##opt)
3665+
__btrfs_clear_fs_incompat((__fs_info), BTRFS_FEATURE_INCOMPAT_##opt, \
3666+
#opt)
36643667

36653668
static inline void __btrfs_clear_fs_incompat(struct btrfs_fs_info *fs_info,
3666-
u64 flag)
3669+
u64 flag, const char* name)
36673670
{
36683671
struct btrfs_super_block *disk_super;
36693672
u64 features;
@@ -3676,8 +3679,9 @@ static inline void __btrfs_clear_fs_incompat(struct btrfs_fs_info *fs_info,
36763679
if (features & flag) {
36773680
features &= ~flag;
36783681
btrfs_set_super_incompat_flags(disk_super, features);
3679-
btrfs_info(fs_info, "clearing %llu feature flag",
3680-
flag);
3682+
btrfs_info(fs_info,
3683+
"clearing incompat feature flag for %s (0x%llx)",
3684+
name, flag);
36813685
}
36823686
spin_unlock(&fs_info->super_lock);
36833687
}
@@ -3694,10 +3698,11 @@ static inline bool __btrfs_fs_incompat(struct btrfs_fs_info *fs_info, u64 flag)
36943698
}
36953699

36963700
#define btrfs_set_fs_compat_ro(__fs_info, opt) \
3697-
__btrfs_set_fs_compat_ro((__fs_info), BTRFS_FEATURE_COMPAT_RO_##opt)
3701+
__btrfs_set_fs_compat_ro((__fs_info), BTRFS_FEATURE_COMPAT_RO_##opt, \
3702+
#opt)
36983703

36993704
static inline void __btrfs_set_fs_compat_ro(struct btrfs_fs_info *fs_info,
3700-
u64 flag)
3705+
u64 flag, const char *name)
37013706
{
37023707
struct btrfs_super_block *disk_super;
37033708
u64 features;
@@ -3710,18 +3715,20 @@ static inline void __btrfs_set_fs_compat_ro(struct btrfs_fs_info *fs_info,
37103715
if (!(features & flag)) {
37113716
features |= flag;
37123717
btrfs_set_super_compat_ro_flags(disk_super, features);
3713-
btrfs_info(fs_info, "setting %llu ro feature flag",
3714-
flag);
3718+
btrfs_info(fs_info,
3719+
"setting compat-ro feature flag for %s (0x%llx)",
3720+
name, flag);
37153721
}
37163722
spin_unlock(&fs_info->super_lock);
37173723
}
37183724
}
37193725

37203726
#define btrfs_clear_fs_compat_ro(__fs_info, opt) \
3721-
__btrfs_clear_fs_compat_ro((__fs_info), BTRFS_FEATURE_COMPAT_RO_##opt)
3727+
__btrfs_clear_fs_compat_ro((__fs_info), BTRFS_FEATURE_COMPAT_RO_##opt, \
3728+
#opt)
37223729

37233730
static inline void __btrfs_clear_fs_compat_ro(struct btrfs_fs_info *fs_info,
3724-
u64 flag)
3731+
u64 flag, const char *name)
37253732
{
37263733
struct btrfs_super_block *disk_super;
37273734
u64 features;
@@ -3734,8 +3741,9 @@ static inline void __btrfs_clear_fs_compat_ro(struct btrfs_fs_info *fs_info,
37343741
if (features & flag) {
37353742
features &= ~flag;
37363743
btrfs_set_super_compat_ro_flags(disk_super, features);
3737-
btrfs_info(fs_info, "clearing %llu ro feature flag",
3738-
flag);
3744+
btrfs_info(fs_info,
3745+
"clearing compat-ro feature flag for %s (0x%llx)",
3746+
name, flag);
37393747
}
37403748
spin_unlock(&fs_info->super_lock);
37413749
}

0 commit comments

Comments
 (0)