aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorKyoji Ogasawara <sawara04.o@gmail.com>2025-05-09 19:26:31 +0900
committerDavid Sterba <dsterba@suse.com>2025-05-12 21:39:34 +0200
commit4ce2affc6ef9f84b4aebbf18bd5c57397b6024eb (patch)
tree12241d055afac8d69b401249b16d2761cf0cbd64
parentbtrfs: fix folio leak in submit_one_async_extent() (diff)
downloadwireguard-linux-4ce2affc6ef9f84b4aebbf18bd5c57397b6024eb.tar.xz
wireguard-linux-4ce2affc6ef9f84b4aebbf18bd5c57397b6024eb.zip
btrfs: add back warning for mount option commit values exceeding 300
The Btrfs documentation states that if the commit value is greater than 300 a warning should be issued. The warning was accidentally lost in the new mount API update. Fixes: 6941823cc878 ("btrfs: remove old mount API code") CC: stable@vger.kernel.org # 6.12+ Reviewed-by: Qu Wenruo <wqu@suse.com> Reviewed-by: Anand Jain <anand.jain@oracle.com> Signed-off-by: Kyoji Ogasawara <sawara04.o@gmail.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
-rw-r--r--fs/btrfs/fs.h1
-rw-r--r--fs/btrfs/super.c4
2 files changed, 5 insertions, 0 deletions
diff --git a/fs/btrfs/fs.h b/fs/btrfs/fs.h
index bcca43046064..7baa2ed45198 100644
--- a/fs/btrfs/fs.h
+++ b/fs/btrfs/fs.h
@@ -300,6 +300,7 @@ enum {
#define BTRFS_FEATURE_INCOMPAT_SAFE_CLEAR 0ULL
#define BTRFS_DEFAULT_COMMIT_INTERVAL (30)
+#define BTRFS_WARNING_COMMIT_INTERVAL (300)
#define BTRFS_DEFAULT_MAX_INLINE (2048)
struct btrfs_dev_replace {
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c
index 7121d8c7a318..7310e2fa8526 100644
--- a/fs/btrfs/super.c
+++ b/fs/btrfs/super.c
@@ -569,6 +569,10 @@ static int btrfs_parse_param(struct fs_context *fc, struct fs_parameter *param)
break;
case Opt_commit_interval:
ctx->commit_interval = result.uint_32;
+ if (ctx->commit_interval > BTRFS_WARNING_COMMIT_INTERVAL) {
+ btrfs_warn(NULL, "excessive commit interval %u, use with care",
+ ctx->commit_interval);
+ }
if (ctx->commit_interval == 0)
ctx->commit_interval = BTRFS_DEFAULT_COMMIT_INTERVAL;
break;