Subject: Re: linux-next: Tree for May 18 (arch/x86/kernel/cpu/microcode/intel.o)

From: Borislav Petkov <[email-masked]>
Date: Thu, 19 May 2022 00:29:39 +0200

On Wed, May 18, 2022 at 02:54:45PM -0700, Randy Dunlap wrote:
> 
> 
> On 5/18/22 14:34, Borislav Petkov wrote:
> > On Wed, May 18, 2022 at 02:05:28PM -0700, Randy Dunlap wrote:
> >> on x86_64:
> >>
> >> CONFIG_PROCESSOR_SELECT=y
> >> # CONFIG_CPU_SUP_INTEL is not set   <<<<<
> >> CONFIG_CPU_SUP_AMD=y
> >> # CONFIG_CPU_SUP_HYGON is not set
> >> CONFIG_CPU_SUP_CENTAUR=y
> >> CONFIG_CPU_SUP_ZHAOXIN=y
> >>
> >> CONFIG_MICROCODE=y
> >> CONFIG_MICROCODE_INTEL=y   <<<<<
> >> CONFIG_MICROCODE_AMD=y
> > 
> > Hmm:
> > 
> > $ grep -E "(PROCESSOR_SELECT|CPU_SUP|MICROCODE)" .config
> > CONFIG_PROCESSOR_SELECT=y
> > # CONFIG_CPU_SUP_INTEL is not set
> > CONFIG_CPU_SUP_AMD=y
> > # CONFIG_CPU_SUP_HYGON is not set
> > CONFIG_CPU_SUP_CENTAUR=y
> > CONFIG_CPU_SUP_ZHAOXIN=y
> > CONFIG_MICROCODE=y
> > CONFIG_MICROCODE_INTEL=y
> > CONFIG_MICROCODE_AMD=y
> > CONFIG_MICROCODE_OLD_INTERFACE=y
> > 
> > that builds fine here on tip/master. Or is it linux-next specific? I'd
> > hope not.
> > 
> > Can you send me your whole .config pls and how exactly you reproduce it,
> > i.e., on which tree?
> 
> This is linux-next-20220518. config file is attached.

Ah, got it, that's the IFS thing which uses microcode loader functions.

I think this below but will do more poking tomorrow on a fresh head.

Thx.

---
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 60e9be91250e..ba1e509d11bb 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -1321,7 +1321,6 @@ config X86_REBOOTFIXUPS
 config MICROCODE
 	bool "CPU microcode loading support"
 	default y
-	depends on CPU_SUP_AMD || CPU_SUP_INTEL
 	help
 	  If you say Y here, you will be able to update the microcode on
 	  Intel and AMD processors. The Intel support is for the IA32 family,
@@ -1341,7 +1340,7 @@ config MICROCODE
 
 config MICROCODE_INTEL
 	bool "Intel microcode loading support"
-	depends on MICROCODE
+	depends on CPU_SUP_INTEL && MICROCODE
 	default MICROCODE
 	help
 	  This options enables microcode patch loading support for Intel
@@ -1353,7 +1352,7 @@ config MICROCODE_INTEL
 
 config MICROCODE_AMD
 	bool "AMD microcode loading support"
-	depends on MICROCODE
+	depends on CPU_SUP_AMD && MICROCODE
 	help
 	  If you select this option, microcode patch loading support for AMD
 	  processors will be enabled.
diff --git a/drivers/platform/x86/intel/ifs/Kconfig b/drivers/platform/x86/intel/ifs/Kconfig
index d84491cfb0db..aaaa5503951d 100644
--- a/drivers/platform/x86/intel/ifs/Kconfig
+++ b/drivers/platform/x86/intel/ifs/Kconfig
@@ -1,6 +1,6 @@
 config INTEL_IFS
 	tristate "Intel In Field Scan"
-	depends on X86 && 64BIT && SMP
+	depends on CPU_SUP_INTEL && 64BIT && SMP
 	select INTEL_IFS_DEVICE
 	help
 	  Enable support for the In Field Scan capability in select

-- 
Regards/Gruss,
    Boris.

https://people.kernel.org/tglx/notes-about-netiquette