Re: [PATCH 2/2] x86, microcode: Make reload interface per system

From: Borislav Petkov
Date: Wed Jun 20 2012 - 19:46:10 EST


On Wed, Jun 20, 2012 at 04:34:17PM -0700, H. Peter Anvin wrote:
> On 06/20/2012 04:32 PM, Borislav Petkov wrote:
> >
> > Which means that
> >
> > static enum ucode_state request_microcode_fw(int cpu, struct device *device)
> > {
> > char name[30];
> >
> > ...
> >
> > sprintf(name, "intel-ucode/%02x-%02x-%02x",
> > c->x86, c->x86_model, c->x86_mask);
> >
> > needs to be changed to the name of the microcode blob you guys use for
> > distributing and we can drop the OLD INTERFACE and there'll be no need
> > for userspace tools doing anything with the ucode patches.
> >
>
> Except you still need to re-poke it when you have a new microcode
> blob... so what was gained by all this churn?

We need to do that anyway if new (F,M,S) ucode piece comes along.

The gain is twofold:

* we don't need the userspace tool to split the blob - we have one
single file we load and the driver picks out what it needs.

* as a result, we drop the CONFIG_MICROCODE_OLD_INTERFACE, i.e.
/dev/cpu/microcode which takes the single blob anyway which the driver
picks apart later.

In the end, we have one unified ucode loading procedure:

1. put the blob in /lib/firmware/...
2. echo 1 > /sys/devices/system/cpu/microcode/reload

That's it - it can't be simpler than that.

--
Regards/Gruss,
Boris.

Advanced Micro Devices GmbH
Einsteinring 24, 85609 Dornach
GM: Alberto Bozzo
Reg: Dornach, Landkreis Muenchen
HRB Nr. 43632 WEEE Registernr: 129 19551
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/