On Thu, 2019-08-01 at 19:19 -0700, john.hubbard@xxxxxxxxx wrote: > From: John Hubbard <jhubbard@xxxxxxxxxx> > > 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: Ilya Dryomov <idryomov@xxxxxxxxx> > Cc: Sage Weil <sage@xxxxxxxxxx> > Cc: David S. Miller <davem@xxxxxxxxxxxxx> > Cc: ceph-devel@xxxxxxxxxxxxxxx > Cc: netdev@xxxxxxxxxxxxxxx > Signed-off-by: John Hubbard <jhubbard@xxxxxxxxxx> > --- > net/ceph/pagevec.c | 8 +------- > 1 file changed, 1 insertion(+), 7 deletions(-) > > diff --git a/net/ceph/pagevec.c b/net/ceph/pagevec.c > index 64305e7056a1..c88fff2ab9bd 100644 > --- a/net/ceph/pagevec.c > +++ b/net/ceph/pagevec.c > @@ -12,13 +12,7 @@ > > void ceph_put_page_vector(struct page **pages, int num_pages, bool dirty) > { > - int i; > - > - for (i = 0; i < num_pages; i++) { > - if (dirty) > - set_page_dirty_lock(pages[i]); > - put_page(pages[i]); > - } > + put_user_pages_dirty_lock(pages, num_pages, dirty); > kvfree(pages); > } > EXPORT_SYMBOL(ceph_put_page_vector); This patch looks sane enough. Assuming that the earlier patches are OK: Acked-by: Jeff Layton <jlayton@xxxxxxxxxx>