diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2019-10-12 14:44:09 -0400 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@gmail.com> | 2019-10-12 14:44:24 -0400 |
commit | de906c3e2eddad291d46bd0e7c81c68eaadcd08a (patch) | |
tree | e635129affb28f5ebfbcdae0d9b7e5be1d672c8a | |
parent | 1e4d4f3695577e5c89ebf2164853e9db92f12ae8 (diff) |
bcachefs: Fix iterator counting for reflink pointers (again)
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
-rw-r--r-- | fs/bcachefs/extents.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/bcachefs/extents.c b/fs/bcachefs/extents.c index dcd70994e14b..b1f9269a54e3 100644 --- a/fs/bcachefs/extents.c +++ b/fs/bcachefs/extents.c @@ -960,7 +960,8 @@ static int count_iters_for_insert(struct btree_trans *trans, case KEY_TYPE_reflink_p: { struct bkey_s_c_reflink_p p = bkey_s_c_to_reflink_p(k); u64 idx = le64_to_cpu(p.v->idx); - unsigned sectors = end->offset - bkey_start_offset(p.k); + unsigned sectors = bpos_min(*end, p.k->p).offset - + bkey_start_offset(p.k); struct btree_iter *iter; struct bkey_s_c r_k; |