Merge branch 'asoc-5.2' into asoc-linus
[linux-block.git] / arch / um / Kconfig
CommitLineData
79b05c1f
CH
1# SPDX-License-Identifier: GPL-2.0
2
f163977d
CH
3menu "UML-specific options"
4
5config UML
6 bool
7 default y
8 select ARCH_HAS_KCOV
87a4c375 9 select ARCH_NO_PREEMPT
f163977d
CH
10 select HAVE_ARCH_AUDITSYSCALL
11 select HAVE_ARCH_SECCOMP_FILTER
12 select HAVE_UID16
13 select HAVE_FUTEX_CMPXCHG if FUTEX
14 select HAVE_DEBUG_KMEMLEAK
0d76433c 15 select HAVE_DEBUG_BUGVERBOSE
f163977d
CH
16 select GENERIC_IRQ_SHOW
17 select GENERIC_CPU_DEVICES
18 select GENERIC_CLOCKEVENTS
19 select HAVE_GCC_PLUGINS
20 select TTY # Needed for line.c
21
22config MMU
23 bool
24 default y
25
26config NO_IOMEM
27 def_bool y
28
29config ISA
30 bool
31
32config SBUS
33 bool
34
f163977d
CH
35config TRACE_IRQFLAGS_SUPPORT
36 bool
37 default y
38
39config LOCKDEP_SUPPORT
40 bool
41 default y
42
43config STACKTRACE_SUPPORT
44 bool
45 default y
46 select STACKTRACE
47
48config GENERIC_CALIBRATE_DELAY
49 bool
50 default y
51
52config HZ
53 int
54 default 100
55
56config NR_CPUS
57 int
58 range 1 1
59 default 1
60
79b05c1f 61source "arch/$(HEADER_ARCH)/um/Kconfig"
f163977d
CH
62
63config STATIC_LINK
64 bool "Force a static link"
65 default n
66 help
67 This option gives you the ability to force a static link of UML.
68 Normally, UML is linked as a shared binary. This is inconvenient for
69 use in a chroot jail. So, if you intend to run UML inside a chroot,
70 you probably want to say Y here.
71 Additionally, this option enables using higher memory spaces (up to
72 2.75G) for UML.
73
f163977d
CH
74config LD_SCRIPT_STATIC
75 bool
76 default y
77 depends on STATIC_LINK
78
79config LD_SCRIPT_DYN
80 bool
81 default y
82 depends on !LD_SCRIPT_STATIC
37606596 83 select MODULE_REL_CRCS if MODVERSIONS
f163977d 84
f163977d
CH
85config HOSTFS
86 tristate "Host filesystem"
87 help
37606596
EWI
88 While the User-Mode Linux port uses its own root file system for
89 booting and normal file access, this module lets the UML user
90 access files stored on the host. It does not require any
91 network connection between the Host and UML. An example use of
92 this might be:
f163977d 93
37606596 94 mount none /tmp/fromhost -t hostfs -o /tmp/umlshare
f163977d 95
37606596
EWI
96 where /tmp/fromhost is an empty directory inside UML and
97 /tmp/umlshare is a directory on the host with files the UML user
98 wishes to access.
f163977d 99
37606596
EWI
100 For more information, see
101 <http://user-mode-linux.sourceforge.net/hostfs.html>.
f163977d 102
37606596
EWI
103 If you'd like to be able to work with files stored on the host,
104 say Y or M here; otherwise say N.
f163977d
CH
105
106config MCONSOLE
107 bool "Management console"
108 depends on PROC_FS
109 default y
110 help
37606596
EWI
111 The user mode linux management console is a low-level interface to
112 the kernel, somewhat like the i386 SysRq interface. Since there is
113 a full-blown operating system running under every user mode linux
114 instance, there is much greater flexibility possible than with the
115 SysRq mechanism.
116
117 If you answer 'Y' to this option, to use this feature, you need the
118 mconsole client (called uml_mconsole) which is present in CVS in
119 2.4.5-9um and later (path /tools/mconsole), and is also in the
120 distribution RPM package in 2.4.6 and later.
121
122 It is safe to say 'Y' here.
f163977d
CH
123
124config MAGIC_SYSRQ
125 bool "Magic SysRq key"
126 depends on MCONSOLE
127 help
128 If you say Y here, you will have some control over the system even
129 if the system crashes for example during kernel debugging (e.g., you
130 will be able to flush the buffer cache to disk, reboot the system
131 immediately or dump some status information). A key for each of the
132 possible requests is provided.
133
134 This is the feature normally accomplished by pressing a key
135 while holding SysRq (Alt+PrintScreen).
136
137 On UML, this is accomplished by sending a "sysrq" command with
138 mconsole, followed by the letter for the requested command.
139
140 The keys are documented in <file:Documentation/admin-guide/sysrq.rst>. Don't say Y
141 unless you really know what this hack does.
142
143config KERNEL_STACK_ORDER
144 int "Kernel stack size order"
5c2ffce1
AI
145 default 2 if 64BIT
146 range 2 10 if 64BIT
147 default 1 if !64BIT
f163977d
CH
148 help
149 This option determines the size of UML kernel stacks. They will
150 be 1 << order pages. The default is OK unless you're running Valgrind
151 on UML, in which case, set this to 3.
5c2ffce1
AI
152 It is possible to reduce the stack to 1 for 64BIT and 0 for 32BIT on
153 older (pre-2017) CPUs. It is not recommended on newer CPUs due to the
154 increase in the size of the state which needs to be saved when handling
155 signals.
f163977d
CH
156
157config MMAPPER
158 tristate "iomem emulation driver"
159 help
160 This driver allows a host file to be used as emulated IO memory inside
161 UML.
162
163config NO_DMA
164 def_bool y
165
166config PGTABLE_LEVELS
167 int
168 default 3 if 3_LEVEL_PGTABLES
169 default 2
170
171config SECCOMP
172 def_bool y
173 prompt "Enable seccomp to safely compute untrusted bytecode"
174 ---help---
175 This kernel feature is useful for number crunching applications
176 that may need to compute untrusted bytecode during their
177 execution. By using pipes or other transports made available to
178 the process as file descriptors supporting the read/write
179 syscalls, it's possible to isolate those applications in
180 their own address space using seccomp. Once seccomp is
181 enabled via prctl(PR_SET_SECCOMP), it cannot be disabled
182 and the task is only allowed to execute a few safe syscalls
183 defined by each seccomp mode.
184
185 If unsure, say Y.
186
187endmenu
188
9bea1801 189source "arch/um/drivers/Kconfig"