/linux/Documentation/core-api/ |
H A D | pin_user_pages.rst | 21 FOLL_PIN and FOLL_LONGTERM are flags that can be passed to the get_user_pages*() 23 interdependencies with FOLL_LONGTERM, so both are covered here. 30 FOLL_LONGTERM, on the other hand, *is* allowed to be set at the gup call sites. 32 all combinations of get*(), pin*(), FOLL_LONGTERM, and more. Also, the 47 FOLL_PIN is a prerequisite to FOLL_LONGTERM. Another way of saying that is, 48 FOLL_LONGTERM is a specific case, more restrictive case of FOLL_PIN. 125 FOLL_PIN, FOLL_GET, FOLL_LONGTERM: when to use which flags 150 FOLL_PIN | FOLL_LONGTERM 216 Another way of thinking about FOLL_GET, FOLL_PIN, and FOLL_LONGTERM 223 a "more severe" form of pinning. And finally, FOLL_LONGTERM is an even more
|
/linux/mm/ |
H A D | gup.c | 557 if (unlikely((flags & FOLL_LONGTERM) && in try_grab_folio_fast() 1250 if ((gup_flags & (FOLL_PIN | FOLL_LONGTERM)) != in writable_file_mapping_allowed() 1251 (FOLL_PIN | FOLL_LONGTERM)) in writable_file_mapping_allowed() 1274 if ((gup_flags & FOLL_LONGTERM) && vma_is_fsdax(vma)) in check_vma_flags() 2484 if (!(gup_flags & FOLL_LONGTERM)) in __gup_longterm_locked() 2539 if (WARN_ON_ONCE(!(gup_flags & FOLL_PIN) && (gup_flags & FOLL_LONGTERM))) in is_valid_gup_args() 2547 if (WARN_ON_ONCE((gup_flags & FOLL_LONGTERM) && in is_valid_gup_args() 2758 if ((flags & (FOLL_PIN | FOLL_LONGTERM | FOLL_WRITE)) == in gup_fast_folio_allowed() 2759 (FOLL_PIN | FOLL_LONGTERM | FOLL_WRITE)) in gup_fast_folio_allowed() 2879 if (unlikely(flags & FOLL_LONGTERM)) in gup_fast_pte_range() [all …]
|
H A D | gup_test.c | 154 gup->gup_flags | FOLL_LONGTERM, in __gup_test_ioctl() 225 int gup_flags = FOLL_LONGTERM; in pin_longterm_test_start()
|
H A D | internal.h | 1295 if (!(flags & FOLL_LONGTERM)) in gup_must_unshare()
|
/linux/drivers/infiniband/hw/hfi1/ |
H A D | user_pages.c | 84 unsigned int gup_flags = FOLL_LONGTERM | (writable ? FOLL_WRITE : 0); in hfi1_acquire_user_pages()
|
/linux/drivers/infiniband/hw/qib/ |
H A D | qib_user_pages.c | 113 FOLL_LONGTERM | FOLL_WRITE, in qib_get_user_pages()
|
H A D | qib_user_sdma.c | 668 ret = pin_user_pages_fast(addr, j, FOLL_LONGTERM, pages); in qib_user_sdma_pin_pages()
|
/linux/drivers/media/common/videobuf2/ |
H A D | frame_vector.c | 44 unsigned int gup_flags = FOLL_LONGTERM; in get_vaddr_frames()
|
/linux/drivers/gpu/drm/vmwgfx/ |
H A D | vmwgfx_msg.c | 1023 nr_pinned_stat = pin_user_pages_fast(arg->stat, num_pages_stat, FOLL_LONGTERM, pages_stat); in vmw_mksstat_add_ioctl() 1030 nr_pinned_info = pin_user_pages_fast(arg->info, num_pages_info, FOLL_LONGTERM, pages_info); in vmw_mksstat_add_ioctl() 1037 nr_pinned_strs = pin_user_pages_fast(arg->strs, num_pages_strs, FOLL_LONGTERM, pages_strs); in vmw_mksstat_add_ioctl()
|
/linux/drivers/infiniband/core/ |
H A D | umem.c | 154 unsigned int gup_flags = FOLL_LONGTERM; in ib_umem_get()
|
/linux/net/xdp/ |
H A D | xdp_umem.c | 106 gup_flags | FOLL_LONGTERM, &umem->pgs[0]); in xdp_umem_pin_pages()
|
/linux/arch/s390/kvm/ |
H A D | pci.c | 253 npages = pin_user_pages_fast(hva, 1, FOLL_WRITE | FOLL_LONGTERM, pages); in kvm_s390_pci_aif_enable() 268 npages = pin_user_pages_fast(hva, 1, FOLL_WRITE | FOLL_LONGTERM, in kvm_s390_pci_aif_enable()
|
/linux/io_uring/ |
H A D | memmap.c | 148 ret = pin_user_pages_fast(uaddr, nr_pages, FOLL_WRITE | FOLL_LONGTERM, in io_pin_pages()
|
/linux/arch/powerpc/mm/book3s64/ |
H A D | iommu_api.c | 107 FOLL_WRITE | FOLL_LONGTERM, in mm_iommu_do_alloc()
|
/linux/drivers/virt/acrn/ |
H A D | mm.c | 243 nr_pages, FOLL_WRITE | FOLL_LONGTERM, in acrn_vm_ram_map()
|
H A D | hsm.c | 347 FOLL_WRITE | FOLL_LONGTERM, &page); in acrn_dev_ioctl()
|
H A D | ioreq.c | 610 FOLL_WRITE | FOLL_LONGTERM, &page); in acrn_ioreq_init()
|
/linux/drivers/infiniband/hw/usnic/ |
H A D | usnic_uiom.c | 88 unsigned int gup_flags = FOLL_LONGTERM; in usnic_uiom_get_pages()
|
/linux/include/linux/ |
H A D | mm_types.h | 1482 FOLL_LONGTERM = 1 << 8, enumerator
|
/linux/drivers/gpu/drm/etnaviv/ |
H A D | etnaviv_gem.c | 646 unsigned int gup_flags = FOLL_LONGTERM; in etnaviv_gem_userptr_get_pages()
|
/linux/tools/testing/selftests/mm/ |
H A D | hmm-tests.c | 65 #ifndef FOLL_LONGTERM 66 #define FOLL_LONGTERM 0x100 /* mapping lifetime is indefinite */ macro 1950 PIN_FAST_BENCHMARK, 1, self->page_size, FOLL_LONGTERM), 0); in TEST_F()
|
/linux/drivers/infiniband/hw/mthca/ |
H A D | mthca_memfree.c | 476 FOLL_WRITE | FOLL_LONGTERM, pages); in mthca_map_user_db()
|
/linux/net/rds/ |
H A D | rdma.c | 157 unsigned int gup_flags = FOLL_LONGTERM; in rds_pin_pages()
|
/linux/drivers/gpu/drm/exynos/ |
H A D | exynos_drm_g2d.c | 480 FOLL_WRITE | FOLL_LONGTERM, in g2d_userptr_get_dma_addr()
|
/linux/drivers/iommu/iommufd/ |
H A D | pages.c | 716 user->gup_flags = FOLL_LONGTERM; in pfn_reader_user_init()
|