blob: a992f8e94887f9134c0f5ca0362d24afd4ea285c [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001# SPDX-License-Identifier: GPL-2.0
Masahiro Yamada104daea2018-05-28 18:21:40 +09002mainmenu "User Mode Linux/$(SUBARCH) $(KERNELVERSION) Kernel Configuration"
Geert Uytterhoeven7fa38e72011-07-25 17:12:48 -07003
Masahiro Yamada21c54b72018-05-28 18:21:58 +09004comment "Compiler: $(CC_VERSION_TEXT)"
5
Al Viro61bee202008-08-25 04:51:27 -04006source "arch/um/Kconfig.common"
7
8menu "UML-specific options"
9
Paolo 'Blaisorblade' Giarrusso85977372005-11-13 16:07:06 -080010menu "Host processor type and features"
11
Al Viro7a78a172007-10-29 04:34:31 +000012source "arch/x86/Kconfig.cpu"
Paolo 'Blaisorblade' Giarrusso85977372005-11-13 16:07:06 -080013
14endmenu
15
Paolo 'Blaisorblade' Giarrussoc45166be32005-05-01 08:58:54 -070016config UML_X86
Jeff Dike54d67ee2007-12-01 12:16:28 -080017 def_bool y
Jan Beulichc49aa5b2011-03-08 09:24:26 +000018 select GENERIC_FIND_FIRST_BIT
Jeff Dike54d67ee2007-12-01 12:16:28 -080019
Paolo 'Blaisorblade' Giarrussoc45166be32005-05-01 08:58:54 -070020config 64BIT
Masahiro Yamada104daea2018-05-28 18:21:40 +090021 bool "64-bit kernel" if "$(SUBARCH)" = "x86"
22 default "$(SUBARCH)" != "i386"
Al Viro41984262008-08-23 17:00:34 -040023
24config X86_32
25 def_bool !64BIT
26 select HAVE_AOUT
Richard Weinbergerbbb35ef2012-09-27 20:10:57 +020027 select ARCH_WANT_IPC_PARSE_VERSION
David Howells786d35d2012-09-28 14:31:03 +093028 select MODULES_USE_ELF_REL
Al Viro1d4b4b22012-10-22 22:34:11 -040029 select CLONE_BACKWARDS
Al Viro15ce1f72012-12-25 16:09:20 -050030 select OLD_SIGSUSPEND3
Al Viro5b3eb3a2012-12-25 19:14:55 -050031 select OLD_SIGACTION
Al Viro41984262008-08-23 17:00:34 -040032
Jan Beulichbfc390612011-03-01 11:14:55 +000033config X86_64
34 def_bool 64BIT
David Howells786d35d2012-09-28 14:31:03 +093035 select MODULES_USE_ELF_RELA
Jan Beulichbfc390612011-03-01 11:14:55 +000036
Ramkumar Ramachandrae40f04d2013-09-27 09:44:46 +053037config 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
Al Viro41984262008-08-23 17:00:34 -040042config RWSEM_XCHGADD_ALGORITHM
H. Peter Anvin7ac468b2012-11-28 11:50:25 -080043 def_bool 64BIT
Al Viro41984262008-08-23 17:00:34 -040044
45config RWSEM_GENERIC_SPINLOCK
Richard Weinberger3a367902011-05-23 22:51:33 +020046 def_bool !RWSEM_XCHGADD_ALGORITHM
Linus Torvalds1da177e2005-04-16 15:20:36 -070047
Linus Torvalds1da177e2005-04-16 15:20:36 -070048config 3_LEVEL_PGTABLES
Kees Cook01b35ab2012-10-02 11:16:48 -070049 bool "Three-level pagetables" if !64BIT
Al Viro41984262008-08-23 17:00:34 -040050 default 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -070051 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
Paolo 'Blaisorblade' Giarrussoce2d2ae2006-01-18 17:42:59 -080056 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
Linus Torvalds1da177e2005-04-16 15:20:36 -070059config ARCH_HAS_SC_SIGNALS
Al Viro41984262008-08-23 17:00:34 -040060 def_bool !64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -070061
62config ARCH_REUSE_HOST_VSYSCALL_AREA
Al Viro41984262008-08-23 17:00:34 -040063 def_bool !64BIT
64
Akinobu Mitaf214ef32006-03-26 01:38:59 -080065config GENERIC_HWEIGHT
Al Viro41984262008-08-23 17:00:34 -040066 def_bool y
Al Viro61bee202008-08-25 04:51:27 -040067
68source "arch/um/Kconfig.um"
69
70endmenu
71
72source "arch/um/Kconfig.rest"