From: Zachary Amsden Date: Fri, 20 Aug 2010 08:07:18 +0000 (-1000) Subject: KVM: x86: Fix SVM VMCB reset X-Git-Tag: v2.6.34.8~26 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=d90a1cae6faee4835d8b5b534d86db9ab5864a7a;p=thirdparty%2Fkernel%2Fstable.git KVM: x86: Fix SVM VMCB reset commit 58877679fd393d3ef71aa383031ac7817561463d upstream. On reset, VMCB TSC should be set to zero. Instead, code was setting tsc_offset to zero, which passes through the underlying TSC. Signed-off-by: Zachary Amsden Signed-off-by: Marcelo Tosatti Signed-off-by: Paul Gortmaker --- diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c index 49dabc138f5c8..508e1362032cc 100644 --- a/arch/x86/kvm/svm.c +++ b/arch/x86/kvm/svm.c @@ -632,7 +632,7 @@ static void init_vmcb(struct vcpu_svm *svm) control->iopm_base_pa = iopm_base; control->msrpm_base_pa = __pa(svm->msrpm); - control->tsc_offset = 0; + control->tsc_offset = 0-native_read_tsc(); control->int_ctl = V_INTR_MASKING_MASK; init_seg(&save->es);