[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <C9872011-F3EC-44E4-BBB1-5C36979AA2CA@dilger.ca>
Date: Thu, 8 Mar 2018 20:49:00 -0700
From: Andreas Dilger <adilger@...ger.ca>
To: "Darrick J. Wong" <darrick.wong@...cle.com>
Cc: Theodore Ts'o <tytso@....edu>, linux-ext4@...r.kernel.org
Subject: Re: [PATCH 1/4] tune2fs: allow setting the filesystem error bit
On Mar 8, 2018, at 1:13 PM, Darrick J. Wong <darrick.wong@...cle.com> wrote:
>
> From: Darrick J. Wong <darrick.wong@...cle.com>
>
> Allow the administrator to mark the filesystem's error bit to force a
> fsck at the next mount.
>
> Signed-off-by: Darrick J. Wong <darrick.wong@...cle.com>
Nice and simple. We should have added something like this years ago.
Reviewed-by: Andreas Dilger <adilger@...ger.ca>
> ---
> misc/tune2fs.8.in | 4 ++++
> misc/tune2fs.c | 5 +++++
> 2 files changed, 9 insertions(+)
>
>
> diff --git a/misc/tune2fs.8.in b/misc/tune2fs.8.in
> index 740d166..f1def2b 100644
> --- a/misc/tune2fs.8.in
> +++ b/misc/tune2fs.8.in
> @@ -238,6 +238,10 @@ program.
> This superblock setting is only honored in 2.6.35+ kernels;
> and not at all by the ext2 and ext3 file system drivers.
> .TP
> +.B force_fsck
> +Set a flag in the filesystem superblock indicating that errors have been found.
> +This will force fsck to run at the next mount.
> +.TP
> .B test_fs
> Set a flag in the filesystem superblock indicating that it may be
> mounted using experimental kernel code, such as the ext4dev filesystem.
> diff --git a/misc/tune2fs.c b/misc/tune2fs.c
> index 93160c9..ea84e1e 100644
> --- a/misc/tune2fs.c
> +++ b/misc/tune2fs.c
> @@ -2117,6 +2117,10 @@ static int parse_extended_opts(ext2_filsys fs, const char *opts)
> intv);
> fs->super->s_mmp_update_interval = intv;
> ext2fs_mark_super_dirty(fs);
> + } else if (!strcmp(token, "force_fsck")) {
> + fs->super->s_state |= EXT2_ERROR_FS;
> + printf(_("Setting filesystem error flag to force fsck.\n"));
> + ext2fs_mark_super_dirty(fs);
> } else if (!strcmp(token, "test_fs")) {
> fs->super->s_flags |= EXT2_FLAGS_TEST_FILESYS;
> printf("Setting test filesystem flag\n");
> @@ -2199,6 +2203,7 @@ static int parse_extended_opts(ext2_filsys fs, const char *opts)
> "\tmmp_update_interval=<mmp update interval in seconds>\n"
> "\tstride=<RAID per-disk chunk size in blocks>\n"
> "\tstripe_width=<RAID stride*data disks in blocks>\n"
> + "\tforce_fsck\n"
> "\ttest_fs\n"
> "\t^test_fs\n"));
> free(buf);
>
Cheers, Andreas
Download attachment "signature.asc" of type "application/pgp-signature" (874 bytes)
Powered by blists - more mailing lists