From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marcelo Tosatti Subject: KVM: x86: zero kvmclock_offset when vcpu0 initializes kvmclock system MSR Date: Thu, 21 May 2015 21:40:08 -0300 Message-ID: <20150522004008.GA5242@amt.cnet> References: <55528A04.2060404@oracle.com> <20150518223936.GA4486@amt.cnet> <555A79A5.608@oracle.com> <20150519001331.GA15517@amt.cnet> <555A99C1.6090300@oracle.com> <555A9C2F.7080109@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: KVM General , LKML , Paolo Bonzini , lcapitulino@redhat.com To: Sasha Levin Return-path: Received: from mx1.redhat.com ([209.132.183.28]:54566 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755042AbbEVAmV (ORCPT ); Thu, 21 May 2015 20:42:21 -0400 Content-Disposition: inline In-Reply-To: <555A9C2F.7080109@oracle.com> Sender: kvm-owner@vger.kernel.org List-ID: Initialize kvmclock base, on kvmclock system MSR write time, so that the guest sees kvmclock counting from zero. This matches baremetal behaviour when kvmclock in guest sets sched clock stable. Signed-off-by: Marcelo Tosatti diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c index cc2c759..ea40d24 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c @@ -2188,6 +2188,8 @@ int kvm_set_msr_common(struct kvm_vcpu *vcpu, struct msr_data *msr_info) &vcpu->requests); ka->boot_vcpu_runs_old_kvmclock = tmp; + + ka->kvmclock_offset = get_kernel_ns(); } vcpu->arch.time = data;