xfs: warn about LARP once per mount
authorDarrick J. Wong <djwong@kernel.org>
Fri, 27 May 2022 00:32:07 +0000 (10:32 +1000)
committerDave Chinner <david@fromorbit.com>
Fri, 27 May 2022 00:32:07 +0000 (10:32 +1000)
Since LARP is an experimental debug-only feature, we should try to warn
about it being in use once per mount, not once per reboot.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
fs/xfs/xfs_log.c
fs/xfs/xfs_mount.h

index 9dc748a..a75f4ff 100644 (file)
@@ -3910,8 +3910,8 @@ xfs_attr_use_log_assist(
        if (error)
                goto drop_incompat;
 
-       xfs_warn_once(mp,
-"EXPERIMENTAL logged extended attributes feature added. Use at your own risk!");
+       xfs_warn_mount(mp, XFS_OPSTATE_WARNED_LARP,
+ "EXPERIMENTAL logged extended attributes feature in use. Use at your own risk!");
 
        return 0;
 drop_incompat:
index 93a9542..ba5d42a 100644 (file)
@@ -395,6 +395,8 @@ __XFS_HAS_FEAT(nouuid, NOUUID)
 #define XFS_OPSTATE_WARNED_SCRUB       7
 /* Kernel has logged a warning about shrink being used on this fs. */
 #define XFS_OPSTATE_WARNED_SHRINK      8
+/* Kernel has logged a warning about logged xattr updates being used. */
+#define XFS_OPSTATE_WARNED_LARP                9
 
 #define __XFS_IS_OPSTATE(name, NAME) \
 static inline bool xfs_is_ ## name (struct xfs_mount *mp) \
@@ -433,7 +435,8 @@ xfs_should_warn(struct xfs_mount *mp, long nr)
        { (1UL << XFS_OPSTATE_INODEGC_ENABLED),         "inodegc" }, \
        { (1UL << XFS_OPSTATE_BLOCKGC_ENABLED),         "blockgc" }, \
        { (1UL << XFS_OPSTATE_WARNED_SCRUB),            "wscrub" }, \
-       { (1UL << XFS_OPSTATE_WARNED_SHRINK),           "wshrink" }
+       { (1UL << XFS_OPSTATE_WARNED_SHRINK),           "wshrink" }, \
+       { (1UL << XFS_OPSTATE_WARNED_LARP),             "wlarp" }
 
 /*
  * Max and min values for mount-option defined I/O