From: Roger Pau Monné Date: Thu, 28 May 2015 08:56:08 +0000 (+0200) Subject: x86/pvh: disable posted interrupts X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~3159^2~3 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=cf6b3ccf28faee01a078311fcfe671148c81ea75;p=xen.git x86/pvh: disable posted interrupts Enabling posted interrupts requires the virtual interrupt delivery feature, which is disabled for PVH guests, so make sure posted interrupts are also disabled or else vmlaunch will fail. Signed-off-by: Roger Pau Monné Reported-and-Tested-by: Lars Eggert Acked-by: Kevin Tian --- diff --git a/xen/arch/x86/hvm/vmx/vmcs.c b/xen/arch/x86/hvm/vmx/vmcs.c index 877ec10eb7..3aff3656a3 100644 --- a/xen/arch/x86/hvm/vmx/vmcs.c +++ b/xen/arch/x86/hvm/vmx/vmcs.c @@ -976,6 +976,10 @@ static int construct_vmcs(struct vcpu *v) | SECONDARY_EXEC_VIRTUAL_INTR_DELIVERY); v->arch.hvm_vmx.exec_control &= ~CPU_BASED_TPR_SHADOW; + /* In turn, disable posted interrupts. */ + __vmwrite(PIN_BASED_VM_EXEC_CONTROL, + vmx_pin_based_exec_control & ~PIN_BASED_POSTED_INTERRUPT); + /* Unrestricted guest (real mode for EPT) */ v->arch.hvm_vmx.secondary_exec_control &= ~SECONDARY_EXEC_UNRESTRICTED_GUEST;