Re: [PATCH 03/10] zram: use memcpy_to_bvec in zram_bvec_read

Ira Weiny
2022-03-01T01:10:13Z

On Tue, Feb 22, 2022 at 04:51:49PM +0100, Christoph Hellwig wrote:
> Use the proper helper instead of open coding the copy.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>

Looks fine but I don't see a reason to keep the other operation atomic. Could
the src map also use kmap_local_page()?

Reviewed-by: Ira Weiny <ira.weiny@intel.com>

> ---
> drivers/block/zram/zram_drv.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/drivers/block/zram/zram_drv.c b/drivers/block/zram/zram_drv.c
> index a3a5e1e713268..14becdf2815df 100644
> --- a/drivers/block/zram/zram_drv.c
> +++ b/drivers/block/zram/zram_drv.c
> @@ -1331,12 +1331,10 @@ static int zram_bvec_read(struct zram *zram, struct bio_vec *bvec,
> goto out;
>
> if (is_partial_io(bvec)) {
> - void *dst = kmap_atomic(bvec->bv_page);
> void *src = kmap_atomic(page);
>
> - memcpy(dst + bvec->bv_offset, src + offset, bvec->bv_len);
> + memcpy_to_bvec(bvec, src + offset);
> kunmap_atomic(src);
> - kunmap_atomic(dst);
> }
> out:
> if (is_partial_io(bvec))
> --
> 2.30.2
>
>