Lines Matching refs:FOLL_PIN

99  * FOLL_PIN or FOLL_GET behavior, when incrementing the page's refcount.
101 * Either FOLL_PIN or FOLL_GET (or neither) must be set, but not both at the
106 * FOLL_PIN: page's refcount will be incremented by GUP_PIN_COUNTING_BIAS.
109 * NULL upon failure. If neither FOLL_GET nor FOLL_PIN was set, that's
119 else if (flags & FOLL_PIN) {
123 * Can't do FOLL_LONGTERM + FOLL_PIN with CMA in the gup fast
163 if (flags & FOLL_PIN) {
182 * FOLL_PIN or FOLL_GET behavior, when incrementing the page's refcount.
187 * Either FOLL_PIN or FOLL_GET (or neither) may be set, but not both at the same
191 * FOLL_PIN: page's refcount will be incremented by GUP_PIN_COUNTING_BIAS.
193 * Return: true for success, or if no action was required (if neither FOLL_PIN
195 * FOLL_PIN was set, but the page could not be grabbed.
199 WARN_ON_ONCE((flags & (FOLL_GET | FOLL_PIN)) == (FOLL_GET | FOLL_PIN));
203 else if (flags & FOLL_PIN) {
241 put_compound_head(compound_head(page), 1, FOLL_PIN);
404 /* FOLL_GET and FOLL_PIN are mutually exclusive. */
405 if (WARN_ON_ONCE((flags & (FOLL_PIN | FOLL_GET)) ==
406 (FOLL_PIN | FOLL_GET)))
452 if (!page && pte_devmap(pte) && (flags & (FOLL_GET | FOLL_PIN))) {
454 * Only return device mapping pages in the FOLL_GET or FOLL_PIN
491 /* try_grab_page() does nothing unless FOLL_GET or FOLL_PIN is set. */
498 * to access its content (the FOLL_PIN case). Please see
501 if (flags & FOLL_PIN) {
769 WARN_ON_ONCE(flags & (FOLL_GET | FOLL_PIN));
1041 VM_BUG_ON(!!pages != !!(gup_flags & (FOLL_GET | FOLL_PIN)));
1271 if (flags & FOLL_PIN)
1275 * FOLL_PIN and FOLL_GET are mutually exclusive. Traditional behavior
1278 * for FOLL_GET, not for the newer FOLL_PIN.
1280 * FOLL_PIN always expects pages to be non-null, but no need to assert
1283 if (pages && !(flags & FOLL_PIN))
1662 if (gup_flags & FOLL_PIN)
1740 if (gup_flags & FOLL_PIN)
1775 * FOLL_PIN must only be set internally by the pin_user_pages*() APIs,
1778 if (WARN_ON_ONCE(gup_flags & FOLL_PIN))
1781 * FOLL_PIN is a prerequisite to FOLL_LONGTERM. Another way of saying
1783 * FOLL_PIN.
1985 * FOLL_PIN must only be set internally by the pin_user_pages*() APIs,
1988 if (WARN_ON_ONCE(gup_flags & FOLL_PIN))
2135 if (flags & FOLL_PIN)
2214 * going to access its content (the FOLL_PIN case). Please
2218 if (flags & FOLL_PIN) {
2698 if (gup_flags & FOLL_PIN) {
2723 if (gup_flags & FOLL_PIN) {
2742 FOLL_FORCE | FOLL_PIN | FOLL_GET |
2746 if (gup_flags & FOLL_PIN)
2871 * Nearly the same as get_user_pages_fast(), except that FOLL_PIN is set. See
2875 * FOLL_PIN means that the pages must be released via unpin_user_page(). Please
2881 /* FOLL_GET and FOLL_PIN are mutually exclusive. */
2885 gup_flags |= FOLL_PIN;
2891 * This is the FOLL_PIN equivalent of get_user_pages_fast_only(). Behavior
2892 * is the same, except that this one sets FOLL_PIN instead of FOLL_GET.
2902 * FOLL_GET and FOLL_PIN are mutually exclusive. Note that the API
2911 gup_flags |= (FOLL_PIN | FOLL_FAST_ONLY);
2942 * Nearly the same as get_user_pages_remote(), except that FOLL_PIN is set. See
2946 * FOLL_PIN means that the pages must be released via unpin_user_page(). Please
2954 /* FOLL_GET and FOLL_PIN are mutually exclusive. */
2958 gup_flags |= FOLL_PIN;
2977 * FOLL_PIN is set.
2979 * FOLL_PIN means that the pages must be released via unpin_user_page(). Please
2986 /* FOLL_GET and FOLL_PIN are mutually exclusive. */
2990 gup_flags |= FOLL_PIN;
2997 * pin_user_pages_unlocked() is the FOLL_PIN variant of
2999 * FOLL_PIN and rejects FOLL_GET.
3004 /* FOLL_GET and FOLL_PIN are mutually exclusive. */
3008 gup_flags |= FOLL_PIN;
3014 * pin_user_pages_locked() is the FOLL_PIN variant of get_user_pages_locked().
3015 * Behavior is the same, except that this one sets FOLL_PIN and rejects
3031 /* FOLL_GET and FOLL_PIN are mutually exclusive. */
3035 gup_flags |= FOLL_PIN;