Re: [BUGFIX][PATCH] Freezer, CPU hotplug, x86 Microcode: Fix taskfreezing failures

From: Borislav Petkov
Date: Mon Oct 03 2011 - 04:48:07 EST


Hi Srivatsa,

On Mon, Oct 03, 2011 at 11:21:49AM +0530, Srivatsa S. Bhat wrote:
> So my one-liner patch here tries to solve this problem by not
> invalidating the microcode at all, to handle the corner case of a CPU
> hotplug going on in parallel with freezer operations. But it creates
> issues with the usecase you described.

I think your patch makes sense because re-loading the ucode during
a suspend/resume cycle is unnecessary. If one wants to update the
microcode, it should happen later when the box is resumed again: you
simply put the new microcode image in /lib/firmware/... and on AMD
unload/reload the microcode module and on Intel you do either that or
use the deprecated microcode_ctl.

However, let me test it on a couple of AMD boxes tomorrow to verify.

> At the moment I can't think of any clean solution that solves both these problems -
> a. The problem of requesting microcode from userspace when it is frozen (which can be individually
> solved by my patch).
> b. The possible need for a revised microcode during CPU online (due to the remote usecase of
> physically plugging-out and plugging-in a new CPU), when the tasks are frozen.

Yeah, let me remind you guys, we're talking about x86 CPUs here. AFAICT,
I don't think that physical unplug is supported by any vendor yet but
I'd welcome surprises :-).

Thanks.

--
Regards/Gruss,
Boris.
--
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/