mirror of
https://github.com/torvalds/linux.git
synced 2026-05-28 17:13:52 +02:00
bcachefs: Fix unhandled transaction restart in bch2_gc_btree_gens()
This fixes https://github.com/koverstreet/bcachefs/issues/305 Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
This commit is contained in:
parent
8dd6ed9451
commit
f4ccfe07e2
|
|
@ -1736,8 +1736,14 @@ static int bch2_gc_btree_gens(struct bch_fs *c, enum btree_id btree_id)
|
|||
BTREE_ITER_ALL_SNAPSHOTS);
|
||||
|
||||
while ((bch2_trans_begin(&trans),
|
||||
k = bch2_btree_iter_peek(iter)).k &&
|
||||
!(ret = bkey_err(k))) {
|
||||
k = bch2_btree_iter_peek(iter)).k) {
|
||||
ret = bkey_err(k);
|
||||
|
||||
if (ret == -EINTR)
|
||||
continue;
|
||||
if (ret)
|
||||
break;
|
||||
|
||||
c->gc_gens_pos = iter->pos;
|
||||
|
||||
if (gc_btree_gens_key(c, k) && !commit_err) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user