From: Dave Hansen <dave.hansen@intel.com>
To: Suchit Karunakaran <suchitkarunakaran@gmail.com>,
tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
dave.hansen@linux.intel.com, hpa@zytor.com, darwi@linutronix.de,
sohil.mehta@intel.com, peterz@infradead.org,
ravi.bangoria@amd.com
Cc: skhan@linuxfoundation.org, linux-kernel-mentees@lists.linux.dev,
linux-kernel@vger.kernel.org, stable@vger.kernel.org
Subject: Re: [PATCH v3] x86/cpu/intel: Fix the constant_tsc model check for Pentium 4s
Date: Thu, 31 Jul 2025 08:57:47 -0700 [thread overview]
Message-ID: <3093fd14-d57a-4fc6-9e15-d9ce8b075b30@intel.com> (raw)
In-Reply-To: <20250730042617.5620-1-suchitkarunakaran@gmail.com>
On 7/29/25 21:26, Suchit Karunakaran wrote:
> The logic to synthesize constant_tsc for Pentium 4s (Family 15) is
> wrong. Since INTEL_P4_PRESCOTT is numerically greater than
> INTEL_P4_WILLAMETTE, the logic always results in false and never sets
> X86_FEATURE_CONSTANT_TSC for any Pentium 4 model.
> The error was introduced while replacing the x86_model check with a VFM
> one. The original check was as follows:
> if ((c->x86 == 0xf && c->x86_model >= 0x03) ||
> (c->x86 == 0x6 && c->x86_model >= 0x0e))
> set_cpu_cap(c, X86_FEATURE_CONSTANT_TSC);
>
> Fix the logic to cover all Pentium 4 models from Prescott (model 3) to
> Cedarmill (model 6) which is the last model released in Family 15.
Could we have a slightly different changelog, please? The fact that the
logic results in the bit never getting set for P4's is IMNHO immaterial.
This looks like a plain and simple typo, not a logical error on the
patch author's part.
How about this as a changelog?
--
Pentium 4's which are INTEL_P4_PRESCOTT (mode 0x03) and later have a
constant TSC. This was correctly captured until fadb6f569b10
("x86/cpu/intel: Limit the non-architectural constant_tsc model
checks"). In that commit, the model was transposed from 0x03 to
INTEL_P4_WILLAMETTE, which is just plain wrong. That was presumably a
simple typo, probably just copying and pasting the wrong P4 model.
Fix the constant TSC logic to cover all later P4 models. End at
INTEL_P4_CEDARMILL which is the last P4 model.
next prev parent reply other threads:[~2025-07-31 15:59 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-30 4:26 [PATCH v3] x86/cpu/intel: Fix the constant_tsc model check for Pentium 4s Suchit Karunakaran
2025-07-30 4:52 ` Greg KH
2025-07-30 5:35 ` Suchit Karunakaran
2025-07-30 5:55 ` Greg KH
2025-07-30 6:21 ` Suchit Karunakaran
2025-07-30 14:42 ` Sohil Mehta
2025-07-30 14:58 ` Suchit Karunakaran
2025-07-30 15:33 ` Sohil Mehta
2025-07-30 16:27 ` Suchit Karunakaran
2025-07-30 19:29 ` Sohil Mehta
2025-07-31 4:17 ` Suchit Karunakaran
2025-07-31 15:57 ` Dave Hansen [this message]
2025-07-31 17:39 ` Suchit Karunakaran
2025-07-31 18:56 ` Sohil Mehta
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=3093fd14-d57a-4fc6-9e15-d9ce8b075b30@intel.com \
--to=dave.hansen@intel.com \
--cc=bp@alien8.de \
--cc=darwi@linutronix.de \
--cc=dave.hansen@linux.intel.com \
--cc=hpa@zytor.com \
--cc=linux-kernel-mentees@lists.linux.dev \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=peterz@infradead.org \
--cc=ravi.bangoria@amd.com \
--cc=skhan@linuxfoundation.org \
--cc=sohil.mehta@intel.com \
--cc=stable@vger.kernel.org \
--cc=suchitkarunakaran@gmail.com \
--cc=tglx@linutronix.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.