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