From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paolo Bonzini Subject: Re: [PATCH kvm-unit-tests] x86: use new kvmclock MSRs Date: Wed, 9 Mar 2016 11:53:10 +0100 Message-ID: <56E00096.6@redhat.com> References: <1457484503-90018-1-git-send-email-dmatlack@google.com> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Cc: mtosatti@redhat.com To: David Matlack , kvm@vger.kernel.org Return-path: Received: from mx1.redhat.com ([209.132.183.28]:58969 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752408AbcCIKxN (ORCPT ); Wed, 9 Mar 2016 05:53:13 -0500 In-Reply-To: <1457484503-90018-1-git-send-email-dmatlack@google.com> Sender: kvm-owner@vger.kernel.org List-ID: On 09/03/2016 01:48, David Matlack wrote: > 54750f2cf0 (KVM: x86: workaround SuSE's 2.6.16 pvclock vs masterclock > issue) disables masterclock if the boot VCPU uses the old kvmclock > system time MSR. This caused kvmclock_test to start running with > masterclock disabled. > > Since the old kvmclock MSRs are deprecated, and their usage disables > masterclock, switch to using the new kvmclock MSRs instead. > > Signed-off-by: David Matlack > --- > x86/kvmclock.c | 6 +++--- > x86/kvmclock.h | 4 ++-- > 2 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/x86/kvmclock.c b/x86/kvmclock.c > index 588d8ec..327e60d 100644 > --- a/x86/kvmclock.c > +++ b/x86/kvmclock.c > @@ -229,12 +229,12 @@ void kvm_clock_init(void *data) > struct pvclock_vcpu_time_info *hvc = &hv_clock[index]; > > printf("kvm-clock: cpu %d, msr %p\n", index, hvc); > - wrmsr(MSR_KVM_SYSTEM_TIME, (unsigned long)hvc | 1); > + wrmsr(MSR_KVM_SYSTEM_TIME_NEW, (unsigned long)hvc | 1); > } > > void kvm_clock_clear(void *data) > { > - wrmsr(MSR_KVM_SYSTEM_TIME, 0LL); > + wrmsr(MSR_KVM_SYSTEM_TIME_NEW, 0LL); > } > > void pvclock_read_wallclock(struct pvclock_wall_clock *wall_clock, > @@ -268,7 +268,7 @@ void kvm_get_wallclock(struct timespec *ts) > struct pvclock_vcpu_time_info *vcpu_time; > int index = smp_id(); > > - wrmsr(MSR_KVM_WALL_CLOCK, (unsigned long)&wall_clock); > + wrmsr(MSR_KVM_WALL_CLOCK_NEW, (unsigned long)&wall_clock); > vcpu_time = &hv_clock[index]; > pvclock_read_wallclock(&wall_clock, vcpu_time, ts); > } > diff --git a/x86/kvmclock.h b/x86/kvmclock.h > index 166a338..ab7dc0c 100644 > --- a/x86/kvmclock.h > +++ b/x86/kvmclock.h > @@ -1,8 +1,8 @@ > #ifndef KVMCLOCK_H > #define KVMCLOCK_H > > -#define MSR_KVM_WALL_CLOCK 0x11 > -#define MSR_KVM_SYSTEM_TIME 0x12 > +#define MSR_KVM_WALL_CLOCK_NEW 0x4b564d00 > +#define MSR_KVM_SYSTEM_TIME_NEW 0x4b564d01 > > #define MAX_CPU 64 > > Applied, thanks. Paolo