diff options
author | Catalin Marinas <catalin.marinas@arm.com> | 2013-11-21 18:46:17 +0400 |
---|---|---|
committer | Catalin Marinas <catalin.marinas@arm.com> | 2013-11-25 20:44:05 +0400 |
commit | b3bf6aa7e79117419f7eddccf0b7af4382d823c3 (patch) | |
tree | 0f055403c68a07fe20673c15f90dbcd4db8965f8 /arch/arm64/include/asm | |
parent | df503ba7f653c590b475ab80bde788edf5af70d5 (diff) | |
download | linux-b3bf6aa7e79117419f7eddccf0b7af4382d823c3.tar.xz |
arm64: Unmask asynchronous aborts when in kernel mode
The asynchronous aborts are generally fatal for the kernel but they can
be masked via the pstate A bit. If a system error happens while in
kernel mode, it won't be visible until returning to user space. This
patch enables this kind of abort early to help identifying the cause.
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm64/include/asm')
-rw-r--r-- | arch/arm64/include/asm/irqflags.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm64/include/asm/irqflags.h b/arch/arm64/include/asm/irqflags.h index aa11943b8502..b2fcfbc51ecc 100644 --- a/arch/arm64/include/asm/irqflags.h +++ b/arch/arm64/include/asm/irqflags.h @@ -56,6 +56,9 @@ static inline void arch_local_irq_disable(void) #define local_fiq_enable() asm("msr daifclr, #1" : : : "memory") #define local_fiq_disable() asm("msr daifset, #1" : : : "memory") +#define local_async_enable() asm("msr daifclr, #4" : : : "memory") +#define local_async_disable() asm("msr daifset, #4" : : : "memory") + /* * Save the current interrupt enable state. */ |