From: Kent Overstreet Date: Mon, 23 Sep 2024 20:39:49 +0000 (-0400) Subject: bcachefs: Fix infinite loop in propagate_key_to_snapshot_leaves() X-Git-Tag: v6.12-rc1~6^2~32 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=7eb4a319db65566005989121563ead344ca79140;p=linux-block.git bcachefs: Fix infinite loop in propagate_key_to_snapshot_leaves() As we iterate we need to mark that we no longer need iterators - otherwise we'll infinite loop via the "too many iters" check when there's many snapshots. Signed-off-by: Kent Overstreet --- diff --git a/fs/bcachefs/snapshot.c b/fs/bcachefs/snapshot.c index dff83ebbd912..1809442b00ee 100644 --- a/fs/bcachefs/snapshot.c +++ b/fs/bcachefs/snapshot.c @@ -1784,6 +1784,7 @@ static int bch2_propagate_key_to_snapshot_leaf(struct btree_trans *trans, new->k.p.snapshot = leaf_id; ret = bch2_trans_update(trans, &iter, new, 0); out: + bch2_set_btree_iter_dontneed(&iter); bch2_trans_iter_exit(trans, &iter); return ret; }