Re: [PATCH v4 23/23] mm/gup: remove support for gup(FOLL_LONGTERM)

From: John Hubbard
Date: Wed Nov 13 2019 - 18:29:51 EST


On 11/13/19 11:09 AM, Ira Weiny wrote:
...
diff --git a/mm/gup.c b/mm/gup.c
index 82e7e4ce5027..90f5f95ee7ac 100644
--- a/mm/gup.c
+++ b/mm/gup.c
@@ -1756,11 +1756,11 @@ long get_user_pages(unsigned long start, unsigned long nr_pages,
struct vm_area_struct **vmas)
{
/*
- * FOLL_PIN must only be set internally by the pin_user_page*() and
- * pin_longterm_*() APIs, never directly by the caller, so enforce that
- * with an assertion:
+ * FOLL_PIN and FOLL_LONGTERM must only be set internally by the
+ * pin_user_page*() and pin_longterm_*() APIs, never directly by the
+ * caller, so enforce that with an assertion:
*/
- if (WARN_ON_ONCE(gup_flags & FOLL_PIN))
+ if (WARN_ON_ONCE(gup_flags & (FOLL_PIN | FOLL_LONGTERM)))

Don't we want to block FOLL_LONGTERM in get_user_pages_fast() as well after all
this?


Yes. But with the latest idea to restore FOLL_LONGTERM to its original glory,
that won't be an issue in the next version. heh.


thanks,
--
John Hubbard
NVIDIA