[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <SJ1PR11MB608386716D1DA533791DE7A2FCEE2@SJ1PR11MB6083.namprd11.prod.outlook.com>
Date: Fri, 17 May 2024 17:43:10 +0000
From: "Luck, Tony" <tony.luck@...el.com>
To: Borislav Petkov <bp@...en8.de>
CC: Thomas Gleixner <tglx@...utronix.de>, Ingo Molnar <mingo@...hat.com>,
"Dave Hansen" <dave.hansen@...ux.intel.com>, "x86@...nel.org"
<x86@...nel.org>, "H. Peter Anvin" <hpa@...or.com>, "Peter Zijlstra (Intel)"
<peterz@...radead.org>, Uros Bizjak <ubizjak@...il.com>, "Edgecombe, Rick P"
<rick.p.edgecombe@...el.com>, Arnd Bergmann <arnd@...db.de>, Mateusz Guzik
<mjguzik@...il.com>, Thomas Renninger <trenn@...e.de>, Greg Kroah-Hartman
<gregkh@...e.de>, Andi Kleen <ak@...ux.intel.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"patches@...ts.linux.dev" <patches@...ts.linux.dev>
Subject: RE: [PATCH v3] x86/cpu: Fix x86_match_cpu() to match just
X86_VENDOR_INTEL
> > for (m = match;
> > - m->vendor | m->family | m->model | m->steppings | m->feature;
> > + m->vendor | m->family | m->model | m->steppings | m->feature | m->flags;
>
> I think this should not do anything implicit even if it is correct but
> should explicitly check
>
> if (!(m->flags & X86_CPU_ID_FLAG_VENDOR_VALID))
> continue;
>
> I don't have a clear idea how exactly yet - I need to play with it.
>
> Maybe this stupid flow in the loop should be finally fixed into
> something more readable and sensible...
What if the bit in flags was named " X86_CPU_ID_FLAG_ENTRY_VALID"
Then the loop in x86_match_cpu() could just be:
for (m = match; m->flags & X86_CPU_ID_FLAG_ENTRY_VALID; m++) {
...
}
-Tony
Powered by blists - more mailing lists