From: Kent Overstreet Date: Mon, 27 Jan 2020 22:47:07 +0000 (-0500) Subject: bcachefs: Fix an in iterator leak X-Git-Tag: io_uring-6.7-2023-11-10~119^2~2186 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=4dba7c301782de9cba75b7895a5068c0bf07a551;p=linux-block.git bcachefs: Fix an in iterator leak This should fix a transaction iterator overflow bug during fsck. Signed-off-by: Kent Overstreet Signed-off-by: Kent Overstreet --- diff --git a/fs/bcachefs/str_hash.h b/fs/bcachefs/str_hash.h index 35f4232d0755..cf6ecd963a7b 100644 --- a/fs/bcachefs/str_hash.h +++ b/fs/bcachefs/str_hash.h @@ -319,13 +319,16 @@ int bch2_hash_delete(struct btree_trans *trans, u64 inode, const void *key) { struct btree_iter *iter; + int ret; iter = bch2_hash_lookup(trans, desc, info, inode, key, BTREE_ITER_INTENT); if (IS_ERR(iter)) return PTR_ERR(iter); - return bch2_hash_delete_at(trans, desc, info, iter); + ret = bch2_hash_delete_at(trans, desc, info, iter); + bch2_trans_iter_put(trans, iter); + return ret; } #endif /* _BCACHEFS_STR_HASH_H */