Home
last modified time | relevance | path

Searched refs:FOLL_PIN (Results 1 - 7 of 7) sorted by relevance

/kernel/linux/linux-6.6/mm/
H A Dgup.c107 * FOLL_PIN or FOLL_GET behavior, when incrementing the folio's refcount.
109 * Either FOLL_PIN or FOLL_GET (or neither) must be set, but not both at the
115 * FOLL_PIN on large folios: folio's refcount will be incremented by
118 * FOLL_PIN on single-page folios: folio's refcount will be incremented by
123 * nor FOLL_PIN was set, that's considered failure, and furthermore,
130 if (WARN_ON_ONCE((flags & (FOLL_GET | FOLL_PIN)) == 0)) in try_grab_folio()
139 /* FOLL_PIN is set */ in try_grab_folio()
153 * Can't do FOLL_LONGTERM + FOLL_PIN gup fast path if not in a in try_grab_folio()
191 if (flags & FOLL_PIN) { in gup_put_folio()
213 * FOLL_PIN o
275 gup_put_folio(page_folio(page), 1, FOLL_PIN); unpin_user_page() local
[all...]
H A Dinternal.h1101 FOLL_PIN = 1 << 19, enumerator
1136 if ((flags & (FOLL_WRITE | FOLL_PIN)) != FOLL_PIN) in gup_must_unshare()
H A Dhuge_memory.c1047 if (!(flags & (FOLL_GET | FOLL_PIN))) in follow_devmap_pmd()
1202 * At least one of FOLL_GET | FOLL_PIN must be set, so assert that here: in follow_devmap_pud()
1204 if (!(flags & (FOLL_GET | FOLL_PIN))) in follow_devmap_pud()
1471 VM_BUG_ON_PAGE((flags & FOLL_PIN) && PageAnon(page) && in follow_trans_huge_pmd()
/kernel/linux/linux-5.10/mm/
H A Dgup.c99 * 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) { in try_grab_compound_head()
123 * Can't do FOLL_LONGTERM + FOLL_PIN with CMA in the gup fast in try_grab_compound_head()
163 if (flags & FOLL_PIN) { in put_compound_head()
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
241 put_compound_head(compound_head(page), 1, FOLL_PIN); unpin_user_page() local
[all...]
H A Dhuge_memory.c979 /* FOLL_GET and FOLL_PIN are mutually exclusive. */ in follow_devmap_pmd()
980 if (WARN_ON_ONCE((flags & (FOLL_PIN | FOLL_GET)) == in follow_devmap_pmd()
981 (FOLL_PIN | FOLL_GET))) in follow_devmap_pmd()
999 if (!(flags & (FOLL_GET | FOLL_PIN))) in follow_devmap_pmd()
1148 /* FOLL_GET and FOLL_PIN are mutually exclusive. */ in follow_devmap_pud()
1149 if (WARN_ON_ONCE((flags & (FOLL_PIN | FOLL_GET)) == in follow_devmap_pud()
1150 (FOLL_PIN | FOLL_GET))) in follow_devmap_pud()
1165 * At least one of FOLL_GET | FOLL_PIN must be set, so assert that here: in follow_devmap_pud()
1167 if (!(flags & (FOLL_GET | FOLL_PIN))) in follow_devmap_pud()
H A Dhugetlb.c5615 /* FOLL_GET and FOLL_PIN are mutually exclusive. */ in follow_huge_pmd_pte()
5616 if (WARN_ON_ONCE((flags & (FOLL_PIN | FOLL_GET)) == in follow_huge_pmd_pte()
5617 (FOLL_PIN | FOLL_GET))) in follow_huge_pmd_pte()
5662 if (flags & (FOLL_GET | FOLL_PIN)) in follow_huge_pud()
5671 if (flags & (FOLL_GET | FOLL_PIN)) in follow_huge_pgd()
/kernel/linux/linux-5.10/include/linux/
H A Dmm.h2865 #define FOLL_PIN 0x40000 /* pages must be released via unpin_user_page */ macro
2869 * FOLL_PIN and FOLL_LONGTERM may be used in various combinations with each
2895 * FOLL_PIN indicates that a special kind of tracking (not just page->_refcount,
2900 * are released via put_page()), FOLL_PIN pages must be released, ultimately, by
2903 * FOLL_PIN is similar to FOLL_GET: both of these pin pages. They use different
2909 * FOLL_PIN: pin_user_pages*() to acquire, and unpin_user_pages to release.
2911 * FOLL_PIN and FOLL_GET are mutually exclusive for a given function call.
2912 * (The underlying pages may experience both FOLL_GET-based and FOLL_PIN-based
2916 * FOLL_PIN should be set internally by the pin_user_pages*() APIs, never

Completed in 28 milliseconds