From: Kent Overstreet Date: Sun, 10 Apr 2022 22:12:04 +0000 (-0400) Subject: bcachefs: Use bch2_trans_inconsistent_on() in more places X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=84befe8ef9a07be1cd9bac4e1a1c66c667f71499;p=linux.git bcachefs: Use bch2_trans_inconsistent_on() in more places This gets us better error messages. Signed-off-by: Kent Overstreet --- diff --git a/fs/bcachefs/alloc_background.c b/fs/bcachefs/alloc_background.c index 108b98c9fe45b..3be6f0fa89deb 100644 --- a/fs/bcachefs/alloc_background.c +++ b/fs/bcachefs/alloc_background.c @@ -520,7 +520,7 @@ static int bch2_bucket_do_index(struct btree_trans *trans, goto err; if (ca->mi.freespace_initialized && - bch2_fs_inconsistent_on(old.k->type != old_type, c, + bch2_trans_inconsistent_on(old.k->type != old_type, trans, "incorrect key when %s %s btree (got %s should be %s)\n" " for %s", set ? "setting" : "clearing", @@ -950,7 +950,7 @@ static int bch2_clear_need_discard(struct btree_trans *trans, struct bpos pos, goto write; } - if (bch2_fs_inconsistent_on(a->v.journal_seq > c->journal.flushed_seq_ondisk, c, + if (bch2_trans_inconsistent_on(a->v.journal_seq > c->journal.flushed_seq_ondisk, trans, "clearing need_discard but journal_seq %llu > flushed_seq %llu\n" "%s", a->v.journal_seq, @@ -960,7 +960,7 @@ static int bch2_clear_need_discard(struct btree_trans *trans, struct bpos pos, goto out; } - if (bch2_fs_inconsistent_on(a->v.data_type != BCH_DATA_need_discard, c, + if (bch2_trans_inconsistent_on(a->v.data_type != BCH_DATA_need_discard, trans, "bucket incorrectly set in need_discard btree\n" "%s", (bch2_bkey_val_to_text(&buf, c, k), buf.buf))) { @@ -1089,8 +1089,8 @@ static int invalidate_one_bucket(struct btree_trans *trans, struct bch_dev *ca) if (!k.k || k.k->p.inode != ca->dev_idx) goto out; - if (bch2_fs_inconsistent_on(k.k->type != KEY_TYPE_lru, c, - "non lru key in lru btree")) + if (bch2_trans_inconsistent_on(k.k->type != KEY_TYPE_lru, trans, + "non lru key in lru btree")) goto out; idx = k.k->p.offset; @@ -1102,7 +1102,7 @@ static int invalidate_one_bucket(struct btree_trans *trans, struct bch_dev *ca) if (ret) goto out; - if (bch2_fs_inconsistent_on(idx != alloc_lru_idx(a->v), c, + if (bch2_trans_inconsistent_on(idx != alloc_lru_idx(a->v), trans, "invalidating bucket with wrong lru idx (got %llu should be %llu", idx, alloc_lru_idx(a->v))) goto out; diff --git a/fs/bcachefs/lru.c b/fs/bcachefs/lru.c index ef4b4a9f0d5ff..d8180bc1c6b11 100644 --- a/fs/bcachefs/lru.c +++ b/fs/bcachefs/lru.c @@ -32,7 +32,6 @@ void bch2_lru_to_text(struct printbuf *out, struct bch_fs *c, static int lru_delete(struct btree_trans *trans, u64 id, u64 idx, u64 time) { - struct bch_fs *c = trans->c; struct btree_iter iter; struct bkey_s_c k; u64 existing_idx; @@ -51,7 +50,7 @@ static int lru_delete(struct btree_trans *trans, u64 id, u64 idx, u64 time) goto err; if (k.k->type != KEY_TYPE_lru) { - bch2_fs_inconsistent(c, + bch2_trans_inconsistent(trans, "pointer to nonexistent lru %llu:%llu", id, time); ret = -EIO; @@ -60,7 +59,7 @@ static int lru_delete(struct btree_trans *trans, u64 id, u64 idx, u64 time) existing_idx = le64_to_cpu(bkey_s_c_to_lru(k).v->idx); if (existing_idx != idx) { - bch2_fs_inconsistent(c, + bch2_trans_inconsistent(trans, "lru %llu:%llu with wrong backpointer: got %llu, should be %llu", id, time, existing_idx, idx); ret = -EIO;