[PATCH] x86/build: Build VSMP support only if selected

From: Thomas Gleixner
Date: Thu Nov 01 2018 - 05:37:07 EST


VSMP support is built even if CONFIG_X86_VSMP is not set. This leads to a build
breakage when CONFIG_PCI is disabled as well.

Build VSMP code only when selected.

Reported-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

---
diff --git a/arch/x86/include/asm/setup.h b/arch/x86/include/asm/setup.h
index ae13bc974416..b6b911c4c7f3 100644
--- a/arch/x86/include/asm/setup.h
+++ b/arch/x86/include/asm/setup.h
@@ -33,7 +33,7 @@
extern u64 relocated_ramdisk;

/* Interrupt control for vSMPowered x86_64 systems */
-#ifdef CONFIG_X86_64
+#if defined(CONFIG_X86_64) && defined(CONFIG_X86_VSMP)
void vsmp_init(void);
#else
static inline void vsmp_init(void) { }
diff --git a/arch/x86/kernel/Makefile b/arch/x86/kernel/Makefile
index 8824d01c0c35..647ce52b17d5 100644
--- a/arch/x86/kernel/Makefile
+++ b/arch/x86/kernel/Makefile
@@ -148,5 +148,5 @@ ifeq ($(CONFIG_X86_64),y)
obj-$(CONFIG_CALGARY_IOMMU) += pci-calgary_64.o tce_64.o

obj-$(CONFIG_MMCONF_FAM10H) += mmconf-fam10h_64.o
- obj-y += vsmp_64.o
+ obj-$(CONFIG_X86_VSMP) += vsmp_64.o
endif