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