blob: 6a15c4dcc7461b2c426cddb9348f32670fa0df3f [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
Al Viro61bee202008-08-25 04:51:27 -04004source "arch/um/Kconfig.common"
5
6menu "UML-specific options"
7
Paolo 'Blaisorblade' Giarrusso85977372005-11-13 16:07:06 -08008menu "Host processor type and features"
9
Al Viro7a78a172007-10-29 04:34:31 +000010source "arch/x86/Kconfig.cpu"
Paolo 'Blaisorblade' Giarrusso85977372005-11-13 16:07:06 -080011
12endmenu
13
Paolo 'Blaisorblade' Giarrussoc45166be32005-05-01 08:58:54 -070014config UML_X86
Jeff Dike54d67ee2007-12-01 12:16:28 -080015 def_bool y
Jan Beulichc49aa5b2011-03-08 09:24:26 +000016 select GENERIC_FIND_FIRST_BIT
Jeff Dike54d67ee2007-12-01 12:16:28 -080017
Paolo 'Blaisorblade' Giarrussoc45166be32005-05-01 08:58:54 -070018config 64BIT
Masahiro Yamada104daea2018-05-28 18:21:40 +090019 bool "64-bit kernel" if "$(SUBARCH)" = "x86"
20 default "$(SUBARCH)" != "i386"
Al Viro41984262008-08-23 17:00:34 -040021
22config X86_32
23 def_bool !64BIT
24 select HAVE_AOUT
Richard Weinbergerbbb35ef2012-09-27 20:10:57 +020025 select ARCH_WANT_IPC_PARSE_VERSION
David Howells786d35d2012-09-28 14:31:03 +093026 select MODULES_USE_ELF_REL
Al Viro1d4b4b22012-10-22 22:34:11 -040027 select CLONE_BACKWARDS
Al Viro15ce1f72012-12-25 16:09:20 -050028 select OLD_SIGSUSPEND3
Al Viro5b3eb3a2012-12-25 19:14:55 -050029 select OLD_SIGACTION
Al Viro41984262008-08-23 17:00:34 -040030
Jan Beulichbfc390612011-03-01 11:14:55 +000031config X86_64
32 def_bool 64BIT
David Howells786d35d2012-09-28 14:31:03 +093033 select MODULES_USE_ELF_RELA
Jan Beulichbfc390612011-03-01 11:14:55 +000034
Ramkumar Ramachandrae40f04d2013-09-27 09:44:46 +053035config 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
Al Viro41984262008-08-23 17:00:34 -040040config RWSEM_XCHGADD_ALGORITHM
H. Peter Anvin7ac468b2012-11-28 11:50:25 -080041 def_bool 64BIT
Al Viro41984262008-08-23 17:00:34 -040042
43config RWSEM_GENERIC_SPINLOCK
Richard Weinberger3a367902011-05-23 22:51:33 +020044 def_bool !RWSEM_XCHGADD_ALGORITHM
Linus Torvalds1da177e2005-04-16 15:20:36 -070045
Linus Torvalds1da177e2005-04-16 15:20:36 -070046config 3_LEVEL_PGTABLES
Kees Cook01b35ab2012-10-02 11:16:48 -070047 bool "Three-level pagetables" if !64BIT
Al Viro41984262008-08-23 17:00:34 -040048 default 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -070049 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
Paolo 'Blaisorblade' Giarrussoce2d2ae2006-01-18 17:42:59 -080054 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
Linus Torvalds1da177e2005-04-16 15:20:36 -070057config ARCH_HAS_SC_SIGNALS
Al Viro41984262008-08-23 17:00:34 -040058 def_bool !64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -070059
60config ARCH_REUSE_HOST_VSYSCALL_AREA
Al Viro41984262008-08-23 17:00:34 -040061 def_bool !64BIT
62
Akinobu Mitaf214ef32006-03-26 01:38:59 -080063config GENERIC_HWEIGHT
Al Viro41984262008-08-23 17:00:34 -040064 def_bool y
Al Viro61bee202008-08-25 04:51:27 -040065
66source "arch/um/Kconfig.um"
67
68endmenu
69
70source "arch/um/Kconfig.rest"