summaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorMarc Zyngier <marc.zyngier@arm.com>2016-09-06 15:02:07 +0200
committerChristoffer Dall <christoffer.dall@linaro.org>2016-09-08 12:53:00 +0200
commit395ea79ebe55d6b01bb8f67bfad0550e6b7cd6d6 (patch)
tree15317f37c5950ba481dfa1f46192babc8619740f /arch/arm
parentarm64: KVM: Inject a Virtual SError if it was pending (diff)
downloadlinux-395ea79ebe55d6b01bb8f67bfad0550e6b7cd6d6.tar.xz
linux-395ea79ebe55d6b01bb8f67bfad0550e6b7cd6d6.zip
arm64: KVM: Handle async aborts delivered while at EL2
If EL1 generates an asynchronous abort and then traps into EL2 before the abort has been delivered, we may end-up with the abort firing at the worse possible place: on the host. In order to avoid this, it is necessary to take the abort at EL2, by clearing the PSTATE.A bit. In order to survive this abort, we do it at a point where we're in a known state with respect to the world switch, and handle the resulting exception, overloading the exit code in the process. Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Diffstat (limited to 'arch/arm')
0 files changed, 0 insertions, 0 deletions