aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRandy Dunlap <rdunlap@infradead.org>2017-11-17 18:31:47 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2017-11-17 19:10:05 -0500
commitd1b069f5febc850556cf49e9bb9092d3179c5be5 (patch)
treea96313b886e892a069ab107e003fc6b31f0beea3
parent7016383b44e855209aff47e56f11c59b8aa7b642 (diff)
EXPERT Kconfig menu: fix broken EXPERT menu
Clean up the EXPERT menu (yet again). Move FHANDLE and CHECKPOINT_RESTORE into the primary EXPERT menu since they already depend on EXPERT. Move BPF_SYSCALL and USERFAULTFD out of the EXPERT Kconfig symbols menu list since they do not depend on EXPERT and were breaking the continuity of that menu list. Move all of the KALLSYMS Kconfig symbols to the end of the EXPERT menu. This separates the kernel services from the build options. This patch depends on [PATCH] pci: move PCI_QUIRKS to the PCI bus menu (https://lkml.org/lkml/2017/11/2/907). Link: http://lkml.kernel.org/r/72e4465a-a5ff-cb3c-1a90-11aa4861b161@infradead.org Signed-off-by: Randy Dunlap <rdunlap@infradead.org> Acked-by: Daniel Borkmann <daniel@iogearbox.net> [BPF] Cc: Andrea Arcangeli <aarcange@redhat.com> Cc: Alexei Starovoitov <ast@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--init/Kconfig184
1 files changed, 93 insertions, 91 deletions
</
diff --git a/init/Kconfig b/init/Kconfig
index 7d5a6fbac56a..2934249fba46 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -283,19 +283,6 @@ config CROSS_MEMORY_ATTACH
283 to directly read from or write to another process' address space. 283 to directly read from or write to another process' address space.
284 See the man page for more details. 284 See the man page for more details.
285 285
286config FHANDLE
287 bool "open by fhandle syscalls" if EXPERT
288 select EXPORTFS
289 default y
290 help
291 If you say Y here, a user level program will be able to map
292 file names to handle and then later use the handle for
293 different file system operations. This is useful in implementing
294 userspace file servers, which now track files using handles instead
295 of names. The handle would remain the same even if file names
296 get renamed. Enables open_by_handle_at(2) and name_to_handle_at(2)
297 syscalls.
298
299config USELIB 286config USELIB
300 bool "uselib syscall" 287 bool "uselib syscall"
301 def_bool ALPHA || M68K || SPARC || X86_32 || IA32_EMULATION 288 def_bool ALPHA || M68K || SPARC || X86_32 || IA32_EMULATION
@@ -883,18 +870,6 @@ config SOCK_CGROUP_DATA
883 870
884endif # CGROUPS 871endif # CGROUPS
885 872
886config CHECKPOINT_RESTORE
887 bool "Checkpoint/restore support" if EXPERT
888 select PROC_CHILDREN
889 default n
890 help
891 Enables additional kernel features in a sake of checkpoint/restore.
892 In particular it adds auxiliary prctl codes to setup process text,
893 data and heap segment sizes, and a few additional /proc filesystem
894 entries.
895
896 If unsure, say N here.
897
898menuconfig NAMESPACES 873menuconfig NAMESPACES
899 bool "Namespaces support" if EXPERT 874 bool "Namespaces support" if EXPERT
900 depends on MULTIUSER 875 depends on MULTIUSER
@@ -1163,6 +1138,19 @@ config SYSCTL_SYSCALL
1163 1138
1164 If unsure say N here. 1139 If unsure say N here.
1165 1140
1141config FHANDLE
1142 bool "open by fhandle syscalls" if EXPERT
1143 select EXPORTFS
1144 default y
1145 help
1146 If you say Y here, a user level program will be able to map
1147 file names to handle and then later use the handle for
1148 different file system operations. This is useful in implementing
1149 userspace file servers, which now track files using handles instead
1150 of names. The handle would remain the same even if file names
1151 get renamed. Enables open_by_handle_at(2) and name_to_handle_at(2)
1152 syscalls.
1153
1166config POSIX_TIMERS 1154config POSIX_TIMERS
1167 bool "Posix Clocks & timers" if EXPERT 1155 bool "Posix Clocks & timers" if EXPERT
1168 default y 1156 default y
@@ -1180,54 +1168,6 @@ config POSIX_TIMERS
1180 1168
1181 If unsure say y. 1169 If unsure say y.
1182 1170
1183config KALLSYMS
1184 bool "Load all symbols for debugging/ksymoops" if EXPERT
1185 default y
1186 help
1187 Say Y here to let the kernel print out symbolic crash information and
1188 symbolic stack backtraces. This increases the size of the kernel
1189 somewhat, as all symbols have to be loaded into the kernel image.
1190
1191config KALLSYMS_ALL
1192 bool "Include all symbols in kallsyms"
1193 depends on DEBUG_KERNEL && KALLSYMS
1194 help
1195 Normally kallsyms only contains the symbols of functions for nicer
1196 OOPS messages and backtraces (i.e., symbols from the text and inittext
1197 sections). This is sufficient for most cases. And only in very rare
1198 cases (e.g., when a debugger is used) all symbols are required (e.g.,
1199 names of variables from the data sections, etc).
1200
1201 This option makes sure that all symbols are loaded into the kernel
1202 image (i.e., symbols from all sections) in cost of increased kernel
1203 size (depending on the kernel configuration, it may be 300KiB or
1204 something like this).
1205
1206 Say N unless you really need all symbols.
1207
1208config KALLSYMS_ABSOLUTE_PERCPU
1209 bool
1210 depends on KALLSYMS
1211 default X86_64 && SMP
1212
1213config KALLSYMS_BASE_RELATIVE
1214 bool
1215 depends on KALLSYMS
1216 default !IA64 && !(TILE && 64BIT)
1217 help
1218 Instead of emitting them as absolute values in the native word size,
1219 emit the symbol references in the kallsyms table as 32-bit entries,
1220 each containing a relative value in the range [base, base + U32_MAX]
1221 or, when KALLSYMS_ABSOLUTE_PERCPU is in effect, each containing either
1222 an absolute value in the range [0, S32_MAX] or a relative value in the
1223 range [base, base + S32_MAX], where base is the lowest relative symbol
1224 address encountered in the image.
1225
1226 On 64-bit builds, this reduces the size of the address table by 50%,
1227 but more importantly, it results in entries whose values are build
1228 time constants, and no relocation pass is required at runtime to fix
1229 up the entries based on the runtime load address of the kernel.
1230
1231config PRINTK 1171config PRINTK
1232 default y 1172 default y
1233 bool "Enable support for printk" if EXPERT 1173 bool "Enable support for printk" if EXPERT
@@ -1339,16 +1279,6 @@ config EVENTFD
1339 1279
1340 If unsure, say Y. 1280 If unsure, say Y.
1341 1281
1342# syscall, maps, verifier
1343config BPF_SYSCALL
1344 bool "Enable bpf() system call"
1345 select ANON_INODES
1346 select BPF
1347 default n
1348 help
1349 Enable the bpf() system call that allows to manipulate eBPF
1350 programs and maps via file descriptors.
1351
1352config SHMEM 1282config SHMEM
1353 bool "Use full shmem filesystem" if EXPERT 1283 bool "Use full shmem filesystem" if EXPERT
1354 default y 1284 default y
@@ -1378,14 +1308,6 @@ config ADVISE_SYSCALLS
1378 applications use these syscalls, you can disable this option to save 1308 applications use these syscalls, you can disable this option to save
1379 space. 1309 space.
1380 1310
1381config USERFAULTFD
1382 bool "Enable userfaultfd() system call"
1383 select ANON_INODES
1384 depends on MMU
1385 help
1386 Enable the userfaultfd() system call that allows to intercept and
1387 handle page faults in userland.
1388
1389config MEMBARRIER 1311config MEMBARRIER
1390 bool "Enable membarrier() system call" if EXPERT 1312 bool "Enable membarrier() system call" if EXPERT
1391 default y 1313 default y
@@ -1398,6 +1320,86 @@ config MEMBARRIER
1398 1320
1399 If unsure, say Y. 1321 If unsure, say Y.
1400 1322
1323config CHECKPOINT_RESTORE
1324 bool "Checkpoint/restore support" if EXPERT
1325 select PROC_CHILDREN
1326 default n
1327 help
1328 Enables additional kernel features in a sake of checkpoint/restore.
1329 In particular it adds auxiliary prctl codes to setup process text,
1330 data and heap segment sizes, and a few additional /proc filesystem
1331 entries.
1332
1333 If unsure, say N here.
1334
1335config KALLSYMS
1336 bool "Load all symbols for debugging/ksymoops" if EXPERT
1337 default y
1338 help
1339 Say Y here to let the kernel print out symbolic crash information and
1340 symbolic stack backtraces. This increases the size of the kernel
1341 somewhat, as all symbols have to be loaded into the kernel image.
1342
1343config KALLSYMS_ALL
1344 bool "Include all symbols in kallsyms"
1345 depends on DEBUG_KERNEL && KALLSYMS
1346 help
1347 Normally kallsyms only contains the symbols of functions for nicer
1348 OOPS messages and backtraces (i.e., symbols from the text and inittext
1349 sections). This is sufficient for most cases. And only in very rare
1350 cases (e.g., when a debugger is used) all symbols are required (e.g.,
1351 names of variables from the data sections, etc).
1352
1353 This option makes sure that all symbols are loaded into the kernel
1354 image (i.e., symbols from all sections) in cost of increased kernel
1355 size (depending on the kernel configuration, it may be 300KiB or
1356 something like this).
1357
1358 Say N unless you really need all symbols.
1359
1360config KALLSYMS_ABSOLUTE_PERCPU
1361 bool
1362 depends on KALLSYMS
1363 default X86_64 && SMP
1364
1365config KALLSYMS_BASE_RELATIVE
1366 bool
1367 depends on KALLSYMS
1368 default !IA64 && !(TILE && 64BIT)
1369 help
1370 Instead of emitting them as absolute values in the native word size,
1371 emit the symbol references in the kallsyms table as 32-bit entries,
1372 each containing a relative value in the range [base, base + U32_MAX]