0001 # SPDX-License-Identifier: GPL-2.0
0002
0003 menu "Host processor type and features"
0004
0005 source "arch/x86/Kconfig.cpu"
0006
0007 endmenu
0008
0009 config UML_X86
0010 def_bool y
0011 select ARCH_BINFMT_ELF_EXTRA_PHDRS if X86_32
0012 select DCACHE_WORD_ACCESS
0013
0014 config 64BIT
0015 bool "64-bit kernel" if "$(SUBARCH)" = "x86"
0016 default "$(SUBARCH)" != "i386"
0017
0018 config X86_32
0019 def_bool !64BIT
0020 select ARCH_32BIT_OFF_T
0021 select ARCH_WANT_IPC_PARSE_VERSION
0022 select MODULES_USE_ELF_REL
0023 select CLONE_BACKWARDS
0024 select OLD_SIGSUSPEND3
0025 select OLD_SIGACTION
0026
0027 config X86_64
0028 def_bool 64BIT
0029 select MODULES_USE_ELF_RELA
0030
0031 config 3_LEVEL_PGTABLES
0032 bool "Three-level pagetables" if !64BIT
0033 default 64BIT
0034 help
0035 Three-level pagetables will let UML have more than 4G of physical
0036 memory. All the memory that can't be mapped directly will be treated
0037 as high memory.
0038
0039 However, this it experimental on 32-bit architectures, so if unsure say
0040 N (on x86-64 it's automatically enabled, instead, as it's safe there).
0041
0042 config ARCH_HAS_SC_SIGNALS
0043 def_bool !64BIT
0044
0045 config ARCH_REUSE_HOST_VSYSCALL_AREA
0046 def_bool !64BIT
0047
0048 config GENERIC_HWEIGHT
0049 def_bool y