diff options
| author | Kent Overstreet <kent.overstreet@linux.dev> | 2024-11-27 00:29:52 -0500 |
|---|---|---|
| committer | Kent Overstreet <kent.overstreet@linux.dev> | 2024-12-21 01:36:20 -0500 |
| commit | a6f4794fcd8627638153614193b3b81f37a28175 (patch) | |
| tree | fb19b5fb478768f51d88fd86b7fcd0c9f8ad7bbc /fs/bcachefs/btree_node_scan.c | |
| parent | bcachefs: Ignore empty btree root journal entries (diff) | |
| download | linux-a6f4794fcd8627638153614193b3b81f37a28175.tar.gz linux-a6f4794fcd8627638153614193b3b81f37a28175.zip | |
bcachefs: struct bkey_validate_context
Add a new parameter to bkey validate functions, and use it to improve
invalid bkey error messages: we can now print the btree and depth it
came from, or if it came from the journal, or is a btree root.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/btree_node_scan.c')
| -rw-r--r-- | fs/bcachefs/btree_node_scan.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/fs/bcachefs/btree_node_scan.c b/fs/bcachefs/btree_node_scan.c index 327f1a1859b9..eeafb5e7354e 100644 --- a/fs/bcachefs/btree_node_scan.c +++ b/fs/bcachefs/btree_node_scan.c @@ -538,7 +538,12 @@ int bch2_get_scanned_nodes(struct bch_fs *c, enum btree_id btree, bch_verbose(c, "%s(): recovering %s", __func__, buf.buf); printbuf_exit(&buf); - BUG_ON(bch2_bkey_validate(c, bkey_i_to_s_c(&tmp.k), BKEY_TYPE_btree, 0)); + BUG_ON(bch2_bkey_validate(c, bkey_i_to_s_c(&tmp.k), + (struct bkey_validate_context) { + .from = BKEY_VALIDATE_btree_node, + .level = level + 1, + .btree = btree, + })); ret = bch2_journal_key_insert(c, btree, level + 1, &tmp.k); if (ret) |
