Subject pkeys-based page table hardening
Author kevin.brodsky@arm.com
Date 2026-08-18 14:08:43 +0000 UTC
Version
Cc akpm@linux-foundation.org broonie@kernel.org catalin.marinas@arm.com dave.hansen@linux.intel.com david@kernel.org iweiny@kernel.org jannh@google.com jeffxu@chromium.org joey.gouly@arm.com kees@kernel.org kevin.brodsky@arm.com linu.cherian@arm.com linusw@kernel.org linux-arm-kernel@lists.infradead.org linux-hardening@vger.kernel.org linux-mm@kvack.org ljs@kernel.org luto@kernel.org maz@kernel.org mbland@motorola.com peterz@infradead.org pierre.langlois@arm.com ptosi@google.com qperret@google.com rick.p.edgecombe@intel.com rppt@kernel.org ryan.roberts@arm.com tglx@kernel.org vbabka@kernel.org will@kernel.org willy@infradead.org x86@kernel.org yang@os.amperecomputing.com yeoreum.yun@arm.com
Patches (25)
Name Content [All]
[PATCH RFC v9 01/25] mm: Introduce kpkeys [Body]
[PATCH RFC v9 02/25] set_memory: Introduce set_memory_pkey() stub [Body]
[PATCH RFC v9 03/25] arm64: mm: Enable overlays for all EL1 indirect permissions [Body]
[PATCH RFC v9 04/25] arm64: Introduce por_elx_set_pkey_perms() helper [Body]
[PATCH RFC v9 05/25] arm64: Implement asm/kpkeys.h using POE [Body]
[PATCH RFC v9 06/25] arm64: set_memory: Implement set_memory_pkey() [Body]
[PATCH RFC v9 07/25] arm64: Context-switch POR_EL1 [Body]
[PATCH RFC v9 08/25] arm64: Initialize POR_EL1 register on cpu_resume() [Body]
[PATCH RFC v9 09/25] arm64: Enable kpkeys [Body]
[PATCH RFC v9 10/25] memblock: Move INIT_MEMBLOCK_* macros to header [Body]
[PATCH RFC v9 11/25] mm: kpkeys: Introduce kpkeys_hardened_pgtables feature [Body]
[PATCH RFC v9 12/25] mm: kpkeys: Protect regular page tables [Body]
[PATCH RFC v9 13/25] mm: kpkeys: Introduce early page table allocator [Body]
[PATCH RFC v9 14/25] mm: kpkeys: Protect vmemmap page tables [Body]
[PATCH RFC v9 15/25] mm: kpkeys: Introduce hook for protecting static page tables [Body]
[PATCH RFC v9 16/25] arm64: kpkeys: Implement arch_supports_kpkeys_early() [Body]
[PATCH RFC v9 17/25] arm64: kpkeys: Support KPKEYS_CTX_PGTABLES [Body]
[PATCH RFC v9 18/25] arm64: kpkeys: Ensure the linear map can be modified [Body]
[PATCH RFC v9 19/25] arm64: kpkeys: Protect early page tables [Body]
[PATCH RFC v9 20/25] arm64: mm: Map kernel image alias of init_pg_dir read-only [Body]
[PATCH RFC v9 21/25] arm64: kpkeys: Protect init_pg_dir [Body]
[PATCH RFC v9 22/25] arm64: kpkeys: Guard page table writes [Body]
[PATCH RFC v9 23/25] arm64: kpkeys: Batch KPKEYS_CTX_PGTABLES switches [Body]
[PATCH RFC v9 24/25] arm64: kpkeys: Enable kpkeys_hardened_pgtables support [Body]
[PATCH RFC v9 25/25] mm: Add basic tests for kpkeys_hardened_pgtables [Body]
Series Summary
Passed
✓ All tests passed. No findings.
Sessions
Session 2026-08-18
Passed
ID (for dev) 2c9d3d0c-7324-48ef-b6cd-2012f27aa1ed
Status finished
Triaged OK [Log] [Trajectory]
Execution Log [Link]
Test Base Patched Verdict
[KASAN] Build Base 8d3ae59288f1e7d58d76558a6ee96d533bc5019f [Config] passed [Log]
[KASAN] Boot test: Base 8d3ae59288f1e7d58d76558a6ee96d533bc5019f [Config] passed [Log]
[KASAN] Build Patched 8d3ae59288f1e7d58d76558a6ee96d533bc5019f [Config] [patched] passed [Log]
[KASAN] Boot test: Patched 8d3ae59288f1e7d58d76558a6ee96d533bc5019f [Config] [patched] passed [Log]
[KASAN] Fuzz 8d3ae59288f1e7d58d76558a6ee96d533bc5019f [Config] 8d3ae59288f1e7d58d76558a6ee96d533bc5019f [Config] [patched] passed [Log] [Artifacts]