xref: /linux/arch/x86/um/Kconfig (revision 104daea149c45cc84842ce77a9bd6436d19f3dd8)
1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0
2*104daea1SMasahiro Yamadamainmenu "User Mode Linux/$(SUBARCH) $(KERNELVERSION) Kernel Configuration"
35c48b108SAl Viro
45c48b108SAl Virosource "arch/um/Kconfig.common"
55c48b108SAl Viro
65c48b108SAl Viromenu "UML-specific options"
75c48b108SAl Viro
85c48b108SAl Viromenu "Host processor type and features"
95c48b108SAl Viro
105c48b108SAl Virosource "arch/x86/Kconfig.cpu"
115c48b108SAl Viro
125c48b108SAl Viroendmenu
135c48b108SAl Viro
145c48b108SAl Viroconfig UML_X86
155c48b108SAl Viro	def_bool y
165c48b108SAl Viro	select GENERIC_FIND_FIRST_BIT
175c48b108SAl Viro
185c48b108SAl Viroconfig 64BIT
19*104daea1SMasahiro Yamada	bool "64-bit kernel" if "$(SUBARCH)" = "x86"
20*104daea1SMasahiro Yamada	default "$(SUBARCH)" != "i386"
215c48b108SAl Viro
225c48b108SAl Viroconfig X86_32
235c48b108SAl Viro	def_bool !64BIT
245c48b108SAl Viro	select HAVE_AOUT
25bbb35efcSRichard Weinberger	select ARCH_WANT_IPC_PARSE_VERSION
26786d35d4SDavid Howells	select MODULES_USE_ELF_REL
271d4b4b29SAl Viro	select CLONE_BACKWARDS
2815ce1f71SAl Viro	select OLD_SIGSUSPEND3
295b3eb3adSAl Viro	select OLD_SIGACTION
305c48b108SAl Viro
315c48b108SAl Viroconfig X86_64
325c48b108SAl Viro	def_bool 64BIT
33786d35d4SDavid Howells	select MODULES_USE_ELF_RELA
345c48b108SAl Viro
35e40f04d0SRamkumar Ramachandraconfig ARCH_DEFCONFIG
36e40f04d0SRamkumar Ramachandra	string
37e40f04d0SRamkumar Ramachandra	default "arch/um/configs/i386_defconfig" if X86_32
38e40f04d0SRamkumar Ramachandra	default "arch/um/configs/x86_64_defconfig" if X86_64
39e40f04d0SRamkumar Ramachandra
405c48b108SAl Viroconfig RWSEM_XCHGADD_ALGORITHM
417ac468b1SH. Peter Anvin	def_bool 64BIT
425c48b108SAl Viro
435c48b108SAl Viroconfig RWSEM_GENERIC_SPINLOCK
445c48b108SAl Viro	def_bool !RWSEM_XCHGADD_ALGORITHM
455c48b108SAl Viro
465c48b108SAl Viroconfig 3_LEVEL_PGTABLES
4701b35ab7SKees Cook	bool "Three-level pagetables" if !64BIT
485c48b108SAl Viro	default 64BIT
495c48b108SAl Viro	help
505c48b108SAl Viro	Three-level pagetables will let UML have more than 4G of physical
515c48b108SAl Viro	memory.  All the memory that can't be mapped directly will be treated
525c48b108SAl Viro	as high memory.
535c48b108SAl Viro
545c48b108SAl Viro	However, this it experimental on 32-bit architectures, so if unsure say
555c48b108SAl Viro	N (on x86-64 it's automatically enabled, instead, as it's safe there).
565c48b108SAl Viro
575c48b108SAl Viroconfig ARCH_HAS_SC_SIGNALS
585c48b108SAl Viro	def_bool !64BIT
595c48b108SAl Viro
605c48b108SAl Viroconfig ARCH_REUSE_HOST_VSYSCALL_AREA
615c48b108SAl Viro	def_bool !64BIT
625c48b108SAl Viro
635c48b108SAl Viroconfig GENERIC_HWEIGHT
645c48b108SAl Viro	def_bool y
655c48b108SAl Viro
665c48b108SAl Virosource "arch/um/Kconfig.um"
675c48b108SAl Viro
685c48b108SAl Viroendmenu
695c48b108SAl Viro
705c48b108SAl Virosource "arch/um/Kconfig.rest"
71