summaryrefslogtreecommitdiff
path: root/libbcachefs/error.c
diff options
context:
space:
mode:
Diffstat (limited to 'libbcachefs/error.c')
-rw-r--r--libbcachefs/error.c10
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)