[PATCH 3/3] mm/s390: Define private VM_FAULT_* reasons from top bits

From: Peter Xu
Date: Sun Feb 05 2023 - 18:18:59 EST


The current definition already collapse with the generic definition of
vm_fault_reason. Move the private definitions to allocate bits from the
top of uint so they won't collapse anymore.

Signed-off-by: Peter Xu <peterx@xxxxxxxxxx>
---
arch/s390/mm/fault.c | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/arch/s390/mm/fault.c b/arch/s390/mm/fault.c
index 9649d9382e0a..cebfbd6dcbaf 100644
--- a/arch/s390/mm/fault.c
+++ b/arch/s390/mm/fault.c
@@ -46,11 +46,15 @@
#define __SUBCODE_MASK 0x0600
#define __PF_RES_FIELD 0x8000000000000000ULL

-#define VM_FAULT_BADCONTEXT ((__force vm_fault_t) 0x010000)
-#define VM_FAULT_BADMAP ((__force vm_fault_t) 0x020000)
-#define VM_FAULT_BADACCESS ((__force vm_fault_t) 0x040000)
-#define VM_FAULT_SIGNAL ((__force vm_fault_t) 0x080000)
-#define VM_FAULT_PFAULT ((__force vm_fault_t) 0x100000)
+/*
+ * Allocate private vm_fault_reason from top. Please make sure it won't
+ * collide with vm_fault_reason.
+ */
+#define VM_FAULT_BADCONTEXT ((__force vm_fault_t) 0x80000000)
+#define VM_FAULT_BADMAP ((__force vm_fault_t) 0x40000000)
+#define VM_FAULT_BADACCESS ((__force vm_fault_t) 0x20000000)
+#define VM_FAULT_SIGNAL ((__force vm_fault_t) 0x10000000)
+#define VM_FAULT_PFAULT ((__force vm_fault_t) 0x8000000)

enum fault_type {
KERNEL_FAULT,
--
2.37.3