Message ID | 20241009142222.1489500-2-christian.bruel@foss.st.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Fix protection fault during kernel relocation | expand |
diff --git a/arch/arm/boot/compressed/head.S b/arch/arm/boot/compressed/head.S index 9f406e9c0ea6..d4ee205f3b9c 100644 --- a/arch/arm/boot/compressed/head.S +++ b/arch/arm/boot/compressed/head.S @@ -888,7 +888,7 @@ __armv7_mmu_cache_on: ARM_BE8( orr r0, r0, #1 << 25 ) @ big-endian page tables mrcne p15, 0, r6, c2, c0, 2 @ read ttb control reg orrne r0, r0, #1 @ MMU enabled - movne r1, #0xfffffffd @ domain 0 = client + movne r1, #0xffffffff @ domains = Manager bic r6, r6, #1 << 31 @ 32-bit translation system bic r6, r6, #(7 << 0) | (1 << 4) @ use only ttbr0 mcrne p15, 0, r3, c2, c0, 0 @ load page table pointer
EL1 exec access with read/write permissions result in a Permission Fault if SCTLR.WXN or SCTLR.UWXN is set by the trusted firmware. Since XN attribute is not checked for domains marked a Manager, change the domain used for kernel relocation. Signed-off-by: Christian Bruel <christian.bruel@foss.st.com> --- arch/arm/boot/compressed/head.S | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)