lkml.org 
[lkml]   [2021]   [Jun]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[RFC PATCH 33/37] copy_page_from_iter(): don't need kmap_atomic() for kvec/bvec cases
    Date
    kmap_local_page() is enough.

    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
    ---
    lib/iov_iter.c | 4 ++--
    1 file changed, 2 insertions(+), 2 deletions(-)

    diff --git a/lib/iov_iter.c b/lib/iov_iter.c
    index 4fcd0cc44e47..0a9e246178c1 100644
    --- a/lib/iov_iter.c
    +++ b/lib/iov_iter.c
    @@ -882,9 +882,9 @@ size_t copy_page_from_iter(struct page *page, size_t offset, size_t bytes,
    if (likely(iter_is_iovec(i)))
    return copy_page_from_iter_iovec(page, offset, bytes, i);
    if (iov_iter_is_bvec(i) || iov_iter_is_kvec(i) || iov_iter_is_xarray(i)) {
    - void *kaddr = kmap_atomic(page);
    + void *kaddr = kmap_local_page(page);
    size_t wanted = _copy_from_iter(kaddr + offset, bytes, i);
    - kunmap_atomic(kaddr);
    + kunmap_local(kaddr);
    return wanted;
    }
    WARN_ON(1);
    --
    2.11.0
    \
     
     \ /
      Last update: 2021-06-06 21:14    [W:4.399 / U:0.032 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site