From: Theodore Ts'o Date: Tue, 30 May 2023 13:50:52 -0400 Subject: e2fsck: Suppress "orphan file is clean" message in preen mode Git-repo: git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git Git-commit: 24a11cc371a46ca9e68aed8f2cf4aabd22ea81eb Patch-mainline: Queued in subsystem maintainer repo References: bsc#1218747 The e2fsck report, "Feature orphan_present is set but orphan file is clean" is intended to request permission before removing the r/o compat feature, orphan_present. However, it is normal if the orphan file is empty, and removing the r/o compat feature is a good thing so that the file system can be mounted on older kernels. When a file system with an orphan_file feature is mounted, the orphan_present feature is set, and it is cleared when the file system is cleanly unmounted. IF the sytstem crashes when there are no inodes in the orphan file, e2fsck should just silently clear the flag in preen mode. Signed-off-by: Theodore Ts'o Acked-by: Luís Henriques --- e2fsck/problem.c | 2 +- e2fsck/super.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/e2fsck/problem.c b/e2fsck/problem.c index 6ad6fb849022..013ace24965b 100644 --- a/e2fsck/problem.c +++ b/e2fsck/problem.c @@ -2327,7 +2327,7 @@ static struct e2fsck_problem problem_table[] = { /* orphan_present set but orphan file is empty */ { PR_6_ORPHAN_PRESENT_CLEAN_FILE, N_("Feature orphan_present is set but orphan file is clean.\n"), - PROMPT_CLEAR, PR_PREEN_OK }, + PROMPT_CLEAR, PR_PREEN_OK | PR_NO_OK | PR_PREEN_NOMSG }, /* orphan_present set but orphan_file is not */ { PR_6_ORPHAN_PRESENT_NO_FILE, diff --git a/e2fsck/super.c b/e2fsck/super.c index 9495e029e087..be40dd8fb64d 100644 --- a/e2fsck/super.c +++ b/e2fsck/super.c @@ -1388,7 +1388,8 @@ void check_super_block(e2fsck_t ctx) * away. */ #define FEATURE_RO_COMPAT_IGNORE (EXT2_FEATURE_RO_COMPAT_LARGE_FILE| \ - EXT4_FEATURE_RO_COMPAT_DIR_NLINK) + EXT4_FEATURE_RO_COMPAT_DIR_NLINK| \ + EXT4_FEATURE_RO_COMPAT_ORPHAN_PRESENT) #define FEATURE_INCOMPAT_IGNORE (EXT3_FEATURE_INCOMPAT_EXTENTS| \ EXT3_FEATURE_INCOMPAT_RECOVER)