[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <88e77a00-ad62-4670-9d4e-a146bd8b420c@intel.com>
Date: Mon, 21 Oct 2024 10:38:30 -0700
From: Sohil Mehta <sohil.mehta@...el.com>
To: "Luck, Tony" <tony.luck@...el.com>, "Zhuo, Qiuxu" <qiuxu.zhuo@...el.com>
CC: "bp@...en8.de" <bp@...en8.de>, "tglx@...utronix.de" <tglx@...utronix.de>,
"dave.hansen@...ux.intel.com" <dave.hansen@...ux.intel.com>,
"mingo@...hat.com" <mingo@...hat.com>, "hpa@...or.com" <hpa@...or.com>,
"x86@...nel.org" <x86@...nel.org>, "linux-edac@...r.kernel.org"
<linux-edac@...r.kernel.org>, "linux-kernel@...r.kernel.org"
<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2 06/10] x86/mce: Convert multiple if () statements into
a switch() statement
On 10/21/2024 9:06 AM, Luck, Tony wrote:
>> /*
>> * All newer Intel systems support MCE broadcasting. Enable
>> * synchronization with a one second timeout.
>> */
>> - if ((c->x86 > 6 || (c->x86 == 6 && c->x86_model >= 0xe)) &&
>> - cfg->monarch_timeout < 0)
>> + if (c->x86_vfm >= INTEL_CORE_YONAH && cfg->monarch_timeout < 0)
>> cfg->monarch_timeout = USEC_PER_SEC;
>
> This change is correct. But the old code makes it more explicit that
> CPUs in families > 6 take this action. As the author of the VFM changes
> it's clear to me, maybe less so to others?
>
> But maybe its OK. The comment does help a lot. Anyone else have thoughts on this?
>
I am not very familiar with the intricacies of the VFM checks. I did
take me a few minutes to figure out why the modified code is correct.
But looking at the prior or the later checks, I see the '<' operator
used directly on platform names. So, the new check seems inline with
that i.e. in this case, any model or family after the said platform
supports MCE broadcasting.
> /*
> * There are also broken BIOSes on some Pentium M and
> * earlier systems:
> */
> - if (c->x86 == 6 && c->x86_model <= 13 && cfg->bootlog < 0)
> + if (c->x86_vfm < INTEL_CORE_YONAH && cfg->bootlog < 0)
> cfg->bootlog = 0;
Powered by blists - more mailing lists