Re: [PATCH 02/10] aoe: use bvec_kmap_local in bvcpy

Ira Weiny
2022-03-01T00:31:51Z

On Tue, Feb 22, 2022 at 04:51:48PM +0100, Christoph Hellwig wrote:
> Using local kmaps slightly reduces the chances to stray writes, and
> the bvec interface cleans up the code a little bit.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> ---
> drivers/block/aoe/aoecmd.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/block/aoe/aoecmd.c b/drivers/block/aoe/aoecmd.c
> index cc11f89a0928f..093996961d452 100644
> --- a/drivers/block/aoe/aoecmd.c
> +++ b/drivers/block/aoe/aoecmd.c
> @@ -1018,7 +1018,7 @@ bvcpy(struct sk_buff *skb, struct bio *bio, struct bvec_iter iter, long cnt)
> iter.bi_size = cnt;
>
> __bio_for_each_segment(bv, bio, iter, iter) {
> - char *p = kmap_atomic(bv.bv_page) + bv.bv_offset;
> + char *p = bvec_kmap_local(&bv);
> skb_copy_bits(skb, soff, p, bv.bv_len);
> kunmap_atomic(p);

kunmap_local()

Ira

> soff += bv.bv_len;
> --
> 2.30.2
>
>