From: Kent Overstreet Date: Mon, 15 May 2023 03:01:14 +0000 (-0400) Subject: bcachefs: Delete an incorrect bch2_trans_unlock() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=a49bd8c007e4f4840f8c4d7fe7d62c7bdc7fffca;p=linux.git bcachefs: Delete an incorrect bch2_trans_unlock() These deletes a bch2_trans_unlock() call from __bch2_move_data(). It was redundant; bch2_move_extent() has the correct unlock call, and it was buggy because when move_extent calls bch2_extent_drop_ptrs() we don't want the transaction to be unlocked yet - this fixes a btree_iter.c assertion. Fixes https://github.com/koverstreet/bcachefs/issues/511. Signed-off-by: Kent Overstreet --- diff --git a/fs/bcachefs/move.c b/fs/bcachefs/move.c index 7e22176a5c7e5..2ec30a3fd1937 100644 --- a/fs/bcachefs/move.c +++ b/fs/bcachefs/move.c @@ -583,7 +583,6 @@ static int __bch2_move_data(struct moving_context *ctxt, */ bch2_bkey_buf_reassemble(&sk, c, k); k = bkey_i_to_s_c(sk.k); - bch2_trans_unlock(&trans); ret2 = bch2_move_extent(&trans, &iter, ctxt, NULL, io_opts, btree_id, k, data_opts);