diff options
Diffstat (limited to 'libbcachefs/error.c')
-rw-r--r-- | libbcachefs/error.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libbcachefs/error.c b/libbcachefs/error.c index 8357c8de..ca2a06e2 100644 --- a/libbcachefs/error.c +++ b/libbcachefs/error.c @@ -95,11 +95,17 @@ print: vscnprintf(buf, sizeof(_buf), fmt, args); va_end(args); + if (c->opts.fix_errors == FSCK_OPT_EXIT) { + bch_err(c, "%s, exiting", buf); + mutex_unlock(&c->fsck_error_lock); + return FSCK_ERR_EXIT; + } + if (flags & FSCK_CAN_FIX) { - if (c->opts.fix_errors == FSCK_ERR_ASK) { + if (c->opts.fix_errors == FSCK_OPT_ASK) { printk(KERN_ERR "%s: fix?", buf); fix = ask_yn(); - } else if (c->opts.fix_errors == FSCK_ERR_YES || + } else if (c->opts.fix_errors == FSCK_OPT_YES || (c->opts.nochanges && !(flags & FSCK_CAN_IGNORE))) { if (print) |