summaryrefslogtreecommitdiffstats
path: root/arch/arm64/include/uapi
diff options
context:
space:
mode:
authorChristoffer Dall <christoffer.dall@arm.com>2019-10-11 13:07:06 +0200
committerMarc Zyngier <maz@kernel.org>2019-10-21 18:59:51 +0100
commitda345174ceca052469e4775e4ae263b5f27a9355 (patch)
treeff6d547063fac8b6e847edd70a987dfbb965d613 /arch/arm64/include/uapi
parentc726200dd106d4c58a281eea7159b8ba28a4ab34 (diff)
downloadlinux-da345174ceca052469e4775e4ae263b5f27a9355.tar.gz
linux-da345174ceca052469e4775e4ae263b5f27a9355.tar.bz2
linux-da345174ceca052469e4775e4ae263b5f27a9355.zip
KVM: arm/arm64: Allow user injection of external data aborts
In some scenarios, such as buggy guest or incorrect configuration of the VMM and firmware description data, userspace will detect a memory access to a portion of the IPA, which is not mapped to any MMIO region. For this purpose, the appropriate action is to inject an external abort to the guest. The kernel already has functionality to inject an external abort, but we need to wire up a signal from user space that lets user space tell the kernel to do this. It turns out, we already have the set event functionality which we can perfectly reuse for this. Signed-off-by: Christoffer Dall <christoffer.dall@arm.com> Signed-off-by: Marc Zyngier <maz@kernel.org>
Diffstat (limited to 'arch/arm64/include/uapi')
-rw-r--r--arch/arm64/include/uapi/asm/kvm.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/arm64/include/uapi/asm/kvm.h b/arch/arm64/include/uapi/asm/kvm.h
index 67c21f9bdbad..d49c17a80491 100644
--- a/arch/arm64/include/uapi/asm/kvm.h
+++ b/arch/arm64/include/uapi/asm/kvm.h
@@ -164,8 +164,9 @@ struct kvm_vcpu_events {
struct {
__u8 serror_pending;
__u8 serror_has_esr;
+ __u8 ext_dabt_pending;
/* Align it to 8 bytes */
- __u8 pad[6];
+ __u8 pad[5];
__u64 serror_esr;
} exception;
__u32 reserved[12];