arm64: errata: Add workaround for Cortex-A76 erratum #1463225
authorWill Deacon <will.deacon@arm.com>
Mon, 29 Apr 2019 12:03:57 +0000 (13:03 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 31 May 2019 13:46:03 +0000 (06:46 -0700)
commit2eefb4a3894ef33a92615cfb6f391025d245b550
treed7127d0e213a237170774b57c2a5d88c8e55f7ee
parent8783c4128c371668e401eee2f2ba3918c6211b81
arm64: errata: Add workaround for Cortex-A76 erratum #1463225

commit 969f5ea627570e91c9d54403287ee3ed657f58fe upstream.

Revisions of the Cortex-A76 CPU prior to r4p0 are affected by an erratum
that can prevent interrupts from being taken when single-stepping.

This patch implements a software workaround to prevent userspace from
effectively being able to disable interrupts.

Cc: <stable@vger.kernel.org>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Documentation/arm64/silicon-errata.txt
arch/arm64/Kconfig
arch/arm64/include/asm/cpucaps.h
arch/arm64/include/asm/cputype.h
arch/arm64/kernel/cpu_errata.c
arch/arm64/kernel/syscall.c
arch/arm64/mm/fault.c