2022-08-23 18:00:16

by Maciej S. Szmigiero

[permalink] [raw]
Subject: [PATCH] btrfs: don't print information about space cache or tree every remount

From: "Maciej S. Szmigiero" <[email protected]>

btrfs currently prints information about space cache or free space tree
being in use on every remount, regardless whether such remount actually
enabled or disabled one of these features.

This is actually unnecessary since providing remount options changing the
state of these features will explicitly print the appropriate notice.

Let's instead print such unconditional information just on an initial mount
to avoid filling the kernel log when, for example, laptop-mode-tools
remount the fs on some events.

Signed-off-by: Maciej S. Szmigiero <[email protected]>
---
fs/btrfs/super.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c
index 2535f96612856..16fdfaad103da 100644
--- a/fs/btrfs/super.c
+++ b/fs/btrfs/super.c
@@ -626,6 +626,7 @@ int btrfs_parse_options(struct btrfs_fs_info *info, char *options,
int saved_compress_level;
bool saved_compress_force;
int no_compress = 0;
+ bool remounting = test_bit(BTRFS_FS_STATE_REMOUNTING, &info->fs_state);

if (btrfs_fs_compat_ro(info, FREE_SPACE_TREE))
btrfs_set_opt(info->mount_opt, FREE_SPACE_TREE);
@@ -1137,10 +1138,12 @@ int btrfs_parse_options(struct btrfs_fs_info *info, char *options,
}
if (!ret)
ret = btrfs_check_mountopts_zoned(info);
- if (!ret && btrfs_test_opt(info, SPACE_CACHE))
- btrfs_info(info, "disk space caching is enabled");
- if (!ret && btrfs_test_opt(info, FREE_SPACE_TREE))
- btrfs_info(info, "using free space tree");
+ if (!ret && !remounting) {
+ if (btrfs_test_opt(info, SPACE_CACHE))
+ btrfs_info(info, "disk space caching is enabled");
+ if (btrfs_test_opt(info, FREE_SPACE_TREE))
+ btrfs_info(info, "using free space tree");
+ }
return ret;
}


2022-08-23 20:38:44

by David Sterba

[permalink] [raw]
Subject: Re: [PATCH] btrfs: don't print information about space cache or tree every remount

On Tue, Aug 23, 2022 at 05:28:20PM +0200, Maciej S. Szmigiero wrote:
> From: "Maciej S. Szmigiero" <[email protected]>
>
> btrfs currently prints information about space cache or free space tree
> being in use on every remount, regardless whether such remount actually
> enabled or disabled one of these features.
>
> This is actually unnecessary since providing remount options changing the
> state of these features will explicitly print the appropriate notice.
>
> Let's instead print such unconditional information just on an initial mount
> to avoid filling the kernel log when, for example, laptop-mode-tools
> remount the fs on some events.
>
> Signed-off-by: Maciej S. Szmigiero <[email protected]>

Makes sense, added to misc-next, thanks.