Эх сурвалжийг харах

MIPS: paravirt: Fix undefined reference to smp_bootstrap

If the paravirt machine is compiles without CONFIG_SMP, the following
linker error occurs

arch/mips/kernel/head.o: In function `kernel_entry':
(.ref.text+0x10): undefined reference to `smp_bootstrap'

due to the kernel entry macro always including SMP startup code.
Wrap this code in CONFIG_SMP to fix the error.

Signed-off-by: Matt Redfearn <matt.redfearn@imgtec.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Cc: stable@vger.kernel.org # 3.16+
Patchwork: https://patchwork.linux-mips.org/patch/14212/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Matt Redfearn 9 жил өмнө
parent
commit
951c39cd3b

+ 2 - 0
arch/mips/include/asm/mach-paravirt/kernel-entry-init.h

@@ -11,11 +11,13 @@
 #define CP0_EBASE $15, 1
 #define CP0_EBASE $15, 1
 
 
 	.macro  kernel_entry_setup
 	.macro  kernel_entry_setup
+#ifdef CONFIG_SMP
 	mfc0	t0, CP0_EBASE
 	mfc0	t0, CP0_EBASE
 	andi	t0, t0, 0x3ff		# CPUNum
 	andi	t0, t0, 0x3ff		# CPUNum
 	beqz	t0, 1f
 	beqz	t0, 1f
 	# CPUs other than zero goto smp_bootstrap
 	# CPUs other than zero goto smp_bootstrap
 	j	smp_bootstrap
 	j	smp_bootstrap
+#endif /* CONFIG_SMP */
 
 
 1:
 1:
 	.endm
 	.endm