Messages in this thread Patch in this message | | | From | Thomas Gleixner <> | Subject | [patch V4 14/30] x86/microcode/amd: Read revision from hardware in collect_cpu_info_amd() | Date | Mon, 2 Oct 2023 13:59:51 +0200 (CEST) |
| |
Prepare to decrapify the core initialization logic which invokes microcode_ops::apply_microcode() several times just to set cpu_data::microcode.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de> --- V2: New patch --- arch/x86/kernel/cpu/microcode/amd.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
--- a/arch/x86/kernel/cpu/microcode/amd.c +++ b/arch/x86/kernel/cpu/microcode/amd.c @@ -634,12 +634,12 @@ void reload_ucode_amd(unsigned int cpu) static int collect_cpu_info_amd(int cpu, struct cpu_signature *csig) { - struct cpuinfo_x86 *c = &cpu_data(cpu); struct ucode_cpu_info *uci = ucode_cpu_info + cpu; + u32 dummy __always_unused; struct ucode_patch *p; csig->sig = cpuid_eax(0x00000001); - csig->rev = c->microcode; + rdmsr(MSR_AMD64_PATCH_LEVEL, csig->rev, dummy); /* * a patch could have been loaded early, set uci->mc so that
| |