summaryrefslogtreecommitdiff
path: root/fs
diff options
context:
space:
mode:
authorBrian Foster <bfoster@redhat.com>2024-01-15 14:21:15 -0500
committerKent Overstreet <kent.overstreet@linux.dev>2025-04-24 19:10:28 -0400
commitd020a9fb11bd85f4f16392e2a44c46ae9778b3ee (patch)
treefbca1d34f9b25c4051d56c0673d59f4ac285be61 /fs
parent28d2d19ccc8e36dacdd65303b051972926943394 (diff)
bcachefs: track current fiemap offset in start variable
Signed-off-by: Brian Foster <bfoster@redhat.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/bcachefs/fs.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/bcachefs/fs.c b/fs/bcachefs/fs.c
index 59d919aeda74..dabec16f2639 100644
--- a/fs/bcachefs/fs.c
+++ b/fs/bcachefs/fs.c
@@ -1387,6 +1387,7 @@ static int bch2_fiemap(struct inode *vinode, struct fiemap_extent_info *info,
bch2_bkey_buf_realloc(&prev, c, k.k->u64s);
sectors = min_t(unsigned, sectors, k.k->size - offset_into_extent);
+ start = iter.pos.offset + sectors;
bch2_cut_front(POS(k.k->p.inode,
bkey_start_offset(k.k) +
@@ -1407,8 +1408,7 @@ static int bch2_fiemap(struct inode *vinode, struct fiemap_extent_info *info,
bkey_copy(prev.k, cur.k);
have_extent = true;
- bch2_btree_iter_set_pos(trans, &iter,
- POS(iter.pos.inode, iter.pos.offset + sectors));
+ bch2_btree_iter_set_pos(trans, &iter, POS(iter.pos.inode, start));
}
bch2_trans_iter_exit(trans, &iter);