On Fri, 8 May 2026 16:55:16 +0100 "Kiryl Shutsemau (Meta)" <[email protected]> wrote:
> Preparatory patch for userfaultfd read-write protection (RWP). RWP > extends userfaultfd protection from plain write-protection (WP) to > full read-write protection: accesses to an RWP-protected range -- > reads as well as writes -- trap through userfaultfd. > > RWP marks ranges by combining PAGE_NONE with the uffd PTE bit, so > the flag is only meaningful when both primitives exist. A new > CONFIG_USERFAULTFD_RWP Kconfig symbol auto-selects when CONFIG_64BIT, > CONFIG_ARCH_HAS_PTE_PROTNONE, and CONFIG_HAVE_ARCH_USERFAULTFD_WP > are all set; call sites that gate on the flag depend on the symbol. > Elsewhere VM_UFFD_RWP aliases VM_NONE and every downstream check > folds to dead code. > > Nothing sets the flag yet. > > Signed-off-by: Kiryl Shutsemau <[email protected]> > Assisted-by: Claude:claude-opus-4-6 A silly but loud thought. Would it make more sense to put Signed-off-by: after Assisted-by: ? > --- > Documentation/filesystems/proc.rst | 1 + > fs/proc/task_mmu.c | 3 +++ > include/linux/mm.h | 28 +++++++++++++++++---------- > include/linux/userfaultfd_k.h | 31 +++++++++++++++++++++++++----- > include/trace/events/mmflags.h | 7 +++++++ > mm/Kconfig | 9 +++++++++ > 6 files changed, 64 insertions(+), 15 deletions(-) > > diff --git a/Documentation/filesystems/proc.rst > b/Documentation/filesystems/proc.rst > index db6167befb7b..db28207c5290 100644 > --- a/Documentation/filesystems/proc.rst > +++ b/Documentation/filesystems/proc.rst > @@ -607,6 +607,7 @@ encoded manner. The codes are the following: > um userfaultfd missing tracking > uw userfaultfd wr-protect tracking > ui userfaultfd minor fault > + ur userfaultfd read-write-protect tracking Yet another silly but loud thought. My first feeling on this was that this reads like 'u'serfaultfd 'r'ead-protect. And was further thinking 'uf' for just 'u'seffaultfd 'f'ault or 'up' for 'u'serfault-'p'rotect might make sense. But ended up thinking this is too trivial and ain't really matter. [...] > diff --git a/mm/Kconfig b/mm/Kconfig > index e8bf1e9e6ad9..ccf534a8cbc9 100644 > --- a/mm/Kconfig > +++ b/mm/Kconfig > @@ -1347,6 +1347,15 @@ config HAVE_ARCH_USERFAULTFD_MINOR > help > Arch has userfaultfd minor fault support > > +config USERFAULTFD_RWP > + def_bool y > + depends on 64BIT && ARCH_HAS_PTE_PROTNONE && HAVE_ARCH_USERFAULTFD_WP > + help > + Userfaultfd read-write protection (UFFDIO_RWPROTECT) delivers a Seems UFFDIO_RWPROTECT will be introduced later. Would it make more sense to add this config together with the patch? > + userfaultfd notification on every access -- read or write -- to a > + protected range, letting userspace observe the working set of a > + process. > + > menuconfig USERFAULTFD > bool "Enable userfaultfd() system call" > depends on MMU > -- > 2.51.2 > > None of my comments is a blocker. Reviewed-by: SeongJae Park <[email protected]> Thanks, SJ

