|
@@ -858,14 +858,12 @@ long get_user_pages_locked(unsigned long start, unsigned long nr_pages,
|
|
EXPORT_SYMBOL(get_user_pages_locked);
|
|
EXPORT_SYMBOL(get_user_pages_locked);
|
|
|
|
|
|
/*
|
|
/*
|
|
- * Same as get_user_pages_unlocked(...., FOLL_TOUCH) but it allows to
|
|
|
|
- * pass additional gup_flags as last parameter (like FOLL_HWPOISON).
|
|
|
|
|
|
+ * Same as get_user_pages_unlocked(...., FOLL_TOUCH) but it allows for
|
|
|
|
+ * tsk, mm to be specified.
|
|
*
|
|
*
|
|
* NOTE: here FOLL_TOUCH is not set implicitly and must be set by the
|
|
* NOTE: here FOLL_TOUCH is not set implicitly and must be set by the
|
|
- * caller if required (just like with __get_user_pages). "FOLL_GET",
|
|
|
|
- * "FOLL_WRITE" and "FOLL_FORCE" are set implicitly as needed
|
|
|
|
- * according to the parameters "pages", "write", "force"
|
|
|
|
- * respectively.
|
|
|
|
|
|
+ * caller if required (just like with __get_user_pages). "FOLL_GET"
|
|
|
|
+ * is set implicitly if "pages" is non-NULL.
|
|
*/
|
|
*/
|
|
__always_inline long __get_user_pages_unlocked(struct task_struct *tsk, struct mm_struct *mm,
|
|
__always_inline long __get_user_pages_unlocked(struct task_struct *tsk, struct mm_struct *mm,
|
|
unsigned long start, unsigned long nr_pages,
|
|
unsigned long start, unsigned long nr_pages,
|
|
@@ -895,10 +893,8 @@ EXPORT_SYMBOL(__get_user_pages_unlocked);
|
|
* get_user_pages_unlocked(tsk, mm, ..., pages);
|
|
* get_user_pages_unlocked(tsk, mm, ..., pages);
|
|
*
|
|
*
|
|
* It is functionally equivalent to get_user_pages_fast so
|
|
* It is functionally equivalent to get_user_pages_fast so
|
|
- * get_user_pages_fast should be used instead, if the two parameters
|
|
|
|
- * "tsk" and "mm" are respectively equal to current and current->mm,
|
|
|
|
- * or if "force" shall be set to 1 (get_user_pages_fast misses the
|
|
|
|
- * "force" parameter).
|
|
|
|
|
|
+ * get_user_pages_fast should be used instead if specific gup_flags
|
|
|
|
+ * (e.g. FOLL_FORCE) are not required.
|
|
*/
|
|
*/
|
|
long get_user_pages_unlocked(unsigned long start, unsigned long nr_pages,
|
|
long get_user_pages_unlocked(unsigned long start, unsigned long nr_pages,
|
|
struct page **pages, unsigned int gup_flags)
|
|
struct page **pages, unsigned int gup_flags)
|