From: patrickg <patrickg@supermicro.com>
To: Arjan van de Ven <arjan@linux.intel.com>, <len.brown@intel.com>,
<linux-kernel@vger.kernel.org>
Cc: <mingo@kernel.org>, <alek.du@intel.com>, <feng.tang@intel.com>
Subject: Re: [RFC] x86, tsc: Add kcmdline args for skipping tsc calibration sequences
Date: Fri, 13 Jul 2018 12:54:48 -0700 [thread overview]
Message-ID: <3987740c-44b4-72fa-3b3e-ebccecc32b00@supermicro.com> (raw)
In-Reply-To: <9cdcf3bb-4d01-19cc-536f-4745ecb058c6@linux.intel.com>
On 07/13/2018 12:40 PM, Arjan van de Ven wrote:
> On 7/13/2018 12:19 PM, patrickg wrote:
>> This RFC patch is intended to allow bypass CPUID, MSR and QuickPIT calibration methods should the user desire to.
>>
>> The current ordering in ML x86 tsc is to calibrate in the order listed above; returning whenever there's a successful calibration. However there are certain BIOS/HW Designs for overclocking that cause the TSC to change along with the max core clock; and simple 'trusting' calibration methodologies will lead to the TSC running 'faster' and eventually, TSC instability.
>>
>
>
> that would be a real violation of the contract between cpu and OS: tsc is not supposed to change for the duration of the boot
With the methodology used; the TSC is still invariant; it's just running faster than the CPUID math calculates.
>
>> I only know that there's a use-case for me to want to be able to skip CPUID calibration, however I included args for skipping all the rest just so that all functionality is covered in the long run instead of just one use-case.
>
> wouldn't it be better to start the detailed calibration with the value from CPUID instead; that way we also properly calibrate spread spectrum etc...
>
> I thought we switched to that recently to be honest...
Are you referencing:
1bf8915ae5156dff439d2c65314bd8fdde1b83bf - x86/tsc: Enumerate SKL cpu_khz and tsc_khz via CPUID
However since it's returning at CPUID calibration during native_calibrate_cpu(); it's not compared after-the-fact, leading to the TSC to use the 'slower' number returned by CPUID.
Now keep in mind; I dunno if there was any reason to explicitly not want to utilize the PIT calib sequences on SKL. That'd be a factor for this.
Would comparing the number after the fact; then if there's a significant difference between PIT and MSR/CPUID, defaulting to the 'faster' value be a better solution?
next prev parent reply other threads:[~2018-07-13 19:54 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-07-13 19:19 patrickg
2018-07-13 19:40 ` Arjan van de Ven
2018-07-13 19:54 ` patrickg
2018-07-13 19:54 ` patrickg [this message]
2018-07-14 2:40 ` Brown, Len
2018-07-20 22:27 ` patrickg
2018-07-24 19:45 ` patrickg
2018-07-26 19:21 ` patrickg
2018-08-16 17:28 ` patrickg
2018-10-25 17:12 ` patrickg
2018-10-25 18:01 ` Prarit Bhargava
2018-10-25 19:13 ` patrickg
2018-12-03 19:37 ` Patrick Geary
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=3987740c-44b4-72fa-3b3e-ebccecc32b00@supermicro.com \
--to=patrickg@supermicro.com \
--cc=alek.du@intel.com \
--cc=arjan@linux.intel.com \
--cc=feng.tang@intel.com \
--cc=len.brown@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@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
all inboxes | Powered by JetHome®