aboutsummaryrefslogtreecommitdiffstats
path: root/mm/gup.c
AgeCommit message (Expand)AuthorFilesLines
2022-12-17Merge tag 'x86_mm_for_6.2_v2' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-1/+1
2022-12-15Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvmLinus Torvalds1-4/+29
2022-12-15mm/gup: Fix the lockless PMD accessPeter Zijlstra1-1/+1
2022-12-13Merge tag 'mm-stable-2022-12-13' of git://git.kernel.org/pub/scm/linux/kernel...Linus Torvalds1-204/+51
2022-12-13Merge tag 'for-6.2/block-2022-12-08' of git://git.kernel.dk/linuxLinus Torvalds1-13/+32
2022-12-11mm/gup: remove FOLL_MIGRATIONDavid Hildenbrand1-50/+5
2022-12-09Merge branch 'mm-hotfixes-stable' into mm-stableAndrew Morton1-1/+1
2022-12-09mm/gup: fix gup_pud_range() for daxJohn Starks1-1/+1
2022-11-30mm/gup: disallow FOLL_FORCE|FOLL_WRITE on hugetlb mappingsDavid Hildenbrand1-0/+3
2022-11-30mm/gup: reliable R/O long-term pinning in COW mappingsDavid Hildenbrand1-5/+5
2022-11-30mm/gup: remove the restriction on locked with FOLL_LONGTERMJason Gunthorpe1-82/+27
2022-11-09mm: introduce FOLL_PCI_P2PDMA to gate getting PCI P2PDMA pagesLogan Gunthorpe1-1/+18
2022-11-09mm: allow multiple error returns in try_grab_page()Logan Gunthorpe1-12/+14
2022-11-09mm/gup: Add FOLL_INTERRUPTIBLEPeter Xu1-4/+29
2022-11-08hugetlb: simplify hugetlb handling in follow_page_maskMike Kravetz1-68/+12
2022-10-12Merge tag 'mm-hotfixes-stable-2022-10-11' of git://git.kernel.org/pub/scm/lin...Linus Torvalds1-1/+13
2022-10-11mm/hugetlb: fix races when looking up a CONT-PTE/PMD size hugetlb pageBaolin Wang1-1/+13
2022-09-26mm/gup: use gup_can_follow_protnone() also in GUP-fastDavid Hildenbrand1-11/+3
2022-09-26mm/gup: replace FOLL_NUMA by gup_can_follow_protnone()David Hildenbrand1-10/+2
2022-09-26mm/gup: use maple tree navigation instead of linked listLiam R. Howlett1-3/+4
2022-09-26Merge branch 'mm-hotfixes-stable' into mm-stableAndrew Morton1-6/+28
2022-09-26mm: gup: fix the fast GUP race against THP collapseYang Shi1-6/+28
2022-09-11mm: fix PageAnonExclusive clearing racing with concurrent RCU GUP-fastDavid Hildenbrand1-0/+7
2022-09-11mm/gup.c: refactor check_and_migrate_movable_pages()Alistair Popple1-68/+111
2022-09-11mm/gup.c: don't pass gup_flags to check_and_migrate_movable_pages()Alistair Popple1-14/+9
2022-09-11mm/gup.c: simplify and fix check_and_migrate_movable_pages() return codesAlistair Popple1-28/+32
2022-08-20mm/gup: fix FOLL_FORCE COW security issue and remove FOLL_COWDavid Hildenbrand1-22/+46
2022-08-05Merge tag 'mm-stable-2022-08-03' of git://git.kernel.org/pub/scm/linux/kernel...Linus Torvalds1-11/+79
2022-07-29mm/gup.c: fix formatting in check_and_migrate_movable_page()Alistair Popple1-2/+2
2022-07-18mm: fix missing wake-up event for FSDAX pagesMuchun Song1-2/+4
2022-07-17mm: gup: pass a pointer to virt_to_page()Linus Walleij1-1/+1
2022-07-17mm/gup: migrate device coherent pages when pinning instead of failingAlistair Popple1-7/+43
2022-07-17mm: rename is_pinnable_page() to is_longterm_pinnable_page()Alex Sierra1-2/+2
2022-07-03mm/migration: return errno when isolate_huge_page failedMiaohe Lin1-1/+1
2022-06-16mm: avoid unnecessary page fault retires on shared memory typesPeter Xu1-1/+33
2022-05-26Merge tag 'mm-stable-2022-05-25' of git://git.kernel.org/pub/scm/linux/kernel...Linus Torvalds1-8/+119
2022-05-09mm/gup: fix comments to pin_user_pages_*()Yury Norov1-4/+17
2022-05-09mm/gup: sanity-check with CONFIG_DEBUG_VM that anonymous pages are exclusive ...David Hildenbrand1-1/+60
2022-05-09mm/gup: trigger FAULT_FLAG_UNSHARE when R/O-pinning a possibly shared anonymo...David Hildenbrand1-3/+39
2022-05-09mm/gup: disallow follow_page(FOLL_PIN)David Hildenbrand1-0/+3
2022-04-25mm: Add fault_in_subpage_writeable() to probe at sub-page granularityCatalin Marinas1-0/+29
2022-04-01mm/munlock: add lru_add_drain() to fix memcg_stat_testHugh Dickins1-2/+8
2022-03-22Merge tag 'folio-5.18c' of git://git.infradead.org/users/willy/pagecacheLinus Torvalds1-281/+205
2022-03-22mm/gup: remove unused get_user_pages_locked()John Hubbard1-59/+0
2022-03-22mm/gup: remove unused pin_user_pages_locked()John Hubbard1-29/+0
2022-03-22mm/gup: follow_pfn_pte(): -EEXIST cleanupJohn Hubbard1-5/+8
2022-03-22mm: fix invalid page pointer returned with FOLL_PIN gupsPeter Xu1-1/+1
2022-03-21mm/gup: Convert check_and_migrate_movable_pages() to use a folioMatthew Wilcox (Oracle)1-13/+14
2022-03-21mm/gup: Turn compound_range_next() into gup_folio_range_next()Matthew Wilcox (Oracle)1-21/+17
2022-03-21mm/gup: Turn compound_next() into gup_folio_next()Matthew Wilcox (Oracle)1-19/+21
2022-03-21mm/gup: Convert gup_huge_pgd() to use a folioMatthew Wilcox (Oracle)1-11/+6
2022-03-21mm/gup: Convert gup_huge_pud() to use a folioMatthew Wilcox (Oracle)1-5/+6
2022-03-21mm/gup: Convert gup_huge_pmd() to use a folioMatthew Wilcox (Oracle)1-5/+6
2022-03-21mm/gup: Convert gup_hugepte() to use a folioMatthew Wilcox (Oracle)1-7/+7
2022-03-21mm/gup: Convert gup_pte_range() to use a folioMatthew Wilcox (Oracle)1-10/+8
2022-03-21mm/hugetlb: Use try_grab_folio() instead of try_grab_compound_head()Matthew Wilcox (Oracle)1-1/+1
2022-03-21mm/gup: Add gup_put_folio()Matthew Wilcox (Oracle)1-26/+12
2022-03-21mm/gup: Convert try_grab_page() to use a folioMatthew Wilcox (Oracle)1-15/+13
2022-03-21mm/gup: Add try_get_folio() and try_grab_folio()Matthew Wilcox (Oracle)1-50/+49
2022-03-21mm: Make compound_pincount always availableMatthew Wilcox (Oracle)1-11/+9
2022-03-21mm/gup: Remove hpage_pincount_sub()Matthew Wilcox (Oracle)1-10/+3
2022-03-21mm/gup: Remove hpage_pincount_add()Matthew Wilcox (Oracle)1-20/+11
2022-03-21mm/gup: Handle page split race more efficientlyMatthew Wilcox (Oracle)1-2/+5
2022-03-21mm/gup: Remove an assumption of a contiguous memmapMatthew Wilcox (Oracle)1-2/+2
2022-03-21mm/gup: Fix some contiguous memmap assumptionsMatthew Wilcox (Oracle)1-7/+7
2022-03-21mm/gup: Change the calling convention for compound_next()Matthew Wilcox (Oracle)1-6/+5
2022-03-21mm/gup: Optimise compound_range_next()Matthew Wilcox (Oracle)1-1/+1
2022-03-21mm/gup: Change the calling convention for compound_range_next()Matthew Wilcox (Oracle)1-6/+5
2022-03-21mm/gup: Remove for_each_compound_head()Matthew Wilcox (Oracle)1-11/+5
2022-03-21mm/gup: Remove for_each_compound_range()Matthew Wilcox (Oracle)1-10/+2
2022-03-21mm/gup: Increment the page refcount before the pincountMatthew Wilcox (Oracle)1-8/+6
2022-03-10mm: gup: make fault_in_safe_writeable() use fixup_user_fault()Linus Torvalds1-38/+19
2022-03-03mm: refactor check_and_migrate_movable_pagesChristoph Hellwig1-37/+44
2022-02-17mm/munlock: delete FOLL_MLOCK and FOLL_POPULATEHugh Dickins1-35/+8
2022-02-03Revert "mm/gup: small refactoring: simplify try_grab_page()"John Hubbard1-5/+30
2022-01-15mm/gup.c: stricter check on THP migration entry during follow_pmd_maskLi Xinhai1-4/+9
2022-01-15gup: avoid multiple user access locking/unlocking in fault_in_{read/write}ableChristophe Leroy1-8/+10
2021-11-06Merge branch 'akpm' (patches from Andrew)Linus Torvalds1-4/+1
2021-11-06mm/gup: further simplify __gup_device_huge()John Hubbard1-4/+1
2021-10-24gup: Introduce FOLL_NOFAULT flag to disable page faultsAndreas Gruenbacher1-1/+3
2021-10-20iov_iter: Introduce fault_in_iov_iter_writeableAndreas Gruenbacher1-0/+63
2021-10-18gup: Turn fault_in_pages_{readable,writeable} into fault_in_{readable,writeable}Andreas Gruenbacher1-0/+72
2021-09-07Revert "mm/gup: remove try_get_page(), call try_get_compound_head() directly"Linus Torvalds1-17/+4
2021-09-03mm/migrate: enable returning precise migrate_pages() success countYang Shi1-1/+1
2021-09-03mm/gup: remove try_get_page(), call try_get_compound_head() directlyJohn Hubbard1-4/+17
2021-09-03mm/gup: small refactoring: simplify try_grab_page()John Hubbard1-30/+5
2021-09-03mm/gup: documentation corrections for gup/pupJohn Hubbard1-7/+20
2021-09-03mm: gup: use helper PAGE_ALIGNED in populate_vma_page_range()Miaohe Lin1-2/+2
2021-09-03mm: gup: fix potential pgmap refcnt leak in __gup_device_huge()Miaohe Lin1-5/+7
2021-09-03mm: gup: remove useless BUG_ON in __get_user_pages()Miaohe Lin1-1/+0
2021-09-03mm: gup: remove unneed local variable orig_refsMiaohe Lin1-3/+1
2021-09-03mm: gup: remove set but unused local variable majorMiaohe Lin1-2/+1
2021-08-13mm/madvise: report SIGBUS as -EFAULT for MADV_POPULATE_(READ|WRITE)David Hildenbrand1-2/+5
2021-07-08mm: introduce memfd_secret system call to create "secret" memory areasMike Rapoport1-0/+12
2021-06-30mm/madvise: introduce MADV_POPULATE_(READ|WRITE) to prefault page tablesDavid Hildenbrand1-0/+58
2021-06-29mm: gup: pack has_pinned in MMF_HAS_PINNEDAndrea Arcangeli1-4/+15
2021-06-29mm: gup: allow FOLL_PIN to scale in SMPAndrea Arcangeli1-2/+2
2021-06-29mm/gup: fix try_grab_compound_head() race with split_huge_page()Jann Horn1-15/+43
2021-05-22Revert "mm/gup: check page posion status for coredump."Michal Hocko1-4/+0
2021-05-07mm: fix typos in commentsIngo Molnar1-1/+1
2021-05-05mm/gup: longterm pin migration cleanupPavel Tatashin1-56/+37
2021-05-05mm/gup: change index type to long as it counts pagesPavel Tatashin1-1/+1
2021-05-05mm/gup: migrate pinned pages out of movable zonePavel Tatashin1-33/+34
2021-05-05mm cma: rename PF_MEMALLOC_NOCMA to PF_MEMALLOC_PINPavel Tatashin1-2/+2
2021-05-05mm/gup: check for isolation errorsPavel Tatashin1-26/+34
2021-05-05mm/gup: return an error on migration failurePavel Tatashin1-10/+7
2021-05-05mm/gup: check every subpage of a compound page during isolationPavel Tatashin1-12/+7
2021-05-05mm/gup: don't pin migrated cma pages in movable zonePavel Tatashin1-1/+1
2021-04-30mm: gup: remove FOLL_SPLITYang Shi1-26/+2
2021-04-30mm/gup: add a range variant of unpin_user_pages_dirty_lock()Joao Martins1-0/+62
2021-04-30mm/gup: decrement head page once for group of subpagesJoao Martins1-18/+11
2021-04-30mm/gup: add compound page list iteratorJoao Martins1-0/+26
2021-04-09mm/gup: check page posion status for coredump.Aili Yao1-0/+4
2021-02-24mm/hugetlb: grab head page refcount once for group of subpagesJoao Martins1-3/+2
2020-12-15Merge branch 'akpm' (patches from Andrew)Linus Torvalds1-203/+123
2020-12-15mm: fix kernel-doc markupsMauro Carvalho Chehab1-11/+13
2020-12-15mm/gup: combine put_compound_head() and unpin_user_page()Jason Gunthorpe1-80/+23
2020-12-15mm/gup: remove the vma allocation from gup_longterm_locked()Jason Gunthorpe1-68/+15
2020-12-15mm/gup: prevent gup_fast from racing with COW during forkJason Gunthorpe1-0/+18
2020-12-15mm/gup: reorganize internal_get_user_pages_fast()Jason Gunthorpe1-45/+54
2020-12-03mm/gup: Provide gup_get_pte() more genericPeter Zijlstra1-57/+1
2020-11-14mm/gup: use unpin_user_pages() in __gup_longterm_locked()Jason Gunthorpe1-4/+10
2020-10-16mm/gup: take mmap_lock in get_dump_page()Jann Horn1-6/+10
2020-10-16binfmt_elf_fdpic: stop using dump_emit() on user pointers on !MMUJann Horn1-29/+28
2020-10-13mm/gup: protect unpin_user_pages() against npages==-ERRNOJohn Hubbard1-0/+7
2020-10-13mm/gup: don't permit users to call get_user_pages with FOLL_LONGTERMBarry Song1-15/+22
2020-09-28mm: do not rely on mm == current->mm in __get_user_pages_lockedJason A. Donenfeld1-1/+1
2020-09-27mm: Introduce mm_struct.has_pinnedPeter Xu1-0/+6
2020-09-26mm/gup: fix gup_fast with dynamic page table foldingVasily Gorbik1-9/+9
2020-09-04Merge branch 'simplify-do_wp_page'Linus Torvalds1-35/+5
2020-09-04mm/gup: Remove enfornced COW mechanismPeter Xu1-35/+5
2020-09-03Merge branch 'gate-page-refcount' (patches from Dave Hansen)Linus Torvalds1-1/+1
2020-09-03mm: fix pin vs. gup mismatch with gate pagesDave Hansen1-1/+1
2020-08-14mm: replace hpage_nr_pages with thp_nr_pagesMatthew Wilcox (Oracle)1-1/+1
2020-08-12mm/gup: remove task_struct pointer for all gup codePeter Xu1-59/+42
2020-08-12mm: clean up the last pieces of page fault accountingsPeter Xu1-13/+0
2020-08-12mm: do page fault accounting in handle_mm_faultPeter Xu1-2/+2
2020-08-12mm/gup: use a standard migration target allocation callbackJoonsoo Kim1-48/+6
2020-08-12mm/hugetlb: make hugetlb migration callback CMA awareJoonsoo Kim1-5/+1
2020-08-12mm/gup: restrict CMA region by using allocation scope APIJoonsoo Kim1-9/+8
2020-08-07mm/gup.c: fix the comment of return value for populate_vma_page_range()Tang Yizhou1-1/+2
2020-06-20mm: Allow arches to provide ptep_get()Christophe Leroy1-1/+1
2020-06-20mm/gup: Use huge_ptep_get() in gup_hugepte()Christophe Leroy1-1/+1
2020-06-09mmap locking API: convert mmap_sem commentsMichel Lespinasse1-19/+19
2020-06-09mmap locking API: convert mmap_sem API commentsMichel Lespinasse1-6/+6
2020-06-09mmap locking API: rename mmap_sem to mmap_lockMichel Lespinasse1-1/+1
2020-06-09mmap locking API: add mmap_assert_locked() and mmap_assert_write_locked()Michel Lespinasse1-1/+1
2020-06-09mmap locking API: use coccinelle to convert mmap_sem rwsem call sitesMichel Lespinasse1-9/+9
2020-06-09mm: don't include asm/pgtable.h if linux/mm.h is already includedMike Rapoport1-1/+0
2020-06-08mm/gup: documentation fix for pin_user_pages*() APIsJohn Hubbard1-9/+0
2020-06-08mm/gup: introduce pin_user_pages_locked()John Hubbard1-0/+35
2020-06-08mm/gup.c: convert to use get_user_{page|pages}_fast_only()Souptick Joarder1-13/+16
2020-06-03mm, mempolicy: fix up gup usage in lookup_nodeMichal Hocko1-0/+5
2020-06-03mm/gup: might_lock_read(mmap_sem) in get_user_pages_fast()John Hubbard1-0/+3
2020-06-03mm/gup: introduce pin_user_pages_fast_only()John Hubbard1-0/+36
2020-06-03mm/gup: refactor and de-duplicate gup_fast() codeJohn Hubbard1-41/+42
2020-06-03mm/gup: move __get_user_pages_fast() down a few lines in gup.cJohn Hubbard1-66/+66
2020-06-02Merge branch 'akpm' (patches from Andrew)Linus Torvalds1-19/+58
2020-06-02mm/gup.c: further document vma_permits_fault()Miles Chen1-1/+2
2020-06-02mm/gup: introduce pin_user_pages_unlockedJohn Hubbard1-0/+17
2020-06-02mm/gup.c: update the documentationSouptick Joarder1-18/+39
2020-06-02gup: document and work around "COW can break either way" issueLinus Torvalds1-6/+38
2020-06-01Merge tag 'docs-5.8' of git://git.lwn.net/linuxLinus Torvalds1-6/+6
2020-05-14mm/gup: fix fixup_user_fault() on multiple retriesPeter Xu1-5/+7
2020-04-21mm, gup: return EINTR when gup is interrupted by fatal signalsMichal Hocko1-1/+1
2020-04-20docs: fix broken references to text filesMauro Carvalho Chehab1-6/+6
2020-04-08mm/gup: Let __get_user_pages_locked() return -EINTR for fatal signalHillf Danton1-1/+4
2020-04-07mm/gup: Mark lock taken only after a successful retakePeter Xu1-1/+1
2020-04-07mm: use fallthrough;Joe Perches1-1/+1
2020-04-07mm: code cleanup for MADV_FREEHuang Ying1-1/+1
2020-04-07mm/vma: replace all remaining open encodings with vma_is_anonymous()Anshuman Khandual1-1/+2
2020-04-07mm/vma: make vma_is_accessible() available for general useAnshuman Khandual1-1/+1
2020-04-02mm/gup: allow to react to fatal signalsPeter Xu1-3/+9
2020-04-02mm/gup: allow VM_FAULT_RETRY for multiple timesPeter Xu1-6/+21
2020-04-02mm/gup: fix __get_user_pages() on fault retry of hugetlbPeter Xu1-0/+10
2020-04-02mm/gup: rename "nonblocking" to "locked" where properPeter Xu1-23/+21
2020-04-02mm/gup: fix omission of check on FOLL_LONGTERM in gup fast pathPingfan Liu1-0/+8
2020-04-02mm/gup: rename nr as nr_pinned in get_user_pages_fast()Pingfan Liu1-13/+13
2020-04-02mm/gup/writeback: add callbacks for inaccessible pagesClaudio Imbrenda1-3/+27
2020-04-02mm/gup: /proc/vmstat: pin_user_pages (FOLL_PIN) reportingJohn Hubbard1-0/+13
2020-04-02mm/gup: page->hpage_pinned_refcount: exact pin counts for huge pagesJohn Hubbard1-8/+70
2020-04-02mm/gup: track FOLL_PIN pagesJohn Hubbard1-62/+250
2020-04-02mm/gup: require FOLL_GET for get_user_pages_fast()John Hubbard1-2/+17
2020-04-02mm/gup: pass gup flags to two more routinesJohn Hubbard1-9/+10
2020-04-02mm/gup: pass a flags arg to __gup_device_* functionsJohn Hubbard1-10/+18
2020-04-02mm/gup: split get_user_pages_remote() into two routinesJohn Hubbard1-23/+33
2020-02-04asm-generic/tlb: rename HAVE_RCU_TABLE_FREEPeter Zijlstra1-1/+1
2020-01-31mm, tree-wide: rename put_user_page*() to unpin_user_page*()John Hubbard1-16/+16
2020-01-31mm/gup: introduce pin_user_pages*() and FOLL_PINJohn Hubbard1-21/+143
2020-01-31mm/gup: allow FOLL_FORCE for get_user_pages_fast()John Hubbard1-1/+2
2020-01-31mm: fix get_user_pages_remote()'s handling of FOLL_LONGTERMJohn Hubbard1-82/+92
2020-01-31mm/gup: move try_get_compound_head() to top, fix minor issuesJohn Hubbard1-14/+15
2020-01-31mm/gup: factor out duplicate code from four routinesJohn Hubbard1-55/+40
2020-01-31mm/gup.c: use is_vm_hugetlb_page() to check whether to follow hugeWei Yang1-2/+2
2020-01-31mm: fix gup_pud_rangeQiujun Huang1-1/+1
2019-12-01mm/gup.c: fix comments of __get_user_pages() and get_user_pages_remote()Liu Xiang1-10/+22
2019-12-01mm/gup.c: allow CMA migration to propagate errors back to callerzhong jiang1-3/+5
2019-10-19mm/gup: fix a misnamed "write" argument, and a related bugJohn Hubbard1-6/+8
2019-09-25mm: untag user pointers in mm/gup.cAndrey Konovalov1-0/+4
2019-09-24mm, thp: introduce FOLL_SPLIT_PMDSong Liu1-2/+6