From: Anshuman Khandual <anshuman.khandual@arm.com>
To: linux-mm@kvack.org
Cc: hch@infradead.org, christophe.leroy@csgroup.eu,
Anshuman Khandual <anshuman.khandual@arm.com>,
Andrew Morton <akpm@linux-foundation.org>,
linuxppc-dev@lists.ozlabs.org, sparclinux@vger.kernel.org,
x86@kernel.org, openrisc@lists.librecores.org,
linux-xtensa@linux-xtensa.org, linux-csky@vger.kernel.org,
linux-hexagon@vger.kernel.org, linux-parisc@vger.kernel.org,
linux-alpha@vger.kernel.org, linux-riscv@lists.infradead.org,
linux-s390@vger.kernel.org, linux-ia64@vger.kernel.org,
linux-mips@vger.kernel.org, linux-m68k@lists.linux-m68k.org,
linux-snps-arc@lists.infradead.org,
linux-arm-kernel@lists.infradead.org,
linux-um@lists.infradead.org, linux-sh@vger.kernel.org,
linux-kernel@vger.kernel.org, Richard Henderson <rth@twiddle.net>
Subject: [PATCH V5 14/26] alpha/mm: Enable ARCH_HAS_VM_GET_PAGE_PROT
Date: Mon, 27 Jun 2022 10:28:21 +0530 [thread overview]
Message-ID: <20220627045833.1590055-15-anshuman.khandual@arm.com> (raw)
In-Reply-To: <20220627045833.1590055-1-anshuman.khandual@arm.com>
This enables ARCH_HAS_VM_GET_PAGE_PROT on the platform and exports standard
vm_get_page_prot() implementation via DECLARE_VM_GET_PAGE_PROT, which looks
up a private and static protection_map[] array. Subsequently all __SXXX and
__PXXX macros can be dropped which are no longer needed.
Cc: Richard Henderson <rth@twiddle.net>
Cc: linux-alpha@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com>
---
arch/alpha/Kconfig | 1 +
arch/alpha/include/asm/pgtable.h | 17 -----------------
arch/alpha/mm/init.c | 22 ++++++++++++++++++++++
3 files changed, 23 insertions(+), 17 deletions(-)
diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 7d0d26b5b3f5..db1c8b329461 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -2,6 +2,7 @@
config ALPHA
bool
default y
+ select ARCH_HAS_VM_GET_PAGE_PROT
select ARCH_32BIT_USTAT_F_TINODE
select ARCH_MIGHT_HAVE_PC_PARPORT
select ARCH_MIGHT_HAVE_PC_SERIO
diff --git a/arch/alpha/include/asm/pgtable.h b/arch/alpha/include/asm/pgtable.h
index 170451fde043..3ea9661c09ff 100644
--- a/arch/alpha/include/asm/pgtable.h
+++ b/arch/alpha/include/asm/pgtable.h
@@ -116,23 +116,6 @@ struct vm_area_struct;
* arch/alpha/mm/fault.c)
*/
/* xwr */
-#define __P000 _PAGE_P(_PAGE_FOE | _PAGE_FOW | _PAGE_FOR)
-#define __P001 _PAGE_P(_PAGE_FOE | _PAGE_FOW)
-#define __P010 _PAGE_P(_PAGE_FOE)
-#define __P011 _PAGE_P(_PAGE_FOE)
-#define __P100 _PAGE_P(_PAGE_FOW | _PAGE_FOR)
-#define __P101 _PAGE_P(_PAGE_FOW)
-#define __P110 _PAGE_P(0)
-#define __P111 _PAGE_P(0)
-
-#define __S000 _PAGE_S(_PAGE_FOE | _PAGE_FOW | _PAGE_FOR)
-#define __S001 _PAGE_S(_PAGE_FOE | _PAGE_FOW)
-#define __S010 _PAGE_S(_PAGE_FOE)
-#define __S011 _PAGE_S(_PAGE_FOE)
-#define __S100 _PAGE_S(_PAGE_FOW | _PAGE_FOR)
-#define __S101 _PAGE_S(_PAGE_FOW)
-#define __S110 _PAGE_S(0)
-#define __S111 _PAGE_S(0)
/*
* pgprot_noncached() is only for infiniband pci support, and a real
diff --git a/arch/alpha/mm/init.c b/arch/alpha/mm/init.c
index 7511723b7669..a155180d7a83 100644
--- a/arch/alpha/mm/init.c
+++ b/arch/alpha/mm/init.c
@@ -280,3 +280,25 @@ mem_init(void)
high_memory = (void *) __va(max_low_pfn * PAGE_SIZE);
memblock_free_all();
}
+
+static const pgprot_t protection_map[16] = {
+ [VM_NONE] = _PAGE_P(_PAGE_FOE | _PAGE_FOW |
+ _PAGE_FOR),
+ [VM_READ] = _PAGE_P(_PAGE_FOE | _PAGE_FOW),
+ [VM_WRITE] = _PAGE_P(_PAGE_FOE),
+ [VM_WRITE | VM_READ] = _PAGE_P(_PAGE_FOE),
+ [VM_EXEC] = _PAGE_P(_PAGE_FOW | _PAGE_FOR),
+ [VM_EXEC | VM_READ] = _PAGE_P(_PAGE_FOW),
+ [VM_EXEC | VM_WRITE] = _PAGE_P(0),
+ [VM_EXEC | VM_WRITE | VM_READ] = _PAGE_P(0),
+ [VM_SHARED] = _PAGE_S(_PAGE_FOE | _PAGE_FOW |
+ _PAGE_FOR),
+ [VM_SHARED | VM_READ] = _PAGE_S(_PAGE_FOE | _PAGE_FOW),
+ [VM_SHARED | VM_WRITE] = _PAGE_S(_PAGE_FOE),
+ [VM_SHARED | VM_WRITE | VM_READ] = _PAGE_S(_PAGE_FOE),
+ [VM_SHARED | VM_EXEC] = _PAGE_S(_PAGE_FOW | _PAGE_FOR),
+ [VM_SHARED | VM_EXEC | VM_READ] = _PAGE_S(_PAGE_FOW),
+ [VM_SHARED | VM_EXEC | VM_WRITE] = _PAGE_S(0),
+ [VM_SHARED | VM_EXEC | VM_WRITE | VM_READ] = _PAGE_S(0)
+};
+DECLARE_VM_GET_PAGE_PROT
--
2.25.1
WARNING: multiple messages have this Message-ID (diff)
From: Anshuman Khandual <anshuman.khandual@arm.com>
To: linux-mm@kvack.org
Cc: linux-ia64@vger.kernel.org, linux-sh@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-csky@vger.kernel.org,
sparclinux@vger.kernel.org, linux-riscv@lists.infradead.org,
linux-s390@vger.kernel.org, linux-hexagon@vger.kernel.org,
x86@kernel.org, christophe.leroy@csgroup.eu, hch@infradead.org,
linux-snps-arc@lists.infradead.org,
linux-xtensa@linux-xtensa.org,
Anshuman Khandual <anshuman.khandual@arm.com>,
linux-um@lists.infradead.org, linux-m68k@lists.linux-m68k.org,
openrisc@lists.librecores.org,
linux-arm-kernel@lists.infradead.org,
Richard Henderson <rth@twiddle.net>,
linux-parisc@vger.kernel.org, linux-mips@vger.kernel.org,
linux-alpha@vger.kernel.org,
Andrew Morton <akpm@linux-foundation.org>,
linuxppc-dev@lists.ozlabs.org
Subject: [PATCH V5 14/26] alpha/mm: Enable ARCH_HAS_VM_GET_PAGE_PROT
Date: Mon, 27 Jun 2022 10:28:21 +0530 [thread overview]
Message-ID: <20220627045833.1590055-15-anshuman.khandual@arm.com> (raw)
In-Reply-To: <20220627045833.1590055-1-anshuman.khandual@arm.com>
This enables ARCH_HAS_VM_GET_PAGE_PROT on the platform and exports standard
vm_get_page_prot() implementation via DECLARE_VM_GET_PAGE_PROT, which looks
up a private and static protection_map[] array. Subsequently all __SXXX and
__PXXX macros can be dropped which are no longer needed.
Cc: Richard Henderson <rth@twiddle.net>
Cc: linux-alpha@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com>
---
arch/alpha/Kconfig | 1 +
arch/alpha/include/asm/pgtable.h | 17 -----------------
arch/alpha/mm/init.c | 22 ++++++++++++++++++++++
3 files changed, 23 insertions(+), 17 deletions(-)
diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 7d0d26b5b3f5..db1c8b329461 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -2,6 +2,7 @@
config ALPHA
bool
default y
+ select ARCH_HAS_VM_GET_PAGE_PROT
select ARCH_32BIT_USTAT_F_TINODE
select ARCH_MIGHT_HAVE_PC_PARPORT
select ARCH_MIGHT_HAVE_PC_SERIO
diff --git a/arch/alpha/include/asm/pgtable.h b/arch/alpha/include/asm/pgtable.h
index 170451fde043..3ea9661c09ff 100644
--- a/arch/alpha/include/asm/pgtable.h
+++ b/arch/alpha/include/asm/pgtable.h
@@ -116,23 +116,6 @@ struct vm_area_struct;
* arch/alpha/mm/fault.c)
*/
/* xwr */
-#define __P000 _PAGE_P(_PAGE_FOE | _PAGE_FOW | _PAGE_FOR)
-#define __P001 _PAGE_P(_PAGE_FOE | _PAGE_FOW)
-#define __P010 _PAGE_P(_PAGE_FOE)
-#define __P011 _PAGE_P(_PAGE_FOE)
-#define __P100 _PAGE_P(_PAGE_FOW | _PAGE_FOR)
-#define __P101 _PAGE_P(_PAGE_FOW)
-#define __P110 _PAGE_P(0)
-#define __P111 _PAGE_P(0)
-
-#define __S000 _PAGE_S(_PAGE_FOE | _PAGE_FOW | _PAGE_FOR)
-#define __S001 _PAGE_S(_PAGE_FOE | _PAGE_FOW)
-#define __S010 _PAGE_S(_PAGE_FOE)
-#define __S011 _PAGE_S(_PAGE_FOE)
-#define __S100 _PAGE_S(_PAGE_FOW | _PAGE_FOR)
-#define __S101 _PAGE_S(_PAGE_FOW)
-#define __S110 _PAGE_S(0)
-#define __S111 _PAGE_S(0)
/*
* pgprot_noncached() is only for infiniband pci support, and a real
diff --git a/arch/alpha/mm/init.c b/arch/alpha/mm/init.c
index 7511723b7669..a155180d7a83 100644
--- a/arch/alpha/mm/init.c
+++ b/arch/alpha/mm/init.c
@@ -280,3 +280,25 @@ mem_init(void)
high_memory = (void *) __va(max_low_pfn * PAGE_SIZE);
memblock_free_all();
}
+
+static const pgprot_t protection_map[16] = {
+ [VM_NONE] = _PAGE_P(_PAGE_FOE | _PAGE_FOW |
+ _PAGE_FOR),
+ [VM_READ] = _PAGE_P(_PAGE_FOE | _PAGE_FOW),
+ [VM_WRITE] = _PAGE_P(_PAGE_FOE),
+ [VM_WRITE | VM_READ] = _PAGE_P(_PAGE_FOE),
+ [VM_EXEC] = _PAGE_P(_PAGE_FOW | _PAGE_FOR),
+ [VM_EXEC | VM_READ] = _PAGE_P(_PAGE_FOW),
+ [VM_EXEC | VM_WRITE] = _PAGE_P(0),
+ [VM_EXEC | VM_WRITE | VM_READ] = _PAGE_P(0),
+ [VM_SHARED] = _PAGE_S(_PAGE_FOE | _PAGE_FOW |
+ _PAGE_FOR),
+ [VM_SHARED | VM_READ] = _PAGE_S(_PAGE_FOE | _PAGE_FOW),
+ [VM_SHARED | VM_WRITE] = _PAGE_S(_PAGE_FOE),
+ [VM_SHARED | VM_WRITE | VM_READ] = _PAGE_S(_PAGE_FOE),
+ [VM_SHARED | VM_EXEC] = _PAGE_S(_PAGE_FOW | _PAGE_FOR),
+ [VM_SHARED | VM_EXEC | VM_READ] = _PAGE_S(_PAGE_FOW),
+ [VM_SHARED | VM_EXEC | VM_WRITE] = _PAGE_S(0),
+ [VM_SHARED | VM_EXEC | VM_WRITE | VM_READ] = _PAGE_S(0)
+};
+DECLARE_VM_GET_PAGE_PROT
--
2.25.1
WARNING: multiple messages have this Message-ID (diff)
From: Anshuman Khandual <anshuman.khandual@arm.com>
To: linux-mm@kvack.org
Cc: linux-ia64@vger.kernel.org, linux-sh@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-csky@vger.kernel.org,
sparclinux@vger.kernel.org, linux-riscv@lists.infradead.org,
linux-s390@vger.kernel.org, linux-hexagon@vger.kernel.org,
x86@kernel.org, hch@infradead.org,
linux-snps-arc@lists.infradead.org,
linux-xtensa@linux-xtensa.org,
Anshuman Khandual <anshuman.khandual@arm.com>,
linux-um@lists.infradead.org, linux-m68k@lists.linux-m68k.org,
openrisc@lists.librecores.org,
linux-arm-kernel@lists.infradead.org,
Richard Henderson <rth@twiddle.net>,
linux-parisc@vger.kernel.org, linux-mips@vger.kernel.org,
linux-alpha@vger.kernel.org,
Andrew Morton <akpm@linux-foundation.org>,
linuxppc-dev@lists.ozlabs.org
Subject: [PATCH V5 14/26] alpha/mm: Enable ARCH_HAS_VM_GET_PAGE_PROT
Date: Mon, 27 Jun 2022 10:28:21 +0530 [thread overview]
Message-ID: <20220627045833.1590055-15-anshuman.khandual@arm.com> (raw)
In-Reply-To: <20220627045833.1590055-1-anshuman.khandual@arm.com>
This enables ARCH_HAS_VM_GET_PAGE_PROT on the platform and exports standard
vm_get_page_prot() implementation via DECLARE_VM_GET_PAGE_PROT, which looks
up a private and static protection_map[] array. Subsequently all __SXXX and
__PXXX macros can be dropped which are no longer needed.
Cc: Richard Henderson <rth@twiddle.net>
Cc: linux-alpha@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com>
---
arch/alpha/Kconfig | 1 +
arch/alpha/include/asm/pgtable.h | 17 -----------------
arch/alpha/mm/init.c | 22 ++++++++++++++++++++++
3 files changed, 23 insertions(+), 17 deletions(-)
diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 7d0d26b5b3f5..db1c8b329461 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -2,6 +2,7 @@
config ALPHA
bool
default y
+ select ARCH_HAS_VM_GET_PAGE_PROT
select ARCH_32BIT_USTAT_F_TINODE
select ARCH_MIGHT_HAVE_PC_PARPORT
select ARCH_MIGHT_HAVE_PC_SERIO
diff --git a/arch/alpha/include/asm/pgtable.h b/arch/alpha/include/asm/pgtable.h
index 170451fde043..3ea9661c09ff 100644
--- a/arch/alpha/include/asm/pgtable.h
+++ b/arch/alpha/include/asm/pgtable.h
@@ -116,23 +116,6 @@ struct vm_area_struct;
* arch/alpha/mm/fault.c)
*/
/* xwr */
-#define __P000 _PAGE_P(_PAGE_FOE | _PAGE_FOW | _PAGE_FOR)
-#define __P001 _PAGE_P(_PAGE_FOE | _PAGE_FOW)
-#define __P010 _PAGE_P(_PAGE_FOE)
-#define __P011 _PAGE_P(_PAGE_FOE)
-#define __P100 _PAGE_P(_PAGE_FOW | _PAGE_FOR)
-#define __P101 _PAGE_P(_PAGE_FOW)
-#define __P110 _PAGE_P(0)
-#define __P111 _PAGE_P(0)
-
-#define __S000 _PAGE_S(_PAGE_FOE | _PAGE_FOW | _PAGE_FOR)
-#define __S001 _PAGE_S(_PAGE_FOE | _PAGE_FOW)
-#define __S010 _PAGE_S(_PAGE_FOE)
-#define __S011 _PAGE_S(_PAGE_FOE)
-#define __S100 _PAGE_S(_PAGE_FOW | _PAGE_FOR)
-#define __S101 _PAGE_S(_PAGE_FOW)
-#define __S110 _PAGE_S(0)
-#define __S111 _PAGE_S(0)
/*
* pgprot_noncached() is only for infiniband pci support, and a real
diff --git a/arch/alpha/mm/init.c b/arch/alpha/mm/init.c
index 7511723b7669..a155180d7a83 100644
--- a/arch/alpha/mm/init.c
+++ b/arch/alpha/mm/init.c
@@ -280,3 +280,25 @@ mem_init(void)
high_memory = (void *) __va(max_low_pfn * PAGE_SIZE);
memblock_free_all();
}
+
+static const pgprot_t protection_map[16] = {
+ [VM_NONE] = _PAGE_P(_PAGE_FOE | _PAGE_FOW |
+ _PAGE_FOR),
+ [VM_READ] = _PAGE_P(_PAGE_FOE | _PAGE_FOW),
+ [VM_WRITE] = _PAGE_P(_PAGE_FOE),
+ [VM_WRITE | VM_READ] = _PAGE_P(_PAGE_FOE),
+ [VM_EXEC] = _PAGE_P(_PAGE_FOW | _PAGE_FOR),
+ [VM_EXEC | VM_READ] = _PAGE_P(_PAGE_FOW),
+ [VM_EXEC | VM_WRITE] = _PAGE_P(0),
+ [VM_EXEC | VM_WRITE | VM_READ] = _PAGE_P(0),
+ [VM_SHARED] = _PAGE_S(_PAGE_FOE | _PAGE_FOW |
+ _PAGE_FOR),
+ [VM_SHARED | VM_READ] = _PAGE_S(_PAGE_FOE | _PAGE_FOW),
+ [VM_SHARED | VM_WRITE] = _PAGE_S(_PAGE_FOE),
+ [VM_SHARED | VM_WRITE | VM_READ] = _PAGE_S(_PAGE_FOE),
+ [VM_SHARED | VM_EXEC] = _PAGE_S(_PAGE_FOW | _PAGE_FOR),
+ [VM_SHARED | VM_EXEC | VM_READ] = _PAGE_S(_PAGE_FOW),
+ [VM_SHARED | VM_EXEC | VM_WRITE] = _PAGE_S(0),
+ [VM_SHARED | VM_EXEC | VM_WRITE | VM_READ] = _PAGE_S(0)
+};
+DECLARE_VM_GET_PAGE_PROT
--
2.25.1
WARNING: multiple messages have this Message-ID (diff)
From: Anshuman Khandual <anshuman.khandual@arm.com>
To: linux-mm@kvack.org
Cc: hch@infradead.org, christophe.leroy@csgroup.eu,
Anshuman Khandual <anshuman.khandual@arm.com>,
Andrew Morton <akpm@linux-foundation.org>,
linuxppc-dev@lists.ozlabs.org, sparclinux@vger.kernel.org,
x86@kernel.org, openrisc@lists.librecores.org,
linux-xtensa@linux-xtensa.org, linux-csky@vger.kernel.org,
linux-hexagon@vger.kernel.org, linux-parisc@vger.kernel.org,
linux-alpha@vger.kernel.org, linux-riscv@lists.infradead.org,
linux-s390@vger.kernel.org, linux-ia64@vger.kernel.org,
linux-mips@vger.kernel.org, linux-m68k@lists.linux-m68k.org,
linux-snps-arc@lists.infradead.org,
linux-arm-kernel@lists.infradead.org,
linux-um@lists.infradead.org, linux-sh@vger.kernel.org,
linux-kernel@vger.kernel.org, Richard Henderson <rth@twiddle.net>
Subject: [PATCH V5 14/26] alpha/mm: Enable ARCH_HAS_VM_GET_PAGE_PROT
Date: Mon, 27 Jun 2022 10:28:21 +0530 [thread overview]
Message-ID: <20220627045833.1590055-15-anshuman.khandual@arm.com> (raw)
In-Reply-To: <20220627045833.1590055-1-anshuman.khandual@arm.com>
This enables ARCH_HAS_VM_GET_PAGE_PROT on the platform and exports standard
vm_get_page_prot() implementation via DECLARE_VM_GET_PAGE_PROT, which looks
up a private and static protection_map[] array. Subsequently all __SXXX and
__PXXX macros can be dropped which are no longer needed.
Cc: Richard Henderson <rth@twiddle.net>
Cc: linux-alpha@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com>
---
arch/alpha/Kconfig | 1 +
arch/alpha/include/asm/pgtable.h | 17 -----------------
arch/alpha/mm/init.c | 22 ++++++++++++++++++++++
3 files changed, 23 insertions(+), 17 deletions(-)
diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 7d0d26b5b3f5..db1c8b329461 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -2,6 +2,7 @@
config ALPHA
bool
default y
+ select ARCH_HAS_VM_GET_PAGE_PROT
select ARCH_32BIT_USTAT_F_TINODE
select ARCH_MIGHT_HAVE_PC_PARPORT
select ARCH_MIGHT_HAVE_PC_SERIO
diff --git a/arch/alpha/include/asm/pgtable.h b/arch/alpha/include/asm/pgtable.h
index 170451fde043..3ea9661c09ff 100644
--- a/arch/alpha/include/asm/pgtable.h
+++ b/arch/alpha/include/asm/pgtable.h
@@ -116,23 +116,6 @@ struct vm_area_struct;
* arch/alpha/mm/fault.c)
*/
/* xwr */
-#define __P000 _PAGE_P(_PAGE_FOE | _PAGE_FOW | _PAGE_FOR)
-#define __P001 _PAGE_P(_PAGE_FOE | _PAGE_FOW)
-#define __P010 _PAGE_P(_PAGE_FOE)
-#define __P011 _PAGE_P(_PAGE_FOE)
-#define __P100 _PAGE_P(_PAGE_FOW | _PAGE_FOR)
-#define __P101 _PAGE_P(_PAGE_FOW)
-#define __P110 _PAGE_P(0)
-#define __P111 _PAGE_P(0)
-
-#define __S000 _PAGE_S(_PAGE_FOE | _PAGE_FOW | _PAGE_FOR)
-#define __S001 _PAGE_S(_PAGE_FOE | _PAGE_FOW)
-#define __S010 _PAGE_S(_PAGE_FOE)
-#define __S011 _PAGE_S(_PAGE_FOE)
-#define __S100 _PAGE_S(_PAGE_FOW | _PAGE_FOR)
-#define __S101 _PAGE_S(_PAGE_FOW)
-#define __S110 _PAGE_S(0)
-#define __S111 _PAGE_S(0)
/*
* pgprot_noncached() is only for infiniband pci support, and a real
diff --git a/arch/alpha/mm/init.c b/arch/alpha/mm/init.c
index 7511723b7669..a155180d7a83 100644
--- a/arch/alpha/mm/init.c
+++ b/arch/alpha/mm/init.c
@@ -280,3 +280,25 @@ mem_init(void)
high_memory = (void *) __va(max_low_pfn * PAGE_SIZE);
memblock_free_all();
}
+
+static const pgprot_t protection_map[16] = {
+ [VM_NONE] = _PAGE_P(_PAGE_FOE | _PAGE_FOW |
+ _PAGE_FOR),
+ [VM_READ] = _PAGE_P(_PAGE_FOE | _PAGE_FOW),
+ [VM_WRITE] = _PAGE_P(_PAGE_FOE),
+ [VM_WRITE | VM_READ] = _PAGE_P(_PAGE_FOE),
+ [VM_EXEC] = _PAGE_P(_PAGE_FOW | _PAGE_FOR),
+ [VM_EXEC | VM_READ] = _PAGE_P(_PAGE_FOW),
+ [VM_EXEC | VM_WRITE] = _PAGE_P(0),
+ [VM_EXEC | VM_WRITE | VM_READ] = _PAGE_P(0),
+ [VM_SHARED] = _PAGE_S(_PAGE_FOE | _PAGE_FOW |
+ _PAGE_FOR),
+ [VM_SHARED | VM_READ] = _PAGE_S(_PAGE_FOE | _PAGE_FOW),
+ [VM_SHARED | VM_WRITE] = _PAGE_S(_PAGE_FOE),
+ [VM_SHARED | VM_WRITE | VM_READ] = _PAGE_S(_PAGE_FOE),
+ [VM_SHARED | VM_EXEC] = _PAGE_S(_PAGE_FOW | _PAGE_FOR),
+ [VM_SHARED | VM_EXEC | VM_READ] = _PAGE_S(_PAGE_FOW),
+ [VM_SHARED | VM_EXEC | VM_WRITE] = _PAGE_S(0),
+ [VM_SHARED | VM_EXEC | VM_WRITE | VM_READ] = _PAGE_S(0)
+};
+DECLARE_VM_GET_PAGE_PROT
--
2.25.1
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
WARNING: multiple messages have this Message-ID (diff)
From: Anshuman Khandual <anshuman.khandual@arm.com>
To: linux-mm@kvack.org
Cc: hch@infradead.org, christophe.leroy@csgroup.eu,
Anshuman Khandual <anshuman.khandual@arm.com>,
Andrew Morton <akpm@linux-foundation.org>,
linuxppc-dev@lists.ozlabs.org, sparclinux@vger.kernel.org,
x86@kernel.org, openrisc@lists.librecores.org,
linux-xtensa@linux-xtensa.org, linux-csky@vger.kernel.org,
linux-hexagon@vger.kernel.org, linux-parisc@vger.kernel.org,
linux-alpha@vger.kernel.org, linux-riscv@lists.infradead.org,
linux-s390@vger.kernel.org, linux-ia64@vger.kernel.org,
linux-mips@vger.kernel.org, linux-m68k@lists.linux-m68k.org,
linux-snps-arc@lists.infradead.org,
linux-arm-kernel@lists.infradead.org,
linux-um@lists.infradead.org, linux-sh@vger.kernel.org,
linux-kernel@vger.kernel.org, Richard Henderson <rth@twiddle.net>
Subject: [PATCH V5 14/26] alpha/mm: Enable ARCH_HAS_VM_GET_PAGE_PROT
Date: Mon, 27 Jun 2022 10:28:21 +0530 [thread overview]
Message-ID: <20220627045833.1590055-15-anshuman.khandual@arm.com> (raw)
In-Reply-To: <20220627045833.1590055-1-anshuman.khandual@arm.com>
This enables ARCH_HAS_VM_GET_PAGE_PROT on the platform and exports standard
vm_get_page_prot() implementation via DECLARE_VM_GET_PAGE_PROT, which looks
up a private and static protection_map[] array. Subsequently all __SXXX and
__PXXX macros can be dropped which are no longer needed.
Cc: Richard Henderson <rth@twiddle.net>
Cc: linux-alpha@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com>
---
arch/alpha/Kconfig | 1 +
arch/alpha/include/asm/pgtable.h | 17 -----------------
arch/alpha/mm/init.c | 22 ++++++++++++++++++++++
3 files changed, 23 insertions(+), 17 deletions(-)
diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 7d0d26b5b3f5..db1c8b329461 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -2,6 +2,7 @@
config ALPHA
bool
default y
+ select ARCH_HAS_VM_GET_PAGE_PROT
select ARCH_32BIT_USTAT_F_TINODE
select ARCH_MIGHT_HAVE_PC_PARPORT
select ARCH_MIGHT_HAVE_PC_SERIO
diff --git a/arch/alpha/include/asm/pgtable.h b/arch/alpha/include/asm/pgtable.h
index 170451fde043..3ea9661c09ff 100644
--- a/arch/alpha/include/asm/pgtable.h
+++ b/arch/alpha/include/asm/pgtable.h
@@ -116,23 +116,6 @@ struct vm_area_struct;
* arch/alpha/mm/fault.c)
*/
/* xwr */
-#define __P000 _PAGE_P(_PAGE_FOE | _PAGE_FOW | _PAGE_FOR)
-#define __P001 _PAGE_P(_PAGE_FOE | _PAGE_FOW)
-#define __P010 _PAGE_P(_PAGE_FOE)
-#define __P011 _PAGE_P(_PAGE_FOE)
-#define __P100 _PAGE_P(_PAGE_FOW | _PAGE_FOR)
-#define __P101 _PAGE_P(_PAGE_FOW)
-#define __P110 _PAGE_P(0)
-#define __P111 _PAGE_P(0)
-
-#define __S000 _PAGE_S(_PAGE_FOE | _PAGE_FOW | _PAGE_FOR)
-#define __S001 _PAGE_S(_PAGE_FOE | _PAGE_FOW)
-#define __S010 _PAGE_S(_PAGE_FOE)
-#define __S011 _PAGE_S(_PAGE_FOE)
-#define __S100 _PAGE_S(_PAGE_FOW | _PAGE_FOR)
-#define __S101 _PAGE_S(_PAGE_FOW)
-#define __S110 _PAGE_S(0)
-#define __S111 _PAGE_S(0)
/*
* pgprot_noncached() is only for infiniband pci support, and a real
diff --git a/arch/alpha/mm/init.c b/arch/alpha/mm/init.c
index 7511723b7669..a155180d7a83 100644
--- a/arch/alpha/mm/init.c
+++ b/arch/alpha/mm/init.c
@@ -280,3 +280,25 @@ mem_init(void)
high_memory = (void *) __va(max_low_pfn * PAGE_SIZE);
memblock_free_all();
}
+
+static const pgprot_t protection_map[16] = {
+ [VM_NONE] = _PAGE_P(_PAGE_FOE | _PAGE_FOW |
+ _PAGE_FOR),
+ [VM_READ] = _PAGE_P(_PAGE_FOE | _PAGE_FOW),
+ [VM_WRITE] = _PAGE_P(_PAGE_FOE),
+ [VM_WRITE | VM_READ] = _PAGE_P(_PAGE_FOE),
+ [VM_EXEC] = _PAGE_P(_PAGE_FOW | _PAGE_FOR),
+ [VM_EXEC | VM_READ] = _PAGE_P(_PAGE_FOW),
+ [VM_EXEC | VM_WRITE] = _PAGE_P(0),
+ [VM_EXEC | VM_WRITE | VM_READ] = _PAGE_P(0),
+ [VM_SHARED] = _PAGE_S(_PAGE_FOE | _PAGE_FOW |
+ _PAGE_FOR),
+ [VM_SHARED | VM_READ] = _PAGE_S(_PAGE_FOE | _PAGE_FOW),
+ [VM_SHARED | VM_WRITE] = _PAGE_S(_PAGE_FOE),
+ [VM_SHARED | VM_WRITE | VM_READ] = _PAGE_S(_PAGE_FOE),
+ [VM_SHARED | VM_EXEC] = _PAGE_S(_PAGE_FOW | _PAGE_FOR),
+ [VM_SHARED | VM_EXEC | VM_READ] = _PAGE_S(_PAGE_FOW),
+ [VM_SHARED | VM_EXEC | VM_WRITE] = _PAGE_S(0),
+ [VM_SHARED | VM_EXEC | VM_WRITE | VM_READ] = _PAGE_S(0)
+};
+DECLARE_VM_GET_PAGE_PROT
--
2.25.1
_______________________________________________
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc
WARNING: multiple messages have this Message-ID (diff)
From: Anshuman Khandual <anshuman.khandual@arm.com>
To: linux-mm@kvack.org
Cc: hch@infradead.org, christophe.leroy@csgroup.eu,
Anshuman Khandual <anshuman.khandual@arm.com>,
Andrew Morton <akpm@linux-foundation.org>,
linuxppc-dev@lists.ozlabs.org, sparclinux@vger.kernel.org,
x86@kernel.org, openrisc@lists.librecores.org,
linux-xtensa@linux-xtensa.org, linux-csky@vger.kernel.org,
linux-hexagon@vger.kernel.org, linux-parisc@vger.kernel.org,
linux-alpha@vger.kernel.org, linux-riscv@lists.infradead.org,
linux-s390@vger.kernel.org, linux-ia64@vger.kernel.org,
linux-mips@vger.kernel.org, linux-m68k@lists.linux-m68k.org,
linux-snps-arc@lists.infradead.org,
linux-arm-kernel@lists.infradead.org,
linux-um@lists.infradead.org, linux-sh@vger.kernel.org,
linux-kernel@vger.kernel.org, Richard Henderson <rth@twiddle.net>
Subject: [PATCH V5 14/26] alpha/mm: Enable ARCH_HAS_VM_GET_PAGE_PROT
Date: Mon, 27 Jun 2022 10:28:21 +0530 [thread overview]
Message-ID: <20220627045833.1590055-15-anshuman.khandual@arm.com> (raw)
In-Reply-To: <20220627045833.1590055-1-anshuman.khandual@arm.com>
This enables ARCH_HAS_VM_GET_PAGE_PROT on the platform and exports standard
vm_get_page_prot() implementation via DECLARE_VM_GET_PAGE_PROT, which looks
up a private and static protection_map[] array. Subsequently all __SXXX and
__PXXX macros can be dropped which are no longer needed.
Cc: Richard Henderson <rth@twiddle.net>
Cc: linux-alpha@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com>
---
arch/alpha/Kconfig | 1 +
arch/alpha/include/asm/pgtable.h | 17 -----------------
arch/alpha/mm/init.c | 22 ++++++++++++++++++++++
3 files changed, 23 insertions(+), 17 deletions(-)
diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 7d0d26b5b3f5..db1c8b329461 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -2,6 +2,7 @@
config ALPHA
bool
default y
+ select ARCH_HAS_VM_GET_PAGE_PROT
select ARCH_32BIT_USTAT_F_TINODE
select ARCH_MIGHT_HAVE_PC_PARPORT
select ARCH_MIGHT_HAVE_PC_SERIO
diff --git a/arch/alpha/include/asm/pgtable.h b/arch/alpha/include/asm/pgtable.h
index 170451fde043..3ea9661c09ff 100644
--- a/arch/alpha/include/asm/pgtable.h
+++ b/arch/alpha/include/asm/pgtable.h
@@ -116,23 +116,6 @@ struct vm_area_struct;
* arch/alpha/mm/fault.c)
*/
/* xwr */
-#define __P000 _PAGE_P(_PAGE_FOE | _PAGE_FOW | _PAGE_FOR)
-#define __P001 _PAGE_P(_PAGE_FOE | _PAGE_FOW)
-#define __P010 _PAGE_P(_PAGE_FOE)
-#define __P011 _PAGE_P(_PAGE_FOE)
-#define __P100 _PAGE_P(_PAGE_FOW | _PAGE_FOR)
-#define __P101 _PAGE_P(_PAGE_FOW)
-#define __P110 _PAGE_P(0)
-#define __P111 _PAGE_P(0)
-
-#define __S000 _PAGE_S(_PAGE_FOE | _PAGE_FOW | _PAGE_FOR)
-#define __S001 _PAGE_S(_PAGE_FOE | _PAGE_FOW)
-#define __S010 _PAGE_S(_PAGE_FOE)
-#define __S011 _PAGE_S(_PAGE_FOE)
-#define __S100 _PAGE_S(_PAGE_FOW | _PAGE_FOR)
-#define __S101 _PAGE_S(_PAGE_FOW)
-#define __S110 _PAGE_S(0)
-#define __S111 _PAGE_S(0)
/*
* pgprot_noncached() is only for infiniband pci support, and a real
diff --git a/arch/alpha/mm/init.c b/arch/alpha/mm/init.c
index 7511723b7669..a155180d7a83 100644
--- a/arch/alpha/mm/init.c
+++ b/arch/alpha/mm/init.c
@@ -280,3 +280,25 @@ mem_init(void)
high_memory = (void *) __va(max_low_pfn * PAGE_SIZE);
memblock_free_all();
}
+
+static const pgprot_t protection_map[16] = {
+ [VM_NONE] = _PAGE_P(_PAGE_FOE | _PAGE_FOW |
+ _PAGE_FOR),
+ [VM_READ] = _PAGE_P(_PAGE_FOE | _PAGE_FOW),
+ [VM_WRITE] = _PAGE_P(_PAGE_FOE),
+ [VM_WRITE | VM_READ] = _PAGE_P(_PAGE_FOE),
+ [VM_EXEC] = _PAGE_P(_PAGE_FOW | _PAGE_FOR),
+ [VM_EXEC | VM_READ] = _PAGE_P(_PAGE_FOW),
+ [VM_EXEC | VM_WRITE] = _PAGE_P(0),
+ [VM_EXEC | VM_WRITE | VM_READ] = _PAGE_P(0),
+ [VM_SHARED] = _PAGE_S(_PAGE_FOE | _PAGE_FOW |
+ _PAGE_FOR),
+ [VM_SHARED | VM_READ] = _PAGE_S(_PAGE_FOE | _PAGE_FOW),
+ [VM_SHARED | VM_WRITE] = _PAGE_S(_PAGE_FOE),
+ [VM_SHARED | VM_WRITE | VM_READ] = _PAGE_S(_PAGE_FOE),
+ [VM_SHARED | VM_EXEC] = _PAGE_S(_PAGE_FOW | _PAGE_FOR),
+ [VM_SHARED | VM_EXEC | VM_READ] = _PAGE_S(_PAGE_FOW),
+ [VM_SHARED | VM_EXEC | VM_WRITE] = _PAGE_S(0),
+ [VM_SHARED | VM_EXEC | VM_WRITE | VM_READ] = _PAGE_S(0)
+};
+DECLARE_VM_GET_PAGE_PROT
--
2.25.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: Anshuman Khandual <anshuman.khandual@arm.com>
To: linux-mm@kvack.org
Cc: hch@infradead.org, christophe.leroy@csgroup.eu,
Anshuman Khandual <anshuman.khandual@arm.com>,
Andrew Morton <akpm@linux-foundation.org>,
linuxppc-dev@lists.ozlabs.org, sparclinux@vger.kernel.org,
x86@kernel.org, openrisc@lists.librecores.org,
linux-xtensa@linux-xtensa.org, linux-csky@vger.kernel.org,
linux-hexagon@vger.kernel.org, linux-parisc@vger.kernel.org,
linux-alpha@vger.kernel.org, linux-riscv@lists.infradead.org,
linux-s390@vger.kernel.org, linux-ia64@vger.kernel.org,
linux-mips@vger.kernel.org, linux-m68k@lists.linux-m68k.org,
linux-snps-arc@lists.infradead.org,
linux-arm-kernel@lists.infradead.org,
linux-um@lists.infradead.org, linux-sh@vger.kernel.org,
linux-kernel@vger.kernel.org, Richard Henderson <rth@twiddle.net>
Subject: [PATCH V5 14/26] alpha/mm: Enable ARCH_HAS_VM_GET_PAGE_PROT
Date: Mon, 27 Jun 2022 04:59:45 +0000 [thread overview]
Message-ID: <20220627045833.1590055-15-anshuman.khandual@arm.com> (raw)
In-Reply-To: <20220627045833.1590055-1-anshuman.khandual@arm.com>
This enables ARCH_HAS_VM_GET_PAGE_PROT on the platform and exports standard
vm_get_page_prot() implementation via DECLARE_VM_GET_PAGE_PROT, which looks
up a private and static protection_map[] array. Subsequently all __SXXX and
__PXXX macros can be dropped which are no longer needed.
Cc: Richard Henderson <rth@twiddle.net>
Cc: linux-alpha@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com>
---
arch/alpha/Kconfig | 1 +
arch/alpha/include/asm/pgtable.h | 17 -----------------
arch/alpha/mm/init.c | 22 ++++++++++++++++++++++
3 files changed, 23 insertions(+), 17 deletions(-)
diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 7d0d26b5b3f5..db1c8b329461 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -2,6 +2,7 @@
config ALPHA
bool
default y
+ select ARCH_HAS_VM_GET_PAGE_PROT
select ARCH_32BIT_USTAT_F_TINODE
select ARCH_MIGHT_HAVE_PC_PARPORT
select ARCH_MIGHT_HAVE_PC_SERIO
diff --git a/arch/alpha/include/asm/pgtable.h b/arch/alpha/include/asm/pgtable.h
index 170451fde043..3ea9661c09ff 100644
--- a/arch/alpha/include/asm/pgtable.h
+++ b/arch/alpha/include/asm/pgtable.h
@@ -116,23 +116,6 @@ struct vm_area_struct;
* arch/alpha/mm/fault.c)
*/
/* xwr */
-#define __P000 _PAGE_P(_PAGE_FOE | _PAGE_FOW | _PAGE_FOR)
-#define __P001 _PAGE_P(_PAGE_FOE | _PAGE_FOW)
-#define __P010 _PAGE_P(_PAGE_FOE)
-#define __P011 _PAGE_P(_PAGE_FOE)
-#define __P100 _PAGE_P(_PAGE_FOW | _PAGE_FOR)
-#define __P101 _PAGE_P(_PAGE_FOW)
-#define __P110 _PAGE_P(0)
-#define __P111 _PAGE_P(0)
-
-#define __S000 _PAGE_S(_PAGE_FOE | _PAGE_FOW | _PAGE_FOR)
-#define __S001 _PAGE_S(_PAGE_FOE | _PAGE_FOW)
-#define __S010 _PAGE_S(_PAGE_FOE)
-#define __S011 _PAGE_S(_PAGE_FOE)
-#define __S100 _PAGE_S(_PAGE_FOW | _PAGE_FOR)
-#define __S101 _PAGE_S(_PAGE_FOW)
-#define __S110 _PAGE_S(0)
-#define __S111 _PAGE_S(0)
/*
* pgprot_noncached() is only for infiniband pci support, and a real
diff --git a/arch/alpha/mm/init.c b/arch/alpha/mm/init.c
index 7511723b7669..a155180d7a83 100644
--- a/arch/alpha/mm/init.c
+++ b/arch/alpha/mm/init.c
@@ -280,3 +280,25 @@ mem_init(void)
high_memory = (void *) __va(max_low_pfn * PAGE_SIZE);
memblock_free_all();
}
+
+static const pgprot_t protection_map[16] = {
+ [VM_NONE] = _PAGE_P(_PAGE_FOE | _PAGE_FOW |
+ _PAGE_FOR),
+ [VM_READ] = _PAGE_P(_PAGE_FOE | _PAGE_FOW),
+ [VM_WRITE] = _PAGE_P(_PAGE_FOE),
+ [VM_WRITE | VM_READ] = _PAGE_P(_PAGE_FOE),
+ [VM_EXEC] = _PAGE_P(_PAGE_FOW | _PAGE_FOR),
+ [VM_EXEC | VM_READ] = _PAGE_P(_PAGE_FOW),
+ [VM_EXEC | VM_WRITE] = _PAGE_P(0),
+ [VM_EXEC | VM_WRITE | VM_READ] = _PAGE_P(0),
+ [VM_SHARED] = _PAGE_S(_PAGE_FOE | _PAGE_FOW |
+ _PAGE_FOR),
+ [VM_SHARED | VM_READ] = _PAGE_S(_PAGE_FOE | _PAGE_FOW),
+ [VM_SHARED | VM_WRITE] = _PAGE_S(_PAGE_FOE),
+ [VM_SHARED | VM_WRITE | VM_READ] = _PAGE_S(_PAGE_FOE),
+ [VM_SHARED | VM_EXEC] = _PAGE_S(_PAGE_FOW | _PAGE_FOR),
+ [VM_SHARED | VM_EXEC | VM_READ] = _PAGE_S(_PAGE_FOW),
+ [VM_SHARED | VM_EXEC | VM_WRITE] = _PAGE_S(0),
+ [VM_SHARED | VM_EXEC | VM_WRITE | VM_READ] = _PAGE_S(0)
+};
+DECLARE_VM_GET_PAGE_PROT
--
2.25.1
next prev parent reply other threads:[~2022-06-27 5:01 UTC|newest]
Thread overview: 253+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-27 4:57 [PATCH V5 00/26] mm/mmap: Drop __SXXX/__PXXX macros from across platforms Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:57 ` [PATCH V5 02/26] mm/mmap: Define DECLARE_VM_GET_PAGE_PROT Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 4:57 ` [PATCH V5 01/26] mm/mmap: Build protect protection_map[] with __P000 Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 4:57 ` [PATCH V5 03/26] powerpc/mm: Move protection_map[] inside the platform Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 4:57 ` [PATCH V5 04/26] sparc/mm: " Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 17:14 ` Sam Ravnborg
2022-06-27 17:14 ` Sam Ravnborg
2022-06-27 17:14 ` Sam Ravnborg
2022-06-27 17:14 ` Sam Ravnborg
2022-06-27 17:14 ` Sam Ravnborg
2022-06-27 17:14 ` Sam Ravnborg
2022-06-27 17:14 ` Sam Ravnborg
2022-06-28 3:12 ` Anshuman Khandual
2022-06-28 3:24 ` Anshuman Khandual
2022-06-28 3:12 ` Anshuman Khandual
2022-06-28 3:12 ` Anshuman Khandual
2022-06-28 3:12 ` Anshuman Khandual
2022-06-28 3:12 ` Anshuman Khandual
2022-06-28 3:12 ` Anshuman Khandual
2022-06-27 4:57 ` [PATCH V5 05/26] arm64/mm: " Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 06/26] x86/mm: " Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 07/26] mm/mmap: Build protect protection_map[] with ARCH_HAS_VM_GET_PAGE_PROT Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 5:49 ` Christophe Leroy
2022-06-27 4:58 ` [PATCH V5 08/26] microblaze/mm: Enable ARCH_HAS_VM_GET_PAGE_PROT Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 09/26] loongarch/mm: " Anshuman Khandual
2022-06-27 4:59 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 10/26] openrisc/mm: " Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 11/26] xtensa/mm: " Anshuman Khandual
2022-06-27 4:59 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 12/26] hexagon/mm: " Anshuman Khandual
2022-06-27 4:59 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 14:32 ` Brian Cain
2022-06-27 14:32 ` Brian Cain
2022-06-27 14:32 ` Brian Cain
2022-06-27 14:32 ` Brian Cain
2022-06-27 14:32 ` Brian Cain
2022-06-27 14:32 ` Brian Cain
2022-06-27 14:32 ` Brian Cain
2022-06-27 4:58 ` [PATCH V5 13/26] parisc/mm: " Anshuman Khandual
2022-06-27 4:59 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual [this message]
2022-06-27 4:59 ` [PATCH V5 14/26] alpha/mm: " Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 15/26] nios2/mm: " Anshuman Khandual
2022-06-27 4:59 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 16/26] riscv/mm: " Anshuman Khandual
2022-06-27 5:10 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 17/26] csky/mm: " Anshuman Khandual
2022-06-27 5:10 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 18/26] s390/mm: " Anshuman Khandual
2022-06-27 5:10 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 19/26] ia64/mm: " Anshuman Khandual
2022-06-27 5:10 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 20/26] mips/mm: " Anshuman Khandual
2022-06-27 5:10 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 21/26] m68k/mm: " Anshuman Khandual
2022-06-27 5:10 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 22/26] arc/mm: " Anshuman Khandual
2022-06-27 5:10 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 23/26] arm/mm: " Anshuman Khandual
2022-06-27 5:10 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 24/26] um/mm: " Anshuman Khandual
2022-06-27 5:10 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 25/26] sh/mm: " Anshuman Khandual
2022-06-27 5:10 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` [PATCH V5 26/26] mm/mmap: Drop ARCH_HAS_VM_GET_PAGE_PROT Anshuman Khandual
2022-06-27 5:10 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 4:58 ` Anshuman Khandual
2022-06-27 5:50 ` Christophe Leroy
2022-06-27 5:50 ` Christophe Leroy
2022-06-27 5:50 ` Christophe Leroy
2022-06-27 5:50 ` Christophe Leroy
2022-06-27 5:50 ` Christophe Leroy
2022-06-27 5:50 ` Christophe Leroy
2022-06-27 5:50 ` Christophe Leroy
2022-06-27 5:50 ` Christophe Leroy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220627045833.1590055-15-anshuman.khandual@arm.com \
--to=anshuman.khandual@arm.com \
--cc=akpm@linux-foundation.org \
--cc=christophe.leroy@csgroup.eu \
--cc=hch@infradead.org \
--cc=linux-alpha@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-csky@vger.kernel.org \
--cc=linux-hexagon@vger.kernel.org \
--cc=linux-ia64@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-m68k@lists.linux-m68k.org \
--cc=linux-mips@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-parisc@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=linux-s390@vger.kernel.org \
--cc=linux-sh@vger.kernel.org \
--cc=linux-snps-arc@lists.infradead.org \
--cc=linux-um@lists.infradead.org \
--cc=linux-xtensa@linux-xtensa.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=openrisc@lists.librecores.org \
--cc=rth@twiddle.net \
--cc=sparclinux@vger.kernel.org \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.