diff mbox series

block: take offset into account in blk_bvec_map_sg again

Message ID 20240709070126.3019940-1-hch@lst.de (mailing list archive)
State New, archived
Headers show
Series block: take offset into account in blk_bvec_map_sg again | expand

Commit Message

Christoph Hellwig July 9, 2024, 7:01 a.m. UTC
The rebase of commit 09595e0c9d65 ("block: pass a phys_addr_t to
get_max_segment_size") lost adding the total to to the offset in
blk_bvec_map_sg.  Add it back.

Fixes: 09595e0c9d65 ("block: pass a phys_addr_t to get_max_segment_size")
Reported-by: Yi Zhang <yi.zhang@redhat.com>
Reported-by: Chaitanya Kulkarni <chaitanyak@nvidia.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
 block/blk-merge.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Jens Axboe July 9, 2024, 7:03 a.m. UTC | #1
On Tue, 09 Jul 2024 09:01:25 +0200, Christoph Hellwig wrote:
> The rebase of commit 09595e0c9d65 ("block: pass a phys_addr_t to
> get_max_segment_size") lost adding the total to to the offset in
> blk_bvec_map_sg.  Add it back.
> 
> 

Applied, thanks!

[1/1] block: take offset into account in blk_bvec_map_sg again
      commit: 61353a63a22890f2c642232ae1ab4a2e02e6a27c

Best regards,
Geert Uytterhoeven July 10, 2024, 7:05 a.m. UTC | #2
On Tue, 9 Jul 2024, Christoph Hellwig wrote:
> The rebase of commit 09595e0c9d65 ("block: pass a phys_addr_t to
> get_max_segment_size") lost adding the total to to the offset in
> blk_bvec_map_sg.  Add it back.
>
> Fixes: 09595e0c9d65 ("block: pass a phys_addr_t to get_max_segment_size")
> Reported-by: Yi Zhang <yi.zhang@redhat.com>
> Reported-by: Chaitanya Kulkarni <chaitanyak@nvidia.com>
> Signed-off-by: Christoph Hellwig <hch@lst.de>

Thanks, that fixes booting landisk!

Tested-by: Geert Uytterhoeven <geert+renesas@glider.be>

Gr{oetje,eeting}s,

 						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
 							    -- Linus Torvalds
diff mbox series

Patch

diff --git a/block/blk-merge.c b/block/blk-merge.c
index e41ea331809936..048d07a5091f79 100644
--- a/block/blk-merge.c
+++ b/block/blk-merge.c
@@ -491,8 +491,8 @@  static unsigned blk_bvec_map_sg(struct request_queue *q,
 
 	while (nbytes > 0) {
 		unsigned offset = bvec->bv_offset + total;
-		unsigned len = get_max_segment_size(&q->limits, bvec_phys(bvec),
-			nbytes);
+		unsigned len = get_max_segment_size(&q->limits,
+				bvec_phys(bvec) + total, nbytes);
 		struct page *page = bvec->bv_page;
 
 		/*