RE: [PATCH] x86/mce: Handle varying MCA bank counts

From: Ghannam, Yazen
Date: Wed Aug 01 2018 - 11:41:03 EST


> -----Original Message-----
> From: Luck, Tony <tony.luck@xxxxxxxxx>
> Sent: Friday, July 27, 2018 5:09 PM
> To: Ghannam, Yazen <Yazen.Ghannam@xxxxxxx>
> Cc: linux-edac@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; bp@xxxxxxx;
> x86@xxxxxxxxxx
> Subject: Re: [PATCH] x86/mce: Handle varying MCA bank counts
>
> On Fri, Jul 27, 2018 at 04:40:09PM -0500, Yazen Ghannam wrote:
> > - /* Don't support asymmetric configurations today */
> > - WARN_ON(mca_cfg.banks != 0 && b != mca_cfg.banks);
> > - mca_cfg.banks = b;
> > + mca_cfg.banks = max(mca_cfg.banks, b);
>
> Should we change mca_cfg.banks to be a per-cpu variable?
>
> DEFINE_PER_CPU(int, mce_num_banks);
>
> That would make it easier to make sure the places
> that scan all banks only look at the ones that exist.
>

I agree and I'd like to do that in future patches. But it'll require changes in
a few other places, and possibly breaking more assumptions in the code.

I'd like to address this issue in a smaller patch and submit it to the stable
branches. And we can redo things as per_cpu going forward.

Thanks,
Yazen