]> git.baikalelectronics.ru Git - kernel.git/commit
KVM: arm/arm64: Allow user injection of external data aborts
authorChristoffer Dall <christoffer.dall@arm.com>
Fri, 11 Oct 2019 11:07:06 +0000 (13:07 +0200)
committerMarc Zyngier <maz@kernel.org>
Mon, 21 Oct 2019 17:59:51 +0000 (18:59 +0100)
commiteea0b46b66e858205a2c7080145a2264c2769555
treeff6d547063fac8b6e847edd70a987dfbb965d613
parent3796014fcf8e66489da5e8f5b8aa673eac3b0f4d
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>
Documentation/virt/kvm/api.txt
arch/arm/include/uapi/asm/kvm.h
arch/arm/kvm/guest.c
arch/arm64/include/uapi/asm/kvm.h
arch/arm64/kvm/guest.c
arch/arm64/kvm/inject_fault.c
include/uapi/linux/kvm.h
virt/kvm/arm/arm.c