Thread (49 messages) 49 messages, 9 authors, 2026-08-30

Re: [PATCH 5/6] userfaultfd: decouple fault reason from VMA flags

flat view

From: "David Hildenbrand (Arm)" <david@kernel.org>
Date: 2026-08-27 08:10:35
Also in: linux-doc, linux-fsdevel, linux-mm, lkml

On 8/27/26 09:49, Mike Rapoport wrote:
On Mon, Aug 24, 2026 at 04:46:14PM +0200, David Hildenbrand (Arm) wrote:
quoted
On 8/23/26 14:17, Mike Rapoport (Microsoft) wrote:
quoted
Introduce enum uffd_reason to define reasons for user faults rather than
overload VM_UFFD_* VMA flags for that.

Using a dedicated enum makes the code clearer and decoupling the fault
reason from VMA flags clears the way for moving the uffd mode bits out
of VMA namespace.

No functional change.

Assisted-by: copilot:claude-opus-4.6
Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
---
 include/linux/userfaultfd_k.h    | 16 ++++++++++++++--
 include/uapi/linux/userfaultfd.h |  6 +++---
 mm/huge_memory.c                 |  6 +++---
 mm/hugetlb.c                     | 10 +++++-----
 mm/memory.c                      | 10 +++++-----
 mm/shmem.c                       |  4 ++--
 mm/userfaultfd.c                 | 30 +++++++++++++++---------------
 7 files changed, 47 insertions(+), 35 deletions(-)
diff --git a/include/linux/userfaultfd_k.h b/include/linux/userfaultfd_k.h
index 45355bdb4ec7..f401623f315d 100644
--- a/include/linux/userfaultfd_k.h
+++ b/include/linux/userfaultfd_k.h
@@ -9,6 +9,18 @@
 #ifndef _LINUX_USERFAULTFD_K_H
 #define _LINUX_USERFAULTFD_K_H
 
+#include <linux/bits.h>
+
+/* Fault reason #PF handler passes to handle_userfault() */
+enum uf_reason {
Can we just call this "userfault_reason" or "uffd_reason" ? Maybe the latter is
actually what we want?
userfault_reason sounds better to me.

It describes what kind of user fault we are handling and the 'fd' part has
nothing to do with it. 
We do use uffd as a short name for the subsystem, but still most if not all
userfaultfd "external" APIs use userfault_ prefix.

uf_ was an attempt to make it wee shorter :)
Yeah, I got that; while uffd is a known acronym, the uf_ not so much (and also I
wouldn't suggest it to become a thing, lol :) )

I've been wondering for a while whether it really should be called

	handle_userfault()

And not instead

	handle_userfaultfd()

Or maybe even better

	handle_uffd_fault()

And then have

	uffd_fault_reason

... but just a thought.

-- 
Cheers,

David
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help