xref: /linux/arch/x86/um/Kconfig (revision 21c54b774744719c386fbdc829b0e7759edb8ece)
1# SPDX-License-Identifier: GPL-2.0
2mainmenu "User Mode Linux/$(SUBARCH) $(KERNELVERSION) Kernel Configuration"
3
4comment "Compiler: $(CC_VERSION_TEXT)"
5
6source "arch/um/Kconfig.common"
7
8menu "UML-specific options"
9
10menu "Host processor type and features"
11
12source "arch/x86/Kconfig.cpu"
13
14endmenu
15
16config UML_X86
17	def_bool y
18	select GENERIC_FIND_FIRST_BIT
19
20config 64BIT
21	bool "64-bit kernel" if "$(SUBARCH)" = "x86"
22	default "$(SUBARCH)" != "i386"
23
24config X86_32
25	def_bool !64BIT
26	select HAVE_AOUT
27	select ARCH_WANT_IPC_PARSE_VERSION
28	select MODULES_USE_ELF_REL
29	select CLONE_BACKWARDS
30	select OLD_SIGSUSPEND3
31	select OLD_SIGACTION
32
33config X86_64
34	def_bool 64BIT
35	select MODULES_USE_ELF_RELA
36
37config ARCH_DEFCONFIG
38	string
39	default "arch/um/configs/i386_defconfig" if X86_32
40	default "arch/um/configs/x86_64_defconfig" if X86_64
41
42config RWSEM_XCHGADD_ALGORITHM
43	def_bool 64BIT
44
45config RWSEM_GENERIC_SPINLOCK
46	def_bool !RWSEM_XCHGADD_ALGORITHM
47
48config 3_LEVEL_PGTABLES
49	bool "Three-level pagetables" if !64BIT
50	default 64BIT
51	help
52	Three-level pagetables will let UML have more than 4G of physical
53	memory.  All the memory that can't be mapped directly will be treated
54	as high memory.
55
56	However, this it experimental on 32-bit architectures, so if unsure say
57	N (on x86-64 it's automatically enabled, instead, as it's safe there).
58
59config ARCH_HAS_SC_SIGNALS
60	def_bool !64BIT
61
62config ARCH_REUSE_HOST_VSYSCALL_AREA
63	def_bool !64BIT
64
65config GENERIC_HWEIGHT
66	def_bool y
67
68source "arch/um/Kconfig.um"
69
70endmenu
71
72source "arch/um/Kconfig.rest"
73