ext4: on a remount, only log the ro or r/w state when it has changed
authorNicolas Bretz <bretznic@gmail.com>
Wed, 19 Mar 2025 17:10:11 +0000 (11:10 -0600)
committerTheodore Ts'o <tytso@mit.edu>
Fri, 21 Mar 2025 05:33:11 +0000 (01:33 -0400)
A user complained that a message such as:

EXT4-fs (nvme0n1p3): re-mounted UUID ro. Quota mode: none.

implied that the file system was previously mounted read/write and was
now remounted read-only, when it could have been some other mount
state that had changed by the "mount -o remount" operation.  Fix this
by only logging "ro"or "r/w" when it has changed.

https://bugzilla.kernel.org/show_bug.cgi?id=219132

Signed-off-by: Nicolas Bretz <bretznic@gmail.com>
Link: https://patch.msgid.link/20250319171011.8372-1-bretznic@gmail.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
fs/ext4/super.c

index f7175e62b1ebf38c244428785d79fa7a8f2d2297..8122d4ffb3b589869124ce2422087eb2b1e8c43d 100644 (file)
@@ -6780,6 +6780,7 @@ static int ext4_reconfigure(struct fs_context *fc)
 {
        struct super_block *sb = fc->root->d_sb;
        int ret;
+       bool old_ro = sb_rdonly(sb);
 
        fc->s_fs_info = EXT4_SB(sb);
 
@@ -6791,9 +6792,9 @@ static int ext4_reconfigure(struct fs_context *fc)
        if (ret < 0)
                return ret;
 
-       ext4_msg(sb, KERN_INFO, "re-mounted %pU %s. Quota mode: %s.",
-                &sb->s_uuid, sb_rdonly(sb) ? "ro" : "r/w",
-                ext4_quota_mode(sb));
+       ext4_msg(sb, KERN_INFO, "re-mounted %pU%s.",
+                &sb->s_uuid,
+                (old_ro != sb_rdonly(sb)) ? (sb_rdonly(sb) ? " ro" : " r/w") : "");
 
        return 0;
 }