Re: [PATCH] raise tsc clocksource rating

Ingo Molnar
2007-10-29T23:17:35Z

* Zachary Amsden <zach@vmware.com> wrote:

> On Tue, 2007-10-30 at 00:02 +0100, Ingo Molnar wrote:
> > * Zachary Amsden <zach@vmware.com> wrote:
>
> > > Not every guest support paravirt, but for correctness, all guests
> > > require TSC, which must be exposed all the way up to userspace, no
> > > matter what the efficiency or accuracy may be.
> >
> > but if there's a perfect TSC available (there is such hardware) then the
> > TSC _is_ the best clocksource. Paravirt now turns it off unconditionally
> > in essence.
>
> No, if no paravirt clocksource is detected, nothing can override the
> perfect TSC hardware clocksource rating of 400. And if a paravirt
> clocksource is detected, it is always better than TSC.
>
> > anyway, that's at most an optimization issue. No strong feelings here,
> > and we can certainly delay this patch until this gets all sorted out.
>
> This patch should be nacked, since it is just wrong. This is not an
> optimization issue. It is an accuracy issue for all virtualization
> environments that affects long term kernel clock stability, which is
> important to fix, and the best way to do that is to use a paravirt
> clocksource.

i know it's not an optimization issue. Your current pessimisation of
even perfect TSCs _is_ an optimization issue.

(and note that if the TSC is unstable the guest will/should notice it
and will fall back to the hyper clocksource)

Ingo