Messages in this thread | | | Date | Fri, 17 May 2024 19:38:11 +0200 | From | Borislav Petkov <> | Subject | Re: [PATCH v3] x86/cpu: Fix x86_match_cpu() to match just X86_VENDOR_INTEL |
| |
On Fri, May 17, 2024 at 10:21:34AM -0700, Tony Luck wrote: > diff --git a/arch/x86/kernel/cpu/match.c b/arch/x86/kernel/cpu/match.c > index 8651643bddae..996f96cfce68 100644 > --- a/arch/x86/kernel/cpu/match.c > +++ b/arch/x86/kernel/cpu/match.c > @@ -39,7 +39,7 @@ const struct x86_cpu_id *x86_match_cpu(const struct x86_cpu_id *match) > struct cpuinfo_x86 *c = &boot_cpu_data; > > 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...
Thx.
-- Regards/Gruss, Boris.
https://people.kernel.org/tglx/notes-about-netiquette
| |