summaryrefslogtreecommitdiff
path: root/fs/bcachefs/error.c
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@linux.dev>2024-10-26 22:21:20 -0400
committerKent Overstreet <kent.overstreet@linux.dev>2024-12-21 01:36:18 -0500
commitc8e588135ce2bdb76b2edc640130e8b1aacd1810 (patch)
treea7be8fd2d1b62344f25dd94f0e6c10f605708beb /fs/bcachefs/error.c
parentc97118f1dc5081171625f66f082fe12980a4bcbe (diff)
downloadlinux-next-c8e588135ce2bdb76b2edc640130e8b1aacd1810.tar.gz
linux-next-c8e588135ce2bdb76b2edc640130e8b1aacd1810.zip
bcachefs: bch2_bucket_do_index(): inconsistent_err -> fsck_err
Factor out a common helper, need_discard_or_freespace_err(), which is now used by both fsck and the runtime checks, and can repair. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/error.c')
-rw-r--r--fs/bcachefs/error.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/fs/bcachefs/error.c b/fs/bcachefs/error.c
index 22b0fa405a39..2960baa023f6 100644
--- a/fs/bcachefs/error.c
+++ b/fs/bcachefs/error.c
@@ -256,9 +256,10 @@ int __bch2_fsck_err(struct bch_fs *c,
!trans &&
bch2_current_has_btree_trans(c));
- if ((flags & FSCK_CAN_FIX) &&
- test_bit(err, c->sb.errors_silent))
- return -BCH_ERR_fsck_fix;
+ if (test_bit(err, c->sb.errors_silent))
+ return flags & FSCK_CAN_FIX
+ ? -BCH_ERR_fsck_fix
+ : -BCH_ERR_fsck_ignore;
bch2_sb_error_count(c, err);