.. | .. |
---|
5 | 5 | config UML |
---|
6 | 6 | bool |
---|
7 | 7 | default y |
---|
| 8 | + select ARCH_HAS_CPU_FINALIZE_INIT |
---|
8 | 9 | select ARCH_HAS_KCOV |
---|
9 | 10 | select ARCH_NO_PREEMPT |
---|
10 | 11 | select HAVE_ARCH_AUDITSYSCALL |
---|
11 | 12 | select HAVE_ARCH_SECCOMP_FILTER |
---|
| 13 | + select HAVE_ASM_MODVERSIONS |
---|
12 | 14 | select HAVE_UID16 |
---|
13 | 15 | select HAVE_FUTEX_CMPXCHG if FUTEX |
---|
14 | 16 | select HAVE_DEBUG_KMEMLEAK |
---|
| 17 | + select HAVE_DEBUG_BUGVERBOSE |
---|
| 18 | + select NO_DMA |
---|
15 | 19 | select GENERIC_IRQ_SHOW |
---|
16 | 20 | select GENERIC_CPU_DEVICES |
---|
17 | 21 | select GENERIC_CLOCKEVENTS |
---|
18 | 22 | select HAVE_GCC_PLUGINS |
---|
| 23 | + select SET_FS |
---|
19 | 24 | select TTY # Needed for line.c |
---|
20 | 25 | |
---|
21 | 26 | config MMU |
---|
.. | .. |
---|
29 | 34 | bool |
---|
30 | 35 | |
---|
31 | 36 | config SBUS |
---|
32 | | - bool |
---|
33 | | - |
---|
34 | | -config PCI |
---|
35 | | - bool |
---|
36 | | - |
---|
37 | | -config PCMCIA |
---|
38 | 37 | bool |
---|
39 | 38 | |
---|
40 | 39 | config TRACE_IRQFLAGS_SUPPORT |
---|
.. | .. |
---|
65 | 64 | |
---|
66 | 65 | source "arch/$(HEADER_ARCH)/um/Kconfig" |
---|
67 | 66 | |
---|
| 67 | +config MAY_HAVE_RUNTIME_DEPS |
---|
| 68 | + bool |
---|
| 69 | + |
---|
68 | 70 | config STATIC_LINK |
---|
69 | 71 | bool "Force a static link" |
---|
70 | | - default n |
---|
| 72 | + depends on CC_CAN_LINK_STATIC_NO_RUNTIME_DEPS || !MAY_HAVE_RUNTIME_DEPS |
---|
71 | 73 | help |
---|
72 | 74 | This option gives you the ability to force a static link of UML. |
---|
73 | 75 | Normally, UML is linked as a shared binary. This is inconvenient for |
---|
.. | .. |
---|
75 | 77 | you probably want to say Y here. |
---|
76 | 78 | Additionally, this option enables using higher memory spaces (up to |
---|
77 | 79 | 2.75G) for UML. |
---|
| 80 | + |
---|
| 81 | + NOTE: This option is incompatible with some networking features which |
---|
| 82 | + depend on features that require being dynamically loaded (like NSS). |
---|
78 | 83 | |
---|
79 | 84 | config LD_SCRIPT_STATIC |
---|
80 | 85 | bool |
---|
.. | .. |
---|
85 | 90 | bool |
---|
86 | 91 | default y |
---|
87 | 92 | depends on !LD_SCRIPT_STATIC |
---|
88 | | - select MODULE_REL_CRCS if MODVERSIONS |
---|
| 93 | + select MODULE_REL_CRCS if MODVERSIONS |
---|
89 | 94 | |
---|
90 | 95 | config HOSTFS |
---|
91 | 96 | tristate "Host filesystem" |
---|
92 | 97 | help |
---|
93 | | - While the User-Mode Linux port uses its own root file system for |
---|
94 | | - booting and normal file access, this module lets the UML user |
---|
95 | | - access files stored on the host. It does not require any |
---|
96 | | - network connection between the Host and UML. An example use of |
---|
97 | | - this might be: |
---|
| 98 | + While the User-Mode Linux port uses its own root file system for |
---|
| 99 | + booting and normal file access, this module lets the UML user |
---|
| 100 | + access files stored on the host. It does not require any |
---|
| 101 | + network connection between the Host and UML. An example use of |
---|
| 102 | + this might be: |
---|
98 | 103 | |
---|
99 | | - mount none /tmp/fromhost -t hostfs -o /tmp/umlshare |
---|
| 104 | + mount none /tmp/fromhost -t hostfs -o /tmp/umlshare |
---|
100 | 105 | |
---|
101 | | - where /tmp/fromhost is an empty directory inside UML and |
---|
102 | | - /tmp/umlshare is a directory on the host with files the UML user |
---|
103 | | - wishes to access. |
---|
| 106 | + where /tmp/fromhost is an empty directory inside UML and |
---|
| 107 | + /tmp/umlshare is a directory on the host with files the UML user |
---|
| 108 | + wishes to access. |
---|
104 | 109 | |
---|
105 | | - For more information, see |
---|
106 | | - <http://user-mode-linux.sourceforge.net/hostfs.html>. |
---|
| 110 | + For more information, see |
---|
| 111 | + <http://user-mode-linux.sourceforge.net/hostfs.html>. |
---|
107 | 112 | |
---|
108 | | - If you'd like to be able to work with files stored on the host, |
---|
109 | | - say Y or M here; otherwise say N. |
---|
| 113 | + If you'd like to be able to work with files stored on the host, |
---|
| 114 | + say Y or M here; otherwise say N. |
---|
110 | 115 | |
---|
111 | 116 | config MCONSOLE |
---|
112 | 117 | bool "Management console" |
---|
113 | 118 | depends on PROC_FS |
---|
114 | 119 | default y |
---|
115 | 120 | help |
---|
116 | | - The user mode linux management console is a low-level interface to |
---|
117 | | - the kernel, somewhat like the i386 SysRq interface. Since there is |
---|
118 | | - a full-blown operating system running under every user mode linux |
---|
119 | | - instance, there is much greater flexibility possible than with the |
---|
120 | | - SysRq mechanism. |
---|
| 121 | + The user mode linux management console is a low-level interface to |
---|
| 122 | + the kernel, somewhat like the i386 SysRq interface. Since there is |
---|
| 123 | + a full-blown operating system running under every user mode linux |
---|
| 124 | + instance, there is much greater flexibility possible than with the |
---|
| 125 | + SysRq mechanism. |
---|
121 | 126 | |
---|
122 | | - If you answer 'Y' to this option, to use this feature, you need the |
---|
123 | | - mconsole client (called uml_mconsole) which is present in CVS in |
---|
124 | | - 2.4.5-9um and later (path /tools/mconsole), and is also in the |
---|
125 | | - distribution RPM package in 2.4.6 and later. |
---|
| 127 | + If you answer 'Y' to this option, to use this feature, you need the |
---|
| 128 | + mconsole client (called uml_mconsole) which is present in CVS in |
---|
| 129 | + 2.4.5-9um and later (path /tools/mconsole), and is also in the |
---|
| 130 | + distribution RPM package in 2.4.6 and later. |
---|
126 | 131 | |
---|
127 | | - It is safe to say 'Y' here. |
---|
| 132 | + It is safe to say 'Y' here. |
---|
128 | 133 | |
---|
129 | 134 | config MAGIC_SYSRQ |
---|
130 | 135 | bool "Magic SysRq key" |
---|
.. | .. |
---|
147 | 152 | |
---|
148 | 153 | config KERNEL_STACK_ORDER |
---|
149 | 154 | int "Kernel stack size order" |
---|
150 | | - default 1 if 64BIT |
---|
151 | | - range 1 10 if 64BIT |
---|
152 | | - default 0 if !64BIT |
---|
| 155 | + default 2 if 64BIT |
---|
| 156 | + range 2 10 if 64BIT |
---|
| 157 | + default 1 if !64BIT |
---|
153 | 158 | help |
---|
154 | 159 | This option determines the size of UML kernel stacks. They will |
---|
155 | 160 | be 1 << order pages. The default is OK unless you're running Valgrind |
---|
156 | 161 | on UML, in which case, set this to 3. |
---|
| 162 | + It is possible to reduce the stack to 1 for 64BIT and 0 for 32BIT on |
---|
| 163 | + older (pre-2017) CPUs. It is not recommended on newer CPUs due to the |
---|
| 164 | + increase in the size of the state which needs to be saved when handling |
---|
| 165 | + signals. |
---|
157 | 166 | |
---|
158 | 167 | config MMAPPER |
---|
159 | 168 | tristate "iomem emulation driver" |
---|
.. | .. |
---|
161 | 170 | This driver allows a host file to be used as emulated IO memory inside |
---|
162 | 171 | UML. |
---|
163 | 172 | |
---|
164 | | -config NO_DMA |
---|
165 | | - def_bool y |
---|
166 | | - |
---|
167 | 173 | config PGTABLE_LEVELS |
---|
168 | 174 | int |
---|
169 | 175 | default 3 if 3_LEVEL_PGTABLES |
---|
170 | 176 | default 2 |
---|
171 | 177 | |
---|
172 | | -config SECCOMP |
---|
173 | | - def_bool y |
---|
174 | | - prompt "Enable seccomp to safely compute untrusted bytecode" |
---|
175 | | - ---help--- |
---|
176 | | - This kernel feature is useful for number crunching applications |
---|
177 | | - that may need to compute untrusted bytecode during their |
---|
178 | | - execution. By using pipes or other transports made available to |
---|
179 | | - the process as file descriptors supporting the read/write |
---|
180 | | - syscalls, it's possible to isolate those applications in |
---|
181 | | - their own address space using seccomp. Once seccomp is |
---|
182 | | - enabled via prctl(PR_SET_SECCOMP), it cannot be disabled |
---|
183 | | - and the task is only allowed to execute a few safe syscalls |
---|
184 | | - defined by each seccomp mode. |
---|
| 178 | +config UML_TIME_TRAVEL_SUPPORT |
---|
| 179 | + bool |
---|
| 180 | + prompt "Support time-travel mode (e.g. for test execution)" |
---|
| 181 | + # inf-cpu mode is incompatible with the benchmarking |
---|
| 182 | + depends on !RAID6_PQ_BENCHMARK |
---|
| 183 | + depends on !SMP |
---|
| 184 | + help |
---|
| 185 | + Enable this option to support time travel inside the UML instance. |
---|
185 | 186 | |
---|
186 | | - If unsure, say Y. |
---|
| 187 | + After enabling this option, two modes are accessible at runtime |
---|
| 188 | + (selected by the kernel command line), see the kernel's command- |
---|
| 189 | + line help for more details. |
---|
| 190 | + |
---|
| 191 | + It is safe to say Y, but you probably don't need this. |
---|
187 | 192 | |
---|
188 | 193 | endmenu |
---|
189 | 194 | |
---|
190 | 195 | source "arch/um/drivers/Kconfig" |
---|
| 196 | + |
---|
| 197 | +config ARCH_SUSPEND_POSSIBLE |
---|
| 198 | + def_bool y |
---|
| 199 | + |
---|
| 200 | +source "kernel/power/Kconfig" |
---|