summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2022-06-26 19:04:18 -0400
committerKent Overstreet <kent.overstreet@gmail.com>2022-07-12 08:52:53 -0400
commitb056abd53326cbf0e2372fabb7ed0b61c3300853 (patch)
treedc70c98ab973c71d19e566821ef331aff226c90b
parentb026484d5e01efd9b592042d6e07c9fc499736bc (diff)
bcachefs: Make "failed to evacuate bucket" a fatal error
We need to track these down, so let's make them noisier. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
-rw-r--r--fs/bcachefs/data_update.c8
-rw-r--r--fs/bcachefs/move.c2
2 files changed, 9 insertions, 1 deletions
diff --git a/fs/bcachefs/data_update.c b/fs/bcachefs/data_update.c
index 3e7d684a88f7..cc9ae6dad0d5 100644
--- a/fs/bcachefs/data_update.c
+++ b/fs/bcachefs/data_update.c
@@ -251,6 +251,14 @@ next:
}
continue;
nomatch:
+ if (IS_ENABLED(CONFIG_BCACHEFS_DEBUG)) {
+ struct printbuf buf = PRINTBUF;
+
+ bch2_bkey_val_to_text(&buf, c, old);
+ bch_info(c, "no match for %s", buf.buf);
+ printbuf_exit(&buf);
+ }
+
if (m->ctxt) {
BUG_ON(k.k->p.offset <= iter.pos.offset);
atomic64_inc(&m->ctxt->stats->keys_raced);
diff --git a/fs/bcachefs/move.c b/fs/bcachefs/move.c
index 823c898e075e..093efb093c08 100644
--- a/fs/bcachefs/move.c
+++ b/fs/bcachefs/move.c
@@ -540,7 +540,7 @@ again:
prt_str(&buf, "failed to evacuate bucket ");
bch2_bkey_val_to_text(&buf, c, k);
- bch_err_ratelimited(c, "%s", buf.buf);
+ bch2_trans_inconsistent(trans, "%s", buf.buf);
printbuf_exit(&buf);
}
}