arm64: AArch32 user space PC alignment exception
authorMark Salyzyn <salyzyn@android.com>
Tue, 13 Oct 2015 21:30:51 +0000 (14:30 -0700)
committerCatalin Marinas <catalin.marinas@arm.com>
Fri, 16 Oct 2015 13:55:49 +0000 (14:55 +0100)
ARMv7 does not have a PC alignment exception. ARMv8 AArch32
user space however can produce a PC alignment exception. Add
handler so that we do not dump an unexpected stack trace in
the logs.

Signed-off-by: Mark Salyzyn <salyzyn@android.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/kernel/entry.S

index 4306c937b1ffc4fb224f88d176d30e8fb65a3c70..7ed3d75f630418b56a1add8c91b308b48cd69774 100644 (file)
@@ -430,6 +430,8 @@ el0_sync_compat:
        b.eq    el0_fpsimd_acc
        cmp     x24, #ESR_ELx_EC_FP_EXC32       // FP/ASIMD exception
        b.eq    el0_fpsimd_exc
+       cmp     x24, #ESR_ELx_EC_PC_ALIGN       // pc alignment exception
+       b.eq    el0_sp_pc
        cmp     x24, #ESR_ELx_EC_UNKNOWN        // unknown exception in EL0
        b.eq    el0_undef
        cmp     x24, #ESR_ELx_EC_CP15_32        // CP15 MRC/MCR trap