mbox series

[v1,0/2] mm: uffd-wp + change_protection() cleanups

Message ID 20221223155616.297723-1-david@redhat.com (mailing list archive)
Headers show
Series mm: uffd-wp + change_protection() cleanups | expand

Message

David Hildenbrand Dec. 23, 2022, 3:56 p.m. UTC
Based on linus/master and [1]:
  "mm/userfaultfd: enable writenotify while userfaultfd-wp is enabled for a
   VMA"

Cleanup page protection handling in uffd-wp when calling
change_protection() and improve unprotecting uffd=wp in private mappings,
trying to set PTEs writable again if possible just like we do during
mprotect() when upgrading write permissions. Make the change_protection()
interface harder to get wrong :)

I consider both pages primarily cleanups, although patch #1 fixes a
corner case with uffd-wp and softdirty tracking for shmem. @Peter, please
let me know if we should flag patch #1 as pure cleanup -- I have no idea
how important softdirty tracking on shmem is.

Survives my simple test case + selftests/vm.

Last patch series before Christmas; happy holidays everyone!

Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Peter Xu <peterx@redhat.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Andrea Arcangeli <aarcange@redhat.com>
Cc: Nadav Amit <nadav.amit@gmail.com>

[1] https://lore.kernel.org/all/20221209080912.7968-1-david@redhat.com/T/#u

David Hildenbrand (2):
  mm/userfaultfd: rely on vma->vm_page_prot in uffd_wp_range()
  mm/mprotect: drop pgprot_t parameter from change_protection()

 include/linux/mm.h |  3 +--
 mm/mempolicy.c     |  3 +--
 mm/mprotect.c      | 14 +++++++++++---
 mm/userfaultfd.c   | 17 ++++++++++++-----
 4 files changed, 25 insertions(+), 12 deletions(-)