]> git.baikalelectronics.ru Git - kernel.git/commit
x86/microcode/AMD: Do not load when running on a hypervisor
authorBorislav Petkov <bp@suse.de>
Sun, 18 Dec 2016 16:44:13 +0000 (17:44 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Mon, 19 Dec 2016 09:46:20 +0000 (10:46 +0100)
commit6a19b40934a90ab61fecd20e86a357689025a229
tree34a1eee40d16e5b2af6cfa16f67a629ecc32f38f
parentf93f50e51807d8bf038cb43c13218d987a0dd6fc
x86/microcode/AMD: Do not load when running on a hypervisor

Doing so is completely void of sense for multiple reasons so prevent
it. Set dis_ucode_ldr to true and thus disable the microcode loader by
default to address xen pv guests which execute the AP path but not the
BSP path.

By having it turned off by default, the APs won't run into the loader
either.

Also, check CPUID(1).ECX[31] which hypervisors set. Well almost, not the
xen pv one. That one gets the aforementioned "fix".

Also, improve the detection method by caching the final decision whether
to continue loading in dis_ucode_ldr and do it once on the BSP. The APs
then simply test that value.

Signed-off-by: Borislav Petkov <bp@suse.de>
Tested-by: Juergen Gross <jgross@suse.com>
Tested-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Acked-by: Juergen Gross <jgross@suse.com>
Link: http://lkml.kernel.org/r/20161218164414.9649-4-bp@alien8.de
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
arch/x86/kernel/cpu/microcode/core.c