Patch "arm/arm64: KVM: Correct KVM_ARM_VCPU_INIT power off option" has been added to the 3.14-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
arm/arm64: KVM: Correct KVM_ARM_VCPU_INIT power off option
to the 3.14-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
arm-arm64-kvm-correct-kvm_arm_vcpu_init-power-off-option.patch
and it can be found in the queue-3.14 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
3ad8b3de526a76fbe9466b366059e4958957b88fMon Sep 17 00:00:00 2001
From: Christoffer Dall <[email protected]>
Date: Thu, 16 Oct 2014 16:14:43 +0200
Subject: arm/arm64: KVM: Correct KVM_ARM_VCPU_INIT power off option
From: Christoffer Dall <[email protected]>
commit 3ad8b3de526a76fbe9466b366059e4958957b88f upstream.
The implementation of KVM_ARM_VCPU_INIT is currently not doing what userspace expects, namely making sure that a vcpu which may have been turned off using PSCI is returned to its initial state, which would be powered on if userspace does not set the KVM_ARM_VCPU_POWER_OFF flag.
Implement the expected functionality and clarify the ABI.
--- Documentation/virtual/kvm/api.txt | 3 ++- arch/arm/kvm/arm.c | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-)
Documentation/virtual/kvm/api.txt +2 -1
@@ -2344,7 +2344,8 @@ should be created before this ioctl is i Possible features: - KVM_ARM_VCPU_POWER_OFF: Starts the CPU in a power-off state. - Depends on KVM_CAP_ARM_PSCI. + Depends on KVM_CAP_ARM_PSCI. If not set, the CPU will be powered on + and execute guest code when KVM_RUN is called. - KVM_ARM_VCPU_EL1_32BIT: Starts the CPU in a 32bit mode. Depends on KVM_CAP_ARM_EL1_32BIT (arm64 only).
arch/arm/kvm/arm.c +2 -0
@@ -680,6 +680,8 @@ static int kvm_arch_vcpu_ioctl_vcpu_init*/ if (test_bit (KVM_ARM_VCPU_POWER_OFF , vcpu->arch.features)) vcpu->arch.pause = true; +else + vcpu->arch.pause = false;return 0 ; }
Patches currently in stable-queue which might be from [email protected] are
queue-3.14/arm-arm64-kvm-ensure-memslots-are-within-kvm_phys_size.patch queue-3.14/arm-arm64-kvm-don-t-clear-the-vcpu_power_off-flag.patch queue-3.14/arm-arm64-kvm-correct-kvm_arm_vcpu_init-power-off-option.patch queue-3.14/arm-arm64-kvm-don-t-allow-creating-vcpus-after-vgic_initialized.patch queue-3.14/arm-arm64-kvm-fix-potential-null-dereference-in.patch queue-3.14/arm64-kvm-fix-unmapping-with-48-bit-vas.patch queue-3.14/arm-arm64-kvm-fix-set_clear_sgi_pend_reg-offset.patch queue-3.14/arm-kvm-strict_mm_typechecks-fix-for-user_mem_abort.patch queue-3.14/arm-arm64-kvm-fix-use-of-wnr-bit-in-kvm_is_write_fault.patch queue-3.14/arm-kvm-fix-cpu-hotplug.patch queue-3.14/arm-arm64-kvm-fix-vttbr_baddr_mask-and-pgd-alloc.patch queue-3.14/arm-arm64-kvm-introduce-stage2_unmap_vm.patch queue-3.14/arm-arm64-kvm-vgic-fix-error-code-in-kvm_vgic_create.patch queue-3.14/kvm-arm-vgic-plug-irq-injection-race.patch queue-3.14/arm-arm64-kvm-reset-the-hcr-on-each-vcpu-when-resetting-the.patch