forked from ~ljy/RK356X_SDK_RELEASE

hc
2023-12-11 6778948f9de86c3cfaf36725a7c87dcff9ba247f
kernel/arch/um/Kconfig
....@@ -9,13 +9,17 @@
99 select ARCH_NO_PREEMPT
1010 select HAVE_ARCH_AUDITSYSCALL
1111 select HAVE_ARCH_SECCOMP_FILTER
12
+ select HAVE_ASM_MODVERSIONS
1213 select HAVE_UID16
1314 select HAVE_FUTEX_CMPXCHG if FUTEX
1415 select HAVE_DEBUG_KMEMLEAK
16
+ select HAVE_DEBUG_BUGVERBOSE
17
+ select NO_DMA
1518 select GENERIC_IRQ_SHOW
1619 select GENERIC_CPU_DEVICES
1720 select GENERIC_CLOCKEVENTS
1821 select HAVE_GCC_PLUGINS
22
+ select SET_FS
1923 select TTY # Needed for line.c
2024
2125 config MMU
....@@ -29,12 +33,6 @@
2933 bool
3034
3135 config SBUS
32
- bool
33
-
34
-config PCI
35
- bool
36
-
37
-config PCMCIA
3836 bool
3937
4038 config TRACE_IRQFLAGS_SUPPORT
....@@ -65,9 +63,12 @@
6563
6664 source "arch/$(HEADER_ARCH)/um/Kconfig"
6765
66
+config MAY_HAVE_RUNTIME_DEPS
67
+ bool
68
+
6869 config STATIC_LINK
6970 bool "Force a static link"
70
- default n
71
+ depends on CC_CAN_LINK_STATIC_NO_RUNTIME_DEPS || !MAY_HAVE_RUNTIME_DEPS
7172 help
7273 This option gives you the ability to force a static link of UML.
7374 Normally, UML is linked as a shared binary. This is inconvenient for
....@@ -75,6 +76,9 @@
7576 you probably want to say Y here.
7677 Additionally, this option enables using higher memory spaces (up to
7778 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).
7882
7983 config LD_SCRIPT_STATIC
8084 bool
....@@ -85,46 +89,46 @@
8589 bool
8690 default y
8791 depends on !LD_SCRIPT_STATIC
88
- select MODULE_REL_CRCS if MODVERSIONS
92
+ select MODULE_REL_CRCS if MODVERSIONS
8993
9094 config HOSTFS
9195 tristate "Host filesystem"
9296 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:
98102
99
- mount none /tmp/fromhost -t hostfs -o /tmp/umlshare
103
+ mount none /tmp/fromhost -t hostfs -o /tmp/umlshare
100104
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.
104108
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>.
107111
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.
110114
111115 config MCONSOLE
112116 bool "Management console"
113117 depends on PROC_FS
114118 default y
115119 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.
121125
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.
126130
127
- It is safe to say 'Y' here.
131
+ It is safe to say 'Y' here.
128132
129133 config MAGIC_SYSRQ
130134 bool "Magic SysRq key"
....@@ -147,13 +151,17 @@
147151
148152 config KERNEL_STACK_ORDER
149153 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
153157 help
154158 This option determines the size of UML kernel stacks. They will
155159 be 1 << order pages. The default is OK unless you're running Valgrind
156160 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.
157165
158166 config MMAPPER
159167 tristate "iomem emulation driver"
....@@ -161,30 +169,31 @@
161169 This driver allows a host file to be used as emulated IO memory inside
162170 UML.
163171
164
-config NO_DMA
165
- def_bool y
166
-
167172 config PGTABLE_LEVELS
168173 int
169174 default 3 if 3_LEVEL_PGTABLES
170175 default 2
171176
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.
185185
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.
187191
188192 endmenu
189193
190194 source "arch/um/drivers/Kconfig"
195
+
196
+config ARCH_SUSPEND_POSSIBLE
197
+ def_bool y
198
+
199
+source "kernel/power/Kconfig"