From: Kent Overstreet Date: Fri, 15 May 2020 01:45:08 +0000 (-0400) Subject: bcachefs: Fix another iterator counting bug X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=0d0e77f45fe806a80af76501d5422437692e158b;p=linux.git bcachefs: Fix another iterator counting bug We were marking the end of where we could insert incorrectly for indirect extents. Signed-off-by: Kent Overstreet Signed-off-by: Kent Overstreet --- diff --git a/fs/bcachefs/extent_update.c b/fs/bcachefs/extent_update.c index d0af1bc17018a..fd011df3cb994 100644 --- a/fs/bcachefs/extent_update.c +++ b/fs/bcachefs/extent_update.c @@ -76,7 +76,8 @@ static int count_iters_for_insert(struct btree_trans *trans, if (*nr_iters >= max_iters) { struct bpos pos = bkey_start_pos(k.k); - pos.offset += r_k.k->p.offset - idx; + pos.offset += min_t(u64, k.k->size, + r_k.k->p.offset - idx); *end = bpos_min(*end, pos); ret = 1;