diff options
Diffstat (limited to 'mm/mmap.c')
| -rw-r--r-- | mm/mmap.c | 8 | 
1 files changed, 6 insertions, 2 deletions
diff --git a/mm/mmap.c b/mm/mmap.c index 87d929316d57..425a9349e610 100644 --- a/mm/mmap.c +++ b/mm/mmap.c @@ -1524,6 +1524,10 @@ int vma_wants_writenotify(struct vm_area_struct *vma, pgprot_t vm_page_prot)  	if (vma_soft_dirty_enabled(vma) && !is_vm_hugetlb_page(vma))  		return 1; +	/* Do we need write faults for uffd-wp tracking? */ +	if (userfaultfd_wp(vma)) +		return 1; +  	/* Specialty mapping? */  	if (vm_flags & VM_PFNMAP)  		return 0; @@ -2290,7 +2294,7 @@ static inline int munmap_sidetree(struct vm_area_struct *vma,   * @start: The aligned start address to munmap.   * @end: The aligned end address to munmap.   * @uf: The userfaultfd list_head - * @downgrade: Set to true to attempt a write downgrade of the mmap_sem + * @downgrade: Set to true to attempt a write downgrade of the mmap_lock   *   * If @downgrade is true, check return code for potential release of the lock.   */ @@ -2465,7 +2469,7 @@ map_count_exceeded:   * @len: The length of the range to munmap   * @uf: The userfaultfd list_head   * @downgrade: set to true if the user wants to attempt to write_downgrade the - * mmap_sem + * mmap_lock   *   * This function takes a @mas that is either pointing to the previous VMA or set   * to MA_START and sets it up to remove the mapping(s).  The @len will be  |