x86/microcode/intel: Do not retry microcode reloading on the APs
authorAshok Raj <ashok.raj@intel.com>
Tue, 29 Nov 2022 21:08:27 +0000 (13:08 -0800)
committerBorislav Petkov (AMD) <bp@alien8.de>
Mon, 5 Dec 2022 20:22:21 +0000 (21:22 +0100)
The retries in load_ucode_intel_ap() were in place to support systems
with mixed steppings. Mixed steppings are no longer supported and there is
only one microcode image at a time. Any retries will simply reattempt to
apply the same image over and over without making progress.

  [ bp: Zap the circumstantial reasoning from the commit message. ]

Fixes: 06b8534cb728 ("x86/microcode: Rework microcode loading")
Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20221129210832.107850-3-ashok.raj@intel.com
arch/x86/kernel/cpu/microcode/intel.c

index 4f93875..2dba4b5 100644 (file)
@@ -495,7 +495,6 @@ void load_ucode_intel_ap(void)
        else
                iup = &intel_ucode_patch;
 
-reget:
        if (!*iup) {
                patch = __load_ucode_intel(&uci);
                if (!patch)
@@ -506,12 +505,7 @@ reget:
 
        uci.mc = *iup;
 
-       if (apply_microcode_early(&uci, true)) {
-               /* Mixed-silicon system? Try to refetch the proper patch: */
-               *iup = NULL;
-
-               goto reget;
-       }
+       apply_microcode_early(&uci, true);
 }
 
 static struct microcode_intel *find_patch(struct ucode_cpu_info *uci)