From 210baa5d8a58f84ab12772e80a839a4e74a54134 Mon Sep 17 00:00:00 2001 From: "Darrick J. Wong" Date: Mon, 27 Oct 2014 16:32:31 -0700 Subject: [PATCH] mke2fs: warn if enabling metadata_csum on a pre-3.18 kernel The metadata_csum feature (really, the journal checksum disk format) didn't stabilize until the 3.18 kernel, at which point the companion journal_csum feature was turned on by default if metadata_csum was enabled. Therefore, warn the user if they try to create such a filesystem on a pre-3.18 kernel. Signed-off-by: Darrick J. Wong Signed-off-by: Theodore Ts'o --- misc/mke2fs.c | 8 ++++++++ tests/filter.sed | 1 + 2 files changed, 9 insertions(+) diff --git a/misc/mke2fs.c b/misc/mke2fs.c index 0f571ad..0a0d2b3 100644 --- a/misc/mke2fs.c +++ b/misc/mke2fs.c @@ -2211,6 +2211,14 @@ profile_error: blocksize, sys_page_size); } + /* Metadata checksumming wasn't totally stable before 3.18. */ + if (is_before_linux_ver(3, 18, 0) && + (fs_param.s_feature_ro_compat & + EXT4_FEATURE_RO_COMPAT_METADATA_CSUM)) + fprintf(stderr, _("Suggestion: Use Linux kernel >= 3.18 for " + "improved stability of the metadata and journal " + "checksum features.\n")); + /* * On newer kernels we do have lazy_itable_init support. So pick the * right default in case ext4 module is not loaded. diff --git a/tests/filter.sed b/tests/filter.sed index 59fad4e..6ca6bbc 100644 --- a/tests/filter.sed +++ b/tests/filter.sed @@ -18,6 +18,7 @@ s/\\015//g /^Lifetime writes:/d /^Maximum mount count:/d /^Next check after:/d +/^Suggestion:/d /Reserved blocks uid:/s/ (user .*)// /Reserved blocks gid:/s/ (group .*)// /whichever comes first/d -- 1.8.3.1