diff options
author | Kent Overstreet <kent.overstreet@linux.dev> | 2023-02-01 15:37:05 -0500 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-02-01 15:43:02 -0500 |
commit | bdd85a63256e2f9d2521e92468d05bd6631d9adf (patch) | |
tree | cee5b04b921b12be84f31d4a278ddc1ff9d51bca | |
parent | 3c39b422acd3346321185be0ce263809e2a9a23f (diff) | |
download | bcachefs-tools-bdd85a63256e2f9d2521e92468d05bd6631d9adf.tar.gz |
cmd_fsck: Add --ratelimit_errors option
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
-rw-r--r-- | cmd_fsck.c | 22 |
1 files changed, 14 insertions, 8 deletions
@@ -12,20 +12,23 @@ static void usage(void) "Usage: bcachefs fsck [OPTION]... <devices>\n" "\n" "Options:\n" - " -p Automatic repair (no questions)\n" - " -n Don't repair, only check for errors\n" - " -y Assume \"yes\" to all questions\n" - " -f Force checking even if filesystem is marked clean\n" - " --reconstruct_alloc Reconstruct the alloc btree\n" - " -v Be verbose\n" - " -h Display this help and exit\n" + " -p Automatic repair (no questions)\n" + " -n Don't repair, only check for errors\n" + " -y Assume \"yes\" to all questions\n" + " -f Force checking even if filesystem is marked clean\n" + " -r, --ratelimit_errors Don't display more than 10 errors of a given type\n" + " -R, --reconstruct_alloc Reconstruct the alloc btree\n" + " -v Be verbose\n" + " -h, --help Display this help and exit\n" "Report bugs to <linux-bcachefs@vger.kernel.org>"); } int cmd_fsck(int argc, char *argv[]) { static const struct option longopts[] = { + { "ratelimit_errors", no_argument, NULL, 'r' }, { "reconstruct_alloc", no_argument, NULL, 'R' }, + { "help", no_argument, NULL, 'h' }, { NULL } }; struct bch_opts opts = bch2_opts_empty(); @@ -37,7 +40,7 @@ int cmd_fsck(int argc, char *argv[]) opt_set(opts, fix_errors, FSCK_OPT_ASK); while ((opt = getopt_long(argc, argv, - "apynfo:vh", + "apynfo:rvh", longopts, NULL)) != -1) switch (opt) { case 'a': /* outdated alias for -p */ @@ -59,6 +62,9 @@ int cmd_fsck(int argc, char *argv[]) if (ret) return ret; break; + case 'r': + opt_set(opts, ratelimit_errors, true); + break; case 'R': opt_set(opts, reconstruct_alloc, true); break; |