Re: [PATCH v4] x86/microcode/intel: Blacklist the specific BDW-EP for late loading

From: Jia Zhang
Date: Fri Dec 29 2017 - 09:12:58 EST




å 2017/12/29 äå9:44, Borislav Petkov åé:
> On Fri, Dec 29, 2017 at 09:17:34PM +0800, Jia Zhang wrote:
>> Namely, the end user has to make a BIOS update to uprev the microcode.
>
> Not quite: end user is dependent on the OEM to get a BIOS update.
>
> What is meant with early loading in this context is, to put the
> microcode in the initrd so that it gets loaded very early during the
> *kernel* boot. And early-initrd-based loading is the default method we
> do microcode loading with, anyway.

Thanks for clarifying the terms. What I meant was the microcode update
has to be launched in BIOS rather than late loading in linux runtime.

But I'm not quite sure whether or not the early-initrd-based loading is
affected. I used a shared BDW-EP machine with a rev of microcode less
than 0x0b000021 and observed the late loading is prohibited. I attempted
to remove the is_blacklisted() and observed a system hang with the late
loading. Eventually I followed up the erratum and updated the microcode
through BIOS update.

It is impossible to downgrade the BIOS to recover the old rev of
microcode for me to have a test with early-initrd-based loading.

Anyway, is_blacklisted() initially was introduced by Borislav to
prohibit late loading only, so the early-initrd-based loading seems to
be OK.

Thanks,
Jia

>
> So the blacklisting is only for *late* loading, through the sysfs
> trigger. Which is only there for historical reasons and for some
> configurations.
>