s390/pgtable: Switch read and write softbits for puds
authorClaudio Imbrenda <imbrenda@linux.ibm.com>
Mon, 29 Apr 2024 14:34:08 +0000 (16:34 +0200)
committerAlexander Gordeev <agordeev@linux.ibm.com>
Tue, 14 May 2024 11:37:05 +0000 (13:37 +0200)
There is no reason for the read and write softbits to be swapped in the
puds compared to pmds. They are different only because the softbits for
puds were introduced at the same time when the softbits for pmds were
swapped.

The current implementation is not wrong per se, since the macros are
defined correctly; only the documentation does not reflect reality.

With this patch, the read and write softbits for large pmd and large
puds will have the same layout, and will match the existing
documentation.

Signed-off-by: Claudio Imbrenda <imbrenda@linux.ibm.com>
Reviewed-by: Heiko Carstens <hca@linux.ibm.com>
Link: https://lore.kernel.org/r/20240429143409.49892-2-imbrenda@linux.ibm.com
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
arch/s390/include/asm/pgtable.h

index 6f11d063d54500352154ff77db5ad3dd4b374c23..f64de68b13aa5a9fa9ff5e7ee7c4893cb5b43733 100644 (file)
@@ -272,8 +272,8 @@ static inline int is_module_addr(void *addr)
 #define _REGION3_ENTRY_DIRTY   0x2000  /* SW region dirty bit */
 #define _REGION3_ENTRY_YOUNG   0x1000  /* SW region young bit */
 #define _REGION3_ENTRY_LARGE   0x0400  /* RTTE-format control, large page  */
-#define _REGION3_ENTRY_READ    0x0002  /* SW region read bit */
-#define _REGION3_ENTRY_WRITE   0x0001  /* SW region write bit */
+#define _REGION3_ENTRY_WRITE   0x0002  /* SW region write bit */
+#define _REGION3_ENTRY_READ    0x0001  /* SW region read bit */
 
 #ifdef CONFIG_MEM_SOFT_DIRTY
 #define _REGION3_ENTRY_SOFT_DIRTY 0x4000 /* SW region soft dirty bit */