Kconfig: consolidate the "Kernel hacking" menu
[linux-2.6-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
9 select HAVE_ARCH_AUDITSYSCALL
10 select HAVE_ARCH_SECCOMP_FILTER
11 select HAVE_UID16
12 select HAVE_FUTEX_CMPXCHG if FUTEX
13 select HAVE_DEBUG_KMEMLEAK
14 select GENERIC_IRQ_SHOW
15 select GENERIC_CPU_DEVICES
16 select GENERIC_CLOCKEVENTS
17 select HAVE_GCC_PLUGINS
18 select TTY # Needed for line.c
19
20config MMU
21 bool
22 default y
23
24config NO_IOMEM
25 def_bool y
26
27config ISA
28 bool
29
30config SBUS
31 bool
32
33config PCI
34 bool
35
36config PCMCIA
37 bool
38
39config TRACE_IRQFLAGS_SUPPORT
40 bool
41 default y
42
43config LOCKDEP_SUPPORT
44 bool
45 default y
46
47config STACKTRACE_SUPPORT
48 bool
49 default y
50 select STACKTRACE
51
52config GENERIC_CALIBRATE_DELAY
53 bool
54 default y
55
56config HZ
57 int
58 default 100
59
60config NR_CPUS
61 int
62 range 1 1
63 default 1
64
79b05c1f 65source "arch/$(HEADER_ARCH)/um/Kconfig"
f163977d
CH
66
67config STATIC_LINK
68 bool "Force a static link"
69 default n
70 help
71 This option gives you the ability to force a static link of UML.
72 Normally, UML is linked as a shared binary. This is inconvenient for
73 use in a chroot jail. So, if you intend to run UML inside a chroot,
74 you probably want to say Y here.
75 Additionally, this option enables using higher memory spaces (up to
76 2.75G) for UML.
77
f163977d
CH
78config LD_SCRIPT_STATIC
79 bool
80 default y
81 depends on STATIC_LINK
82
83config LD_SCRIPT_DYN
84 bool
85 default y
86 depends on !LD_SCRIPT_STATIC
87 select MODULE_REL_CRCS if MODVERSIONS
88
f163977d
CH
89config HOSTFS
90 tristate "Host filesystem"
91 help
92 While the User-Mode Linux port uses its own root file system for
93 booting and normal file access, this module lets the UML user
94 access files stored on the host. It does not require any
95 network connection between the Host and UML. An example use of
96 this might be:
97
98 mount none /tmp/fromhost -t hostfs -o /tmp/umlshare
99
100 where /tmp/fromhost is an empty directory inside UML and
101 /tmp/umlshare is a directory on the host with files the UML user
102 wishes to access.
103
104 For more information, see
105 <http://user-mode-linux.sourceforge.net/hostfs.html>.
106
107 If you'd like to be able to work with files stored on the host,
108 say Y or M here; otherwise say N.
109
110config MCONSOLE
111 bool "Management console"
112 depends on PROC_FS
113 default y
114 help
115 The user mode linux management console is a low-level interface to
116 the kernel, somewhat like the i386 SysRq interface. Since there is
117 a full-blown operating system running under every user mode linux
118 instance, there is much greater flexibility possible than with the
119 SysRq mechanism.
120
121 If you answer 'Y' to this option, to use this feature, you need the
122 mconsole client (called uml_mconsole) which is present in CVS in
123 2.4.5-9um and later (path /tools/mconsole), and is also in the
124 distribution RPM package in 2.4.6 and later.
125
126 It is safe to say 'Y' here.
127
128config MAGIC_SYSRQ
129 bool "Magic SysRq key"
130 depends on MCONSOLE
131 help
132 If you say Y here, you will have some control over the system even
133 if the system crashes for example during kernel debugging (e.g., you
134 will be able to flush the buffer cache to disk, reboot the system
135 immediately or dump some status information). A key for each of the
136 possible requests is provided.
137
138 This is the feature normally accomplished by pressing a key
139 while holding SysRq (Alt+PrintScreen).
140
141 On UML, this is accomplished by sending a "sysrq" command with
142 mconsole, followed by the letter for the requested command.
143
144 The keys are documented in <file:Documentation/admin-guide/sysrq.rst>. Don't say Y
145 unless you really know what this hack does.
146
147config KERNEL_STACK_ORDER
148 int "Kernel stack size order"
149 default 1 if 64BIT
150 range 1 10 if 64BIT
151 default 0 if !64BIT
152 help
153 This option determines the size of UML kernel stacks. They will
154 be 1 << order pages. The default is OK unless you're running Valgrind
155 on UML, in which case, set this to 3.
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"