diff options
author | Mark Salyzyn <salyzyn@android.com> | 2015-10-13 17:30:51 -0400 |
---|---|---|
committer | Catalin Marinas <catalin.marinas@arm.com> | 2015-10-16 09:55:49 -0400 |
commit | 77f3228f771506bac4b1308571a62c769552f8f8 (patch) | |
tree | cb0f9265cb97508e8d364f1a1a659eb87b84ac8a /arch/arm64/kernel/entry.S | |
parent | 7db743c6d8bb7a08396a0ea3084fb9f8ebccc577 (diff) |
arm64: AArch32 user space PC alignment exception
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>
Diffstat (limited to 'arch/arm64/kernel/entry.S')
-rw-r--r-- | arch/arm64/kernel/entry.S | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm64/kernel/entry.S b/arch/arm64/kernel/entry.S index 4306c937b1ff..7ed3d75f6304 100644 --- a/arch/arm64/kernel/entry.S +++ b/arch/arm64/kernel/entry.S | |||
@@ -430,6 +430,8 @@ el0_sync_compat: | |||
430 | b.eq el0_fpsimd_acc | 430 | b.eq el0_fpsimd_acc |
431 | cmp x24, #ESR_ELx_EC_FP_EXC32 // FP/ASIMD exception | 431 | cmp x24, #ESR_ELx_EC_FP_EXC32 // FP/ASIMD exception |
432 | b.eq el0_fpsimd_exc | 432 | b.eq el0_fpsimd_exc |
433 | cmp x24, #ESR_ELx_EC_PC_ALIGN // pc alignment exception | ||
434 | b.eq el0_sp_pc | ||
433 | cmp x24, #ESR_ELx_EC_UNKNOWN // unknown exception in EL0 | 435 | cmp x24, #ESR_ELx_EC_UNKNOWN // unknown exception in EL0 |
434 | b.eq el0_undef | 436 | b.eq el0_undef |
435 | cmp x24, #ESR_ELx_EC_CP15_32 // CP15 MRC/MCR trap | 437 | cmp x24, #ESR_ELx_EC_CP15_32 // CP15 MRC/MCR trap |