From: Kent Overstreet Date: Sun, 12 Nov 2023 03:15:59 +0000 (-0500) Subject: bcachefs: Fix iterator leak in may_delete_deleted_inode() X-Git-Tag: v6.7-rc2~16^2~9 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=069749688ea4bbaeff0ca3b229b443ea96b03757;p=thirdparty%2Fkernel%2Fstable.git bcachefs: Fix iterator leak in may_delete_deleted_inode() may_delete_deleted_inode() was returning without exiting a btree iterator, eventually causing propagate_key_to_snaphot_leaves() to go into an infinite loop hitting btree_trans_too_many_iters(). Signed-off-by: Kent Overstreet --- diff --git a/fs/bcachefs/inode.c b/fs/bcachefs/inode.c index def77f2d88024..dab12c14d1ade 100644 --- a/fs/bcachefs/inode.c +++ b/fs/bcachefs/inode.c @@ -1134,7 +1134,7 @@ static int may_delete_deleted_inode(struct btree_trans *trans, * unlinked inodes in the snapshot leaves: */ *need_another_pass = true; - return 0; + goto out; } ret = 1;