Commit da22646d authored by H. Peter Anvin's avatar H. Peter Anvin Committed by Ben Hutchings

x86, espfix: Make espfix64 a Kconfig option, fix UML

commit 197725de upstream.

Make espfix64 a hidden Kconfig option.  This fixes the x86-64 UML
build which had broken due to the non-existence of init_espfix_bsp()
in UML: since UML uses its own Kconfig, this option does not appear in
the UML build.

This also makes it possible to make support for 16-bit segments a
configuration option, for the people who want to minimize the size of
the kernel.
Reported-by: default avatarIngo Molnar <mingo@kernel.org>
Signed-off-by: default avatarH. Peter Anvin <hpa@zytor.com>
Cc: Richard Weinberger <richard@nod.at>
Link: http://lkml.kernel.org/r/1398816946-3351-1-git-send-email-hpa@linux.intel.comSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: default avatarBen Hutchings <ben@decadent.org.uk>
parent 7d4a9eab
...@@ -901,6 +901,10 @@ config VM86 ...@@ -901,6 +901,10 @@ config VM86
XFree86 to initialize some video cards via BIOS. Disabling this XFree86 to initialize some video cards via BIOS. Disabling this
option saves about 6k. option saves about 6k.
config X86_ESPFIX64
def_bool y
depends on X86_64
config TOSHIBA config TOSHIBA
tristate "Toshiba Laptop support" tristate "Toshiba Laptop support"
depends on X86_32 depends on X86_32
......
...@@ -27,7 +27,7 @@ obj-$(CONFIG_X86_32) += sys_i386_32.o i386_ksyms_32.o ...@@ -27,7 +27,7 @@ obj-$(CONFIG_X86_32) += sys_i386_32.o i386_ksyms_32.o
obj-$(CONFIG_X86_64) += sys_x86_64.o x8664_ksyms_64.o obj-$(CONFIG_X86_64) += sys_x86_64.o x8664_ksyms_64.o
obj-$(CONFIG_X86_64) += syscall_64.o vsyscall_64.o obj-$(CONFIG_X86_64) += syscall_64.o vsyscall_64.o
obj-$(CONFIG_X86_64) += vsyscall_emu_64.o obj-$(CONFIG_X86_64) += vsyscall_emu_64.o
obj-$(CONFIG_X86_64) += espfix_64.o obj-$(CONFIG_X86_ESPFIX64) += espfix_64.o
obj-y += bootflag.o e820.o obj-y += bootflag.o e820.o
obj-y += pci-dma.o quirks.o topology.o kdebugfs.o obj-y += pci-dma.o quirks.o topology.o kdebugfs.o
obj-y += alternative.o i8253.o pci-nommu.o hw_breakpoint.o obj-y += alternative.o i8253.o pci-nommu.o hw_breakpoint.o
......
...@@ -268,7 +268,7 @@ notrace static void __cpuinit start_secondary(void *unused) ...@@ -268,7 +268,7 @@ notrace static void __cpuinit start_secondary(void *unused)
/* /*
* Enable the espfix hack for this CPU * Enable the espfix hack for this CPU
*/ */
#ifdef CONFIG_X86_64 #ifdef CONFIG_X86_ESPFIX64
init_espfix_ap(); init_espfix_ap();
#endif #endif
......
...@@ -610,7 +610,7 @@ asmlinkage void __init start_kernel(void) ...@@ -610,7 +610,7 @@ asmlinkage void __init start_kernel(void)
if (efi_enabled(EFI_RUNTIME_SERVICES)) if (efi_enabled(EFI_RUNTIME_SERVICES))
efi_enter_virtual_mode(); efi_enter_virtual_mode();
#endif #endif
#ifdef CONFIG_X86_64 #ifdef CONFIG_X86_ESPFIX64
/* Should be run before the first non-init thread is created */ /* Should be run before the first non-init thread is created */
init_espfix_bsp(); init_espfix_bsp();
#endif #endif
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment