From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julian Stecklina Subject: [PATCH] KVM VMX: Make register state after reset conform to specification. Date: Thu, 29 Nov 2012 15:38:51 +0100 Message-ID: <1354199931-27026-1-git-send-email-jsteckli@os.inf.tu-dresden.de> References: <87y5hkjydx.fsf@os.inf.tu-dresden.de> Cc: Julian Stecklina To: kvm@vger.kernel.org Return-path: Received: from os.inf.tu-dresden.de ([141.76.48.99]:34495 "EHLO os.inf.tu-dresden.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753670Ab2K2PKb (ORCPT ); Thu, 29 Nov 2012 10:10:31 -0500 In-Reply-To: <87y5hkjydx.fsf@os.inf.tu-dresden.de> Sender: kvm-owner@vger.kernel.org List-ID: Signed-off-by: Julian Stecklina --- arch/x86/kvm/vmx.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c index ff66a3b..ec5a3b3 100644 --- a/arch/x86/kvm/vmx.c +++ b/arch/x86/kvm/vmx.c @@ -3948,7 +3948,6 @@ static int vmx_vcpu_reset(struct kvm_vcpu *vcpu) vmx->soft_vnmi_blocked = 0; - vmx->vcpu.arch.regs[VCPU_REGS_RDX] = get_rdx_init_val(); kvm_set_cr8(&vmx->vcpu, 0); msr = 0xfee00000 | MSR_IA32_APICBASE_ENABLE; if (kvm_vcpu_is_bsp(&vmx->vcpu)) @@ -3999,6 +3998,14 @@ static int vmx_vcpu_reset(struct kvm_vcpu *vcpu) kvm_rip_write(vcpu, 0xfff0); else kvm_rip_write(vcpu, 0); + + kvm_register_write(vcpu, VCPU_REGS_RAX, 0); + kvm_register_write(vcpu, VCPU_REGS_RBX, 0); + kvm_register_write(vcpu, VCPU_REGS_RCX, 0); + kvm_register_write(vcpu, VCPU_REGS_RDX, get_rdx_init_val()); + kvm_register_write(vcpu, VCPU_REGS_RSI, 0); + kvm_register_write(vcpu, VCPU_REGS_RDI, 0); + kvm_register_write(vcpu, VCPU_REGS_RBP, 0); kvm_register_write(vcpu, VCPU_REGS_RSP, 0); vmcs_writel(GUEST_DR7, 0x400); -- 1.7.11.7