diff options
| author | Kent Overstreet <kent.overstreet@linux.dev> | 2025-06-17 16:41:43 -0400 |
|---|---|---|
| committer | Kent Overstreet <kent.overstreet@linux.dev> | 2025-06-17 20:45:26 -0400 |
| commit | 3f890768dab1f97ff9bd7ebb76f4c52309401501 (patch) | |
| tree | 081d527cef584b3001ab8a2306968dfdd45710c9 /fs/bcachefs | |
| parent | bcachefs: fsck: Fix check_directory_structure when no check_dirents (diff) | |
| download | linux-3f890768dab1f97ff9bd7ebb76f4c52309401501.tar.gz linux-3f890768dab1f97ff9bd7ebb76f4c52309401501.zip | |
bcachefs: fsck: fix unhandled restart in topology repair
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs')
| -rw-r--r-- | fs/bcachefs/btree_gc.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/fs/bcachefs/btree_gc.c b/fs/bcachefs/btree_gc.c index e92cf3928c63..697c6ecc3a65 100644 --- a/fs/bcachefs/btree_gc.c +++ b/fs/bcachefs/btree_gc.c @@ -503,8 +503,14 @@ again: prt_newline(&buf); bch2_bkey_val_to_text(&buf, c, bkey_i_to_s_c(&b->key)); + /* + * XXX: we're not passing the trans object here because we're not set up + * to handle a transaction restart - this code needs to be rewritten + * when we start doing online topology repair + */ + bch2_trans_unlock_long(trans); if (mustfix_fsck_err_on(!have_child, - trans, btree_node_topology_interior_node_empty, + c, btree_node_topology_interior_node_empty, "empty interior btree node at %s", buf.buf)) ret = DROP_THIS_NODE; err: |
