From fa4dc3987b8e75ec1bfd327bb05755d153c276d6 Mon Sep 17 00:00:00 2001 From: Kent Overstreet Date: Sat, 21 Mar 2020 14:08:01 -0400 Subject: [PATCH] bcachefs: Fix count_iters_for_insert() This fixes a transaction iterator overflow. Signed-off-by: Kent Overstreet Signed-off-by: Kent Overstreet --- fs/bcachefs/extent_update.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/fs/bcachefs/extent_update.c b/fs/bcachefs/extent_update.c index beb3b694e33c2..8e5070d5a39b4 100644 --- a/fs/bcachefs/extent_update.c +++ b/fs/bcachefs/extent_update.c @@ -44,6 +44,10 @@ static int count_iters_for_insert(struct btree_trans *trans, * extent we're inserting and overwriting: */ *nr_iters += 1; + if (*nr_iters >= max_iters) { + *end = bpos_min(*end, k.k->p); + ret = 1; + } switch (k.k->type) { case KEY_TYPE_extent: -- 2.30.2