x86/microcode: always collect_cpu_info() during boot
authorSergey Dyasli <sergey.dyasli@citrix.com>
Mon, 23 Sep 2019 12:34:00 +0000 (14:34 +0200)
committerJan Beulich <jbeulich@suse.com>
Mon, 23 Sep 2019 12:34:00 +0000 (14:34 +0200)
commit3311f10e5b64aefad443cfb150d24d0999e81fc1
tree2d839f85a04673255c7218d0ed510c4d1d3975cc
parent5fd47c57db388d1be961e3282f132bda12e58c1a
x86/microcode: always collect_cpu_info() during boot

Currently cpu_sig struct is not updated during boot if no microcode blob
is specified by "ucode=[<interger>| scan]".

It will result in cpu_sig.rev being 0 which affects APIC's
check_deadline_errata() and retpoline_safe() functions.

Fix this by getting ucode revision early during boot and SMP bring up.
While at it, protect early_microcode_update_cpu() for cases when
microcode_ops is NULL.

Signed-off-by: Sergey Dyasli <sergey.dyasli@citrix.com>
Signed-off-by: Chao Gao <chao.gao@intel.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
master commit: 2bb2c55cf870e78bc7f514784b2cd8c947d8729c
master date: 2019-08-01 18:45:32 +0100
xen/arch/x86/microcode.c