[lkml]   [2020]   [May]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH] staging: gasket: Convert get_user_pages*() --> pin_user_pages*()
On Thu, May 28, 2020 at 02:32:42AM +0530, Souptick Joarder wrote:
> This code was using get_user_pages_fast(), in a "Case 2" scenario
> (DMA/RDMA), using the categorization from [1]. That means that it's
> time to convert the get_user_pages_fast() + put_page() calls to
> pin_user_pages_fast() + unpin_user_page() calls.

You are saying that the page is used for DIO and not DMA, but it sure
looks to me like it is used for DMA.

503 /* Map the page into DMA space. */
504 ptes[i].dma_addr =
505 dma_map_page(pg_tbl->device, page, 0, PAGE_SIZE,

To be honest, that starting paragraph was confusing. At first I thought
you were saying gasket was an RDMA driver. :P I shouldn't have to read
a different document to understand the commit message. It should be
summarized enough and the other documentation is supplemental.

"In 2019 we introduced pin_user_pages() and now we are converting
get_user_pages() to the new API as appropriate".

> There is some helpful background in [2]: basically, this is a small
> part of fixing a long-standing disconnect between pinning pages, and
> file systems' use of those pages.

What is the impact of this patch on runtime?

> [1] Documentation/core-api/pin_user_pages.rst
> [2] "Explicit pinning of user-space pages":
> Signed-off-by: Souptick Joarder <>
> Cc: John Hubbard <>
> Hi,
> I'm compile tested this, but unable to run-time test, so any testing
> help is much appriciated.
> ---

The "Hi" part of patch should have been under the "---" cut off line so
this will definitely need to be resent.

dan carpenter

 \ /
  Last update: 2020-05-28 13:05    [W:0.124 / U:4.104 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site