From: Peter Zijlstra <peterz@infradead.org>
To: Sean Christopherson <seanjc@google.com>
Cc: Dongli Zhang <dongli.zhang@oracle.com>,
David Woodhouse <dwmw2@infradead.org>,
Joe Jin <joe.jin@oracle.com>,
x86@kernel.org, kvm@vger.kernel.org,
linux-kernel@vger.kernel.org, pbonzini@redhat.com,
tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
dave.hansen@linux.intel.com
Subject: Re: [PATCH RFC 1/1] KVM: x86: add param to update master clock periodically
Date: Mon, 2 Oct 2023 23:06:07 +0200 [thread overview]
Message-ID: <20231002210607.GD27267@noisy.programming.kicks-ass.net> (raw)
In-Reply-To: <ZRsJiuKdXtWos_Xh@google.com>
On Mon, Oct 02, 2023 at 11:18:50AM -0700, Sean Christopherson wrote:
> +PeterZ
>
> Thomas and Peter,
>
> We're trying to address an issue where KVM's paravirt kvmclock drifts from the
> host's TSC-based monotonic raw clock because of historical reasons (at least, AFAICT),
> even when the TSC is constant. Due to some dubious KVM behavior, KVM may sometimes
> re-sync kvmclock against the host's monotonic raw clock, which causes non-trivial
> jumps in time from the guest's perspective.
>
> Linux-as-a-guest demotes all paravirt clock sources when the TSC is constant and
> nonstop, and so the goofy KVM behavior isn't likely to affect the guest's clocksource,
> but the guest's sched_clock() implementation keeps using the paravirt clock.
>
> Irrespective of if/how we fix the KVM host-side mess, using a paravirt clock for
> the scheduler when using a constant, nonstop TSC for the clocksource seems at best
> inefficient, and at worst unnecessarily complex and risky.
>
> Is there any reason not to prefer native_sched_clock() over whatever paravirt
> clock is present when the TSC is the preferred clocksource?
I see none, that whole pv_clock thing is horrible crap.
> Assuming the desirable
> thing to do is to use native_sched_clock() in this scenario, do we need a separate
> rating system, or can we simply tie the sched clock selection to the clocksource
> selection, e.g. override the paravirt stuff if the TSC clock has higher priority
> and is chosen?
Yeah, I see no point of another rating system. Just force the thing back
to native (or don't set it to that other thing).
next prev parent reply other threads:[~2023-10-02 21:06 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-26 23:06 [PATCH RFC 1/1] KVM: x86: add param to update master clock periodically Dongli Zhang
2023-09-27 0:29 ` Joe Jin
2023-09-27 0:36 ` Dongli Zhang
2023-09-28 16:18 ` Sean Christopherson
2023-09-29 20:15 ` Dongli Zhang
2023-10-02 8:33 ` David Woodhouse
2023-10-02 16:37 ` Sean Christopherson
2023-10-02 17:17 ` Dongli Zhang
2023-10-02 18:18 ` Sean Christopherson
2023-10-02 21:06 ` Peter Zijlstra [this message]
2023-10-02 21:16 ` Peter Zijlstra
2023-10-02 18:16 ` David Woodhouse
2023-10-03 0:53 ` Sean Christopherson
2023-10-03 1:32 ` Dongli Zhang
2023-10-03 1:49 ` Sean Christopherson
2023-10-03 2:07 ` Dongli Zhang
2023-10-03 21:00 ` Sean Christopherson
2023-10-03 5:54 ` David Woodhouse
2023-10-04 0:04 ` Sean Christopherson
2023-10-04 10:01 ` David Woodhouse
2023-10-04 18:06 ` Sean Christopherson
2023-10-04 19:13 ` Dongli Zhang
2023-10-11 0:20 ` Sean Christopherson
2023-10-11 7:18 ` David Woodhouse
2023-10-13 18:07 ` Sean Christopherson
2023-10-13 18:21 ` David Woodhouse
2023-10-13 19:02 ` Sean Christopherson
2023-10-13 19:12 ` David Woodhouse
2023-10-13 20:03 ` Sean Christopherson
2023-10-13 20:12 ` Dongli Zhang
2023-10-13 23:26 ` Sean Christopherson
2023-10-14 9:49 ` David Woodhouse
2023-10-16 15:47 ` Dongli Zhang
2023-10-16 16:25 ` David Woodhouse
2023-10-16 17:04 ` Dongli Zhang
2023-10-16 18:49 ` Sean Christopherson
2023-10-16 22:04 ` Dongli Zhang
2023-10-16 22:48 ` Sean Christopherson
2023-10-17 16:18 ` Dongli Zhang
2023-10-03 9:12 ` David Woodhouse
2023-10-04 0:07 ` Sean Christopherson
2023-10-04 8:06 ` David Woodhouse
2023-10-03 14:29 ` David Woodhouse
2023-10-04 0:10 ` Sean Christopherson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20231002210607.GD27267@noisy.programming.kicks-ass.net \
--to=peterz@infradead.org \
--cc=bp@alien8.de \
--cc=dave.hansen@linux.intel.com \
--cc=dongli.zhang@oracle.com \
--cc=dwmw2@infradead.org \
--cc=joe.jin@oracle.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=pbonzini@redhat.com \
--cc=seanjc@google.com \
--cc=tglx@linutronix.de \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox