[PATCH 12/16] block: use memcpy_to_bvec in copy_to_high_bio_irq

From: Christoph Hellwig
Date: Tue Jun 08 2021 - 12:08:03 EST


Use memcpy_to_bvec instead of opencoding the logic.

Signed-off-by: Christoph Hellwig <hch@xxxxxx>
---
block/bounce.c | 14 +-------------
1 file changed, 1 insertion(+), 13 deletions(-)

diff --git a/block/bounce.c b/block/bounce.c
index 94081e013c58..a2fc6326b6c9 100644
--- a/block/bounce.c
+++ b/block/bounce.c
@@ -67,18 +67,6 @@ static __init int init_emergency_pool(void)

__initcall(init_emergency_pool);

-/*
- * highmem version, map in to vec
- */
-static void bounce_copy_vec(struct bio_vec *to, unsigned char *vfrom)
-{
- unsigned char *vto;
-
- vto = kmap_atomic(to->bv_page);
- memcpy(vto + to->bv_offset, vfrom, to->bv_len);
- kunmap_atomic(vto);
-}
-
/*
* Simple bounce buffer support for highmem pages. Depending on the
* queue gfp mask set, *to may or may not be a highmem page. kmap it
@@ -107,7 +95,7 @@ static void copy_to_high_bio_irq(struct bio *to, struct bio *from)
vfrom = page_address(fromvec.bv_page) +
tovec.bv_offset;

- bounce_copy_vec(&tovec, vfrom);
+ memcpy_to_bvec(&tovec, vfrom);
flush_dcache_page(tovec.bv_page);
}
bio_advance_iter(from, &from_iter, tovec.bv_len);
--
2.30.2