linux/arch/arm64/kvm
Christoffer Dall f7fa034dc8 arm/arm64: KVM: Clarify KVM_ARM_VCPU_INIT ABI
It is not clear that this ioctl can be called multiple times for a given
vcpu.  Userspace already does this, so clarify the ABI.

Also specify that userspace is expected to always make secondary and
subsequent calls to the ioctl with the same parameters for the VCPU as
the initial call (which userspace also already does).

Add code to check that userspace doesn't violate that ABI in the future,
and move the kvm_vcpu_set_target() function which is currently
duplicated between the 32-bit and 64-bit versions in guest.c to a common
static function in arm.c, shared between both architectures.

Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2014-12-13 14:15:26 +01:00
..
emulate.c arm64: KVM: 32bit conditional execution emulation 2013-06-12 16:42:15 +01:00
guest.c arm/arm64: KVM: Clarify KVM_ARM_VCPU_INIT ABI 2014-12-13 14:15:26 +01:00
handle_exit.c arm/arm64: KVM: Complete WFI/WFE instructions 2014-08-29 11:53:53 +02:00
hyp-init.S ARM/ARM64: KVM: Nuke Hyp-mode tlbs before enabling MMU 2014-08-29 11:53:26 +02:00
hyp.S arm64: KVM: enable trapping of all debug registers 2014-07-11 04:57:46 -07:00
inject_fault.c arm64: KVM: 32bit guest fault injection 2013-06-12 16:42:18 +01:00
Kconfig arm64: KVM: Add Kconfig option for max VCPUs per-Guest 2013-12-28 10:28:50 +00:00
Makefile arm64: KVM: vgic: enable GICv2 emulation on top on GICv3 hardware 2014-07-11 04:57:37 -07:00
regmap.c arm64: KVM: 32bit GP register access 2013-06-12 16:42:14 +01:00
reset.c arm64: KVM: enable initialization of a 32bit vcpu 2013-06-12 16:42:18 +01:00
sys_regs_generic_v8.c arm64: KVM: Enable minimalistic support for Cortex-A53 2014-05-25 20:05:30 +02:00
sys_regs.c KVM: ARM/arm64: avoid returning negative error code as bool 2014-08-27 22:49:45 +02:00
sys_regs.h arm64: KVM: allows discrimination of AArch32 sysreg access 2014-03-03 01:15:21 +00:00
vgic-v2-switch.S arm/arm64: KVM: Fix BE accesses to GICv2 EISR and ELRSR regs 2014-10-16 10:57:41 +02:00
vgic-v3-switch.S arm64: KVM: GICv3: move system register access to msr_s/mrs_s 2014-07-31 15:52:14 +02:00