On 13.03.2026 08:04, Jan Beulich wrote:
> On 13.03.2026 01:01, Andrew Cooper wrote:
>> On 12/03/2026 8:43 pm, Kevin Lampis wrote:
>>> diff --git a/xen/arch/x86/cpu/mcheck/mce_intel.c 
>>> b/xen/arch/x86/cpu/mcheck/mce_intel.c
>>> index 839a0e5ba9..4d6b7d588e 100644
>>> --- a/xen/arch/x86/cpu/mcheck/mce_intel.c
>>> +++ b/xen/arch/x86/cpu/mcheck/mce_intel.c
>>> @@ -711,10 +711,7 @@ static bool mce_is_broadcast(struct cpuinfo_x86 *c)
>>>       * DisplayFamily_DisplayModel encoding of 06H_EH and above,
>>>       * a MCA signal is broadcast to all logical processors in the system
>>>       */
>>> -    if ( c->x86_vendor == X86_VENDOR_INTEL && c->x86 == 6 &&
>>> -         c->x86_model >= 0xe )
>>> -        return true;
>>> -    return false;
>>> +    return c->vendor == X86_VENDOR_INTEL && c->vfm >= INTEL_CORE_YONAH;
>>>  }
>>
>> This breaks P4.
>>
>> It is not safe to write expressions like this, and I've already
>> explained why.
> 
> Plus I had asked whether the comparison needs to stay at all, seeing how
> Xen has been 64-bit only for a pretty long while.

I realize dropping it altogether would break P4 too. Looks like it wants to
be c->family != 0xf (assuming families 18 and 19 are to be included).

Jan

Reply via email to