On 2019-07-30 22:57, [email protected] wrote:
From: John Hubbard <[email protected]>

For pages that were retained via get_user_pages*(), release those pages
via the new put_user_page*() routines, instead of via put_page() or
release_pages().

This is part a tree-wide conversion, as described in commit fc1d8e7cca2d
("mm: introduce put_user_page*(), placeholder versions").

Cc: Björn Töpel <[email protected]>
Cc: Magnus Karlsson <[email protected]>
Cc: David S. Miller <[email protected]>
Cc: [email protected]
Signed-off-by: John Hubbard <[email protected]>

Acked-by: Björn Töpel <[email protected]>

---
  net/xdp/xdp_umem.c | 9 +--------
  1 file changed, 1 insertion(+), 8 deletions(-)

diff --git a/net/xdp/xdp_umem.c b/net/xdp/xdp_umem.c
index 83de74ca729a..17c4b3d3dc34 100644
--- a/net/xdp/xdp_umem.c
+++ b/net/xdp/xdp_umem.c
@@ -166,14 +166,7 @@ void xdp_umem_clear_dev(struct xdp_umem *umem)
static void xdp_umem_unpin_pages(struct xdp_umem *umem)
  {
-       unsigned int i;
-
-       for (i = 0; i < umem->npgs; i++) {
-               struct page *page = umem->pgs[i];
-
-               set_page_dirty_lock(page);
-               put_page(page);
-       }
+       put_user_pages_dirty_lock(umem->pgs, umem->npgs, true);
kfree(umem->pgs);
        umem->pgs = NULL;

Reply via email to