bcachefs: Don't unlink iters on unsuccessful commit
authorKent Overstreet <kent.overstreet@gmail.com>
Thu, 18 Jul 2019 21:32:20 +0000 (17:32 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 22 Oct 2023 21:08:24 +0000 (17:08 -0400)
Where unlink_on_commit is used, on unsuccessfull commit we're likely
retrying the whole update and were going to be using the same iterators
again.

The management of multiple iterators needs to be gone over a fair bit
more at some point...

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/btree_update_leaf.c

index 4461e42f2367a1630975c6212da357833122fe18..b878f9a9882cb6c4cd9127355d6776d716c6251b 100644 (file)
@@ -923,8 +923,6 @@ out_noupdates:
                bch2_trans_unlink_iters(trans, ~trans->iters_touched|
                                        trans->iters_unlink_on_commit);
                trans->iters_touched = 0;
-       } else {
-               bch2_trans_unlink_iters(trans, trans->iters_unlink_on_commit);
        }
        trans->nr_updates       = 0;
        trans->mem_top          = 0;