Re: [PATCH v14 20/25] x86/tsc: calibrate tsc only once

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 19 Jul 2018, Pavel Tatashin wrote:

> On Thu, Jul 19, 2018 at 12:49 PM Pavel Tatashin
> <pasha.tatashin@xxxxxxxxxx> wrote:
> >
> > > So create two functions. native_...early..() and native....(). The early
> > > one does not contain the hpet/pmtimer stuff and it replaces the ops.pointer
> > > with the late one which contains all of it.
> >
> > Good idea. Actually, the late one will contain only hpet/pmtimer and I
> > will set it only if tsc frequency was not determined only.
> 
> If we determined tsc early in boot using one of the quick methods:
> from cpuid/msr/quick_pit, can we assume that frequencies of all other
> CPUs will be determined the same way? Or do we still have to fallback
> to PIT/HPET/PMTIMER? I wondering if we support heterogeneous
> multi-socket platforms with different CPUs, because that the only
> platforms where I see such scenario is possible.

The frequency for secondary CPUs is usually taken from the boot CPU and the
only reason why recalibration can happen is when the CPU does not have a
constant frequency TSC.

For that case the quick PIT + hpet/pmtimer calibration bundle is
required. So yes, the early calibration might work with quick PIT (those
CPUs definitely do not have MSR/CPUID based calibration), but the
recalibration might fail the quick PIT calibration for various reasons.

Thanks,

	tglx
--
To unsubscribe from this list: send the line "unsubscribe linux-s390" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Kernel Development]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Info]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Linux Media]     [Device Mapper]

  Powered by Linux