btrfs: remove stub device info from messages when we have no fs_info
authorDavid Sterba <dsterba@suse.com>
Fri, 13 Nov 2020 16:58:03 +0000 (17:58 +0100)
committerDavid Sterba <dsterba@suse.com>
Tue, 8 Dec 2020 14:54:14 +0000 (15:54 +0100)
Without a NULL fs_info the helpers will print something like

BTRFS error (device <unknown>): ...

This can happen in contexts where fs_info is not available at all or
it's potentially unsafe due to object lifetime. The <unknown> stub does
not bring much information and with the prefix makes the message
unnecessarily longer.

Remove it for the NULL fs_info case.

BTRFS error: ...

Callers can add the device information to the message itself if needed.

Reviewed-by: Anand Jain <anand.jain@oracle.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/super.c

index 6693cfc..348f889 100644 (file)
@@ -240,9 +240,13 @@ void __cold btrfs_printk(const struct btrfs_fs_info *fs_info, const char *fmt, .
        vaf.fmt = fmt;
        vaf.va = &args;
 
-       if (__ratelimit(ratelimit))
-               printk("%sBTRFS %s (device %s): %pV\n", lvl, type,
-                       fs_info ? fs_info->sb->s_id : "<unknown>", &vaf);
+       if (__ratelimit(ratelimit)) {
+               if (fs_info)
+                       printk("%sBTRFS %s (device %s): %pV\n", lvl, type,
+                               fs_info->sb->s_id, &vaf);
+               else
+                       printk("%sBTRFS %s: %pV\n", lvl, type, &vaf);
+       }
 
        va_end(args);
 }