~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/init/Kconfig

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /init/Kconfig (Version linux-6.12-rc7) and /init/Kconfig (Version policy-sample)


  1 # SPDX-License-Identifier: GPL-2.0-only           
  2 config CC_VERSION_TEXT                            
  3         string                                    
  4         default "$(CC_VERSION_TEXT)"              
  5         help                                      
  6           This is used in unclear ways:           
  7                                                   
  8           - Re-run Kconfig when the compiler i    
  9             The 'default' property references     
 10             CC_VERSION_TEXT so it is recorded     
 11             When the compiler is updated, Kcon    
 12                                                   
 13           - Ensure full rebuild when the compi    
 14             include/linux/compiler-version.h c    
 15             line so fixdep adds include/config    
 16             auto-generated dependency. When th    
 17             will touch it and then every file     
 18                                                   
 19 config CC_IS_GCC                                  
 20         def_bool $(success,test "$(cc-name)" =    
 21                                                   
 22 config GCC_VERSION                                
 23         int                                       
 24         default $(cc-version) if CC_IS_GCC        
 25         default 0                                 
 26                                                   
 27 config CC_IS_CLANG                                
 28         def_bool $(success,test "$(cc-name)" =    
 29                                                   
 30 config CLANG_VERSION                              
 31         int                                       
 32         default $(cc-version) if CC_IS_CLANG      
 33         default 0                                 
 34                                                   
 35 config AS_IS_GNU                                  
 36         def_bool $(success,test "$(as-name)" =    
 37                                                   
 38 config AS_IS_LLVM                                 
 39         def_bool $(success,test "$(as-name)" =    
 40                                                   
 41 config AS_VERSION                                 
 42         int                                       
 43         # Use clang version if this is the int    
 44         default CLANG_VERSION if AS_IS_LLVM       
 45         default $(as-version)                     
 46                                                   
 47 config LD_IS_BFD                                  
 48         def_bool $(success,test "$(ld-name)" =    
 49                                                   
 50 config LD_VERSION                                 
 51         int                                       
 52         default $(ld-version) if LD_IS_BFD        
 53         default 0                                 
 54                                                   
 55 config LD_IS_LLD                                  
 56         def_bool $(success,test "$(ld-name)" =    
 57                                                   
 58 config LLD_VERSION                                
 59         int                                       
 60         default $(ld-version) if LD_IS_LLD        
 61         default 0                                 
 62                                                   
 63 config RUSTC_VERSION                              
 64         int                                       
 65         default $(rustc-version)                  
 66         help                                      
 67           It does not depend on `RUST` since t    
 68           in a `depends on`.                      
 69                                                   
 70 config RUST_IS_AVAILABLE                          
 71         def_bool $(success,$(srctree)/scripts/    
 72         help                                      
 73           This shows whether a suitable Rust t    
 74                                                   
 75           Please see Documentation/rust/quick-    
 76           to satisfy the build requirements of    
 77                                                   
 78           In particular, the Makefile target '    
 79           why the Rust toolchain is not being     
 80                                                   
 81 config RUSTC_LLVM_VERSION                         
 82         int                                       
 83         default $(rustc-llvm-version)             
 84                                                   
 85 config CC_CAN_LINK                                
 86         bool                                      
 87         default $(success,$(srctree)/scripts/c    
 88         default $(success,$(srctree)/scripts/c    
 89                                                   
 90 config CC_CAN_LINK_STATIC                         
 91         bool                                      
 92         default $(success,$(srctree)/scripts/c    
 93         default $(success,$(srctree)/scripts/c    
 94                                                   
 95 # Fixed in GCC 14, 13.3, 12.4 and 11.5            
 96 # https://gcc.gnu.org/bugzilla/show_bug.cgi?id    
 97 config GCC_ASM_GOTO_OUTPUT_BROKEN                 
 98         bool                                      
 99         depends on CC_IS_GCC                      
100         default y if GCC_VERSION < 110500         
101         default y if GCC_VERSION >= 120000 &&     
102         default y if GCC_VERSION >= 130000 &&     
103                                                   
104 config CC_HAS_ASM_GOTO_OUTPUT                     
105         def_bool y                                
106         depends on !GCC_ASM_GOTO_OUTPUT_BROKEN    
107         depends on $(success,echo 'int foo(int    
108                                                   
109 config CC_HAS_ASM_GOTO_TIED_OUTPUT                
110         depends on CC_HAS_ASM_GOTO_OUTPUT         
111         # Detect buggy gcc and clang, fixed in    
112         def_bool $(success,echo 'int foo(int *    
113                                                   
114 config TOOLS_SUPPORT_RELR                         
115         def_bool $(success,env "CC=$(CC)" "LD=    
116                                                   
117 config CC_HAS_ASM_INLINE                          
118         def_bool $(success,echo 'void foo(void    
119                                                   
120 config CC_HAS_NO_PROFILE_FN_ATTR                  
121         def_bool $(success,echo '__attribute__    
122                                                   
123 config PAHOLE_VERSION                             
124         int                                       
125         default $(shell,$(srctree)/scripts/pah    
126                                                   
127 config CONSTRUCTORS                               
128         bool                                      
129                                                   
130 config IRQ_WORK                                   
131         def_bool y if SMP                         
132                                                   
133 config BUILDTIME_TABLE_SORT                       
134         bool                                      
135                                                   
136 config THREAD_INFO_IN_TASK                        
137         bool                                      
138         help                                      
139           Select this to move thread_info off     
140           make this work, an arch will need to    
141           except flags and fix any runtime bug    
142                                                   
143           One subtle change that will be neede    
144           and put_task_stack() in save_thread_    
145                                                   
146 menu "General setup"                              
147                                                   
148 config BROKEN                                     
149         bool                                      
150                                                   
151 config BROKEN_ON_SMP                              
152         bool                                      
153         depends on BROKEN || !SMP                 
154         default y                                 
155                                                   
156 config INIT_ENV_ARG_LIMIT                         
157         int                                       
158         default 32 if !UML                        
159         default 128 if UML                        
160         help                                      
161           Maximum of each of the number of arg    
162           variables passed to init from the ke    
163                                                   
164 config COMPILE_TEST                               
165         bool "Compile also drivers which will     
166         depends on HAS_IOMEM                      
167         help                                      
168           Some drivers can be compiled on a di    
169           intended to be run on. Despite they     
170           when they load they cannot be used d    
171           developers still, opposing to distri    
172           drivers to compile-test them.           
173                                                   
174           If you are a developer and want to b    
175           here. If you are a user/distributor,    
176           drivers to be distributed.              
177                                                   
178 config WERROR                                     
179         bool "Compile the kernel with warnings    
180         default COMPILE_TEST                      
181         help                                      
182           A kernel build should not cause any     
183           enables the '-Werror' (for C) and '-    
184           to enforce that rule by default. Cer    
185           such as the linker may be upgraded t    
186           well.                                   
187                                                   
188           However, if you have a new (or very     
189           and unusual warnings, or you have so    
190           you may need to disable this config     
191           successfully build the kernel.          
192                                                   
193           If in doubt, say Y.                     
194                                                   
195 config UAPI_HEADER_TEST                           
196         bool "Compile test UAPI headers"          
197         depends on HEADERS_INSTALL && CC_CAN_L    
198         help                                      
199           Compile test headers exported to use    
200           self-contained, i.e. compilable as s    
201                                                   
202           If you are a developer or tester and    
203           headers are self-contained, say Y he    
204                                                   
205 config LOCALVERSION                               
206         string "Local version - append to kern    
207         help                                      
208           Append an extra string to the end of    
209           This will show up when you type unam    
210           The string you set here will be appe    
211           any files with a filename matching l    
212           object and source tree, in that orde    
213           be a maximum of 64 characters.          
214                                                   
215 config LOCALVERSION_AUTO                          
216         bool "Automatically append version inf    
217         default y                                 
218         depends on !COMPILE_TEST                  
219         help                                      
220           This will try to automatically deter    
221           release tree by looking for git tags    
222           top of tree revision.                   
223                                                   
224           A string of the format -gxxxxxxxx wi    
225           if a git-based tree is found.  The s    
226           appended after any matching localver    
227           set in CONFIG_LOCALVERSION.             
228                                                   
229           (The actual string used here is the     
230           by running the command:                 
231                                                   
232             $ git rev-parse --verify HEAD         
233                                                   
234           which is done within the script "scr    
235                                                   
236 config BUILD_SALT                                 
237         string "Build ID Salt"                    
238         default ""                                
239         help                                      
240           The build ID is used to link binarie    
241           this option will use the value in th    
242           This is mostly useful for distributi    
243           build is unique between builds. It's    
244                                                   
245 config HAVE_KERNEL_GZIP                           
246         bool                                      
247                                                   
248 config HAVE_KERNEL_BZIP2                          
249         bool                                      
250                                                   
251 config HAVE_KERNEL_LZMA                           
252         bool                                      
253                                                   
254 config HAVE_KERNEL_XZ                             
255         bool                                      
256                                                   
257 config HAVE_KERNEL_LZO                            
258         bool                                      
259                                                   
260 config HAVE_KERNEL_LZ4                            
261         bool                                      
262                                                   
263 config HAVE_KERNEL_ZSTD                           
264         bool                                      
265                                                   
266 config HAVE_KERNEL_UNCOMPRESSED                   
267         bool                                      
268                                                   
269 choice                                            
270         prompt "Kernel compression mode"          
271         default KERNEL_GZIP                       
272         depends on HAVE_KERNEL_GZIP || HAVE_KE    
273         help                                      
274           The linux kernel is a kind of self-e    
275           Several compression algorithms are a    
276           in efficiency, compression and decom    
277           Compression speed is only relevant w    
278           Decompression speed is relevant at e    
279                                                   
280           If you have any problems with bzip2     
281           kernels, mail me (Alain Knaff) <alain    
282           version of this functionality (bzip2    
283           supplied by Christian Ludwig)           
284                                                   
285           High compression options are mostly     
286           are low on disk space (embedded syst    
287           size matters less.                      
288                                                   
289           If in doubt, select 'gzip'              
290                                                   
291 config KERNEL_GZIP                                
292         bool "Gzip"                               
293         depends on HAVE_KERNEL_GZIP               
294         help                                      
295           The old and tried gzip compression.     
296           between compression ratio and decomp    
297                                                   
298 config KERNEL_BZIP2                               
299         bool "Bzip2"                              
300         depends on HAVE_KERNEL_BZIP2              
301         help                                      
302           Its compression ratio and speed is i    
303           Decompression speed is slowest among    
304           size is about 10% smaller with bzip2    
305           Bzip2 uses a large amount of memory.    
306           will need at least 8MB RAM or more f    
307                                                   
308 config KERNEL_LZMA                                
309         bool "LZMA"                               
310         depends on HAVE_KERNEL_LZMA               
311         help                                      
312           This compression algorithm's ratio i    
313           is between gzip and bzip2.  Compress    
314           The kernel size is about 33% smaller    
315                                                   
316 config KERNEL_XZ                                  
317         bool "XZ"                                 
318         depends on HAVE_KERNEL_XZ                 
319         help                                      
320           XZ uses the LZMA2 algorithm and inst    
321           BCJ filters which can improve compre    
322           code. The size of the kernel is abou    
323           comparison to gzip. On architectures    
324           filter (i386, x86_64, ARM, ARM64, RI    
325           and SPARC), XZ will create a few per    
326           plain LZMA.                             
327                                                   
328           The speed is about the same as with     
329           speed of XZ is better than that of b    
330           and LZO. Compression is slow.           
331                                                   
332 config KERNEL_LZO                                 
333         bool "LZO"                                
334         depends on HAVE_KERNEL_LZO                
335         help                                      
336           Its compression ratio is the poorest    
337           size is about 10% bigger than gzip;     
338           (both compression and decompression)    
339                                                   
340 config KERNEL_LZ4                                 
341         bool "LZ4"                                
342         depends on HAVE_KERNEL_LZ4                
343         help                                      
344           LZ4 is an LZ77-type compressor with     
345           A preliminary version of LZ4 de/comp    
346           <https://code.google.com/p/lz4/>.       
347                                                   
348           Its compression ratio is worse than     
349           is about 8% bigger than LZO. But the    
350           faster than LZO.                        
351                                                   
352 config KERNEL_ZSTD                                
353         bool "ZSTD"                               
354         depends on HAVE_KERNEL_ZSTD               
355         help                                      
356           ZSTD is a compression algorithm targ    
357           with fast decompression speed. It wi    
358           decompress around the same speed as     
359           will need at least 192 KB RAM or mor    
360           line tool is required for compressio    
361                                                   
362 config KERNEL_UNCOMPRESSED                        
363         bool "None"                               
364         depends on HAVE_KERNEL_UNCOMPRESSED       
365         help                                      
366           Produce uncompressed kernel image. T    
367           you want. It is useful for debugging    
368           environments, where decompressing an    
369           slow. This option allows early boot     
370           and jump right at uncompressed kerne    
371                                                   
372 endchoice                                         
373                                                   
374 config DEFAULT_INIT                               
375         string "Default init path"                
376         default ""                                
377         help                                      
378           This option determines the default i    
379           option is passed on the kernel comma    
380           not present, we will still then move    
381           locations (e.g. /sbin/init, etc). If    
382           the fallback list when init= is not     
383                                                   
384 config DEFAULT_HOSTNAME                           
385         string "Default hostname"                 
386         default "(none)"                          
387         help                                      
388           This option determines the default s    
389           calls sethostname(2). The kernel tra    
390           but you may wish to use a different     
391           system more usable with less configu    
392                                                   
393 config SYSVIPC                                    
394         bool "System V IPC"                       
395         help                                      
396           Inter Process Communication is a sui    
397           system calls which let processes (ru    
398           exchange information. It is generall    
399           and some programs won't run unless y    
400           you want to run the DOS emulator dos    
401           DOSEMU-HOWTO, available from <http:/    
402           you'll need to say Y here.              
403                                                   
404           You can find documentation about IPC    
405           section 6.4 of the Linux Programmer'    
406           <http://www.tldp.org/guides.html>.      
407                                                   
408 config SYSVIPC_SYSCTL                             
409         bool                                      
410         depends on SYSVIPC                        
411         depends on SYSCTL                         
412         default y                                 
413                                                   
414 config SYSVIPC_COMPAT                             
415         def_bool y                                
416         depends on COMPAT && SYSVIPC              
417                                                   
418 config POSIX_MQUEUE                               
419         bool "POSIX Message Queues"               
420         depends on NET                            
421         help                                      
422           POSIX variant of message queues is a    
423           queues every message has a priority     
424           of receiving it by a process. If you    
425           programs written e.g. for Solaris wi    
426           queues (functions mq_*) say Y here.     
427                                                   
428           POSIX message queues are visible as     
429           and can be mounted somewhere if you     
430           operations on message queues.           
431                                                   
432           If unsure, say Y.                       
433                                                   
434 config POSIX_MQUEUE_SYSCTL                        
435         bool                                      
436         depends on POSIX_MQUEUE                   
437         depends on SYSCTL                         
438         default y                                 
439                                                   
440 config WATCH_QUEUE                                
441         bool "General notification queue"         
442         default n                                 
443         help                                      
444                                                   
445           This is a general notification queue    
446           userspace by splicing them into pipe    
447           with watches for key/keyring change     
448           notifications.                          
449                                                   
450           See Documentation/core-api/watch_que    
451                                                   
452 config CROSS_MEMORY_ATTACH                        
453         bool "Enable process_vm_readv/writev s    
454         depends on MMU                            
455         default y                                 
456         help                                      
457           Enabling this option adds the system    
458           process_vm_writev which allow a proc    
459           to directly read from or write to an    
460           See the man page for more details.      
461                                                   
462 config USELIB                                     
463         bool "uselib syscall (for libc5 and ea    
464         default ALPHA || M68K || SPARC            
465         help                                      
466           This option enables the uselib sysca    
467           dynamic linker from libc5 and earlie    
468           system call.  If you intend to run p    
469           earlier, you may need to enable this    
470           running glibc can safely disable thi    
471                                                   
472 config AUDIT                                      
473         bool "Auditing support"                   
474         depends on NET                            
475         help                                      
476           Enable auditing infrastructure that     
477           kernel subsystem, such as SELinux (w    
478           logging of avc messages output).  Sy    
479           on architectures which support it.      
480                                                   
481 config HAVE_ARCH_AUDITSYSCALL                     
482         bool                                      
483                                                   
484 config AUDITSYSCALL                               
485         def_bool y                                
486         depends on AUDIT && HAVE_ARCH_AUDITSYS    
487         select FSNOTIFY                           
488                                                   
489 source "kernel/irq/Kconfig"                       
490 source "kernel/time/Kconfig"                      
491 source "kernel/bpf/Kconfig"                       
492 source "kernel/Kconfig.preempt"                   
493                                                   
494 menu "CPU/Task time and stats accounting"         
495                                                   
496 config VIRT_CPU_ACCOUNTING                        
497         bool                                      
498                                                   
499 choice                                            
500         prompt "Cputime accounting"               
501         default TICK_CPU_ACCOUNTING               
502                                                   
503 # Kind of a stub config for the pure tick base    
504 config TICK_CPU_ACCOUNTING                        
505         bool "Simple tick based cputime accoun    
506         depends on !S390 && !NO_HZ_FULL           
507         help                                      
508           This is the basic tick based cputime    
509           statistics about user, system and id    
510           granularity.                            
511                                                   
512           If unsure, say Y.                       
513                                                   
514 config VIRT_CPU_ACCOUNTING_NATIVE                 
515         bool "Deterministic task and CPU time     
516         depends on HAVE_VIRT_CPU_ACCOUNTING &&    
517         select VIRT_CPU_ACCOUNTING                
518         help                                      
519           Select this option to enable more ac    
520           accounting.  This is done by reading    
521           kernel entry and exit and on transit    
522           between system, softirq and hardirq     
523           small performance impact.  In the ca    
524           this also enables accounting of stol    
525           systems.                                
526                                                   
527 config VIRT_CPU_ACCOUNTING_GEN                    
528         bool "Full dynticks CPU time accountin    
529         depends on HAVE_CONTEXT_TRACKING_USER     
530         depends on HAVE_VIRT_CPU_ACCOUNTING_GE    
531         depends on GENERIC_CLOCKEVENTS            
532         select VIRT_CPU_ACCOUNTING                
533         select CONTEXT_TRACKING_USER              
534         help                                      
535           Select this option to enable task an    
536           dynticks systems. This accounting is    
537           kernel-user boundaries using the con    
538           The accounting is thus performed at     
539           overhead.                               
540                                                   
541           For now this is only useful if you a    
542           dynticks subsystem development.         
543                                                   
544           If unsure, say N.                       
545                                                   
546 endchoice                                         
547                                                   
548 config IRQ_TIME_ACCOUNTING                        
549         bool "Fine granularity task level IRQ     
550         depends on HAVE_IRQ_TIME_ACCOUNTING &&    
551         help                                      
552           Select this option to enable fine gr    
553           accounting. This is done by reading     
554           transitions between softirq and hard    
555           small performance impact.               
556                                                   
557           If in doubt, say N here.                
558                                                   
559 config HAVE_SCHED_AVG_IRQ                         
560         def_bool y                                
561         depends on IRQ_TIME_ACCOUNTING || PARA    
562         depends on SMP                            
563                                                   
564 config SCHED_HW_PRESSURE                          
565         bool                                      
566         default y if ARM && ARM_CPU_TOPOLOGY      
567         default y if ARM64                        
568         depends on SMP                            
569         depends on CPU_FREQ_THERMAL               
570         help                                      
571           Select this option to enable HW pres    
572           scheduler. HW pressure is the value     
573           that reflects the reduction in CPU c    
574           HW throttling. HW throttling occurs     
575           a CPU is capped due to high operatin    
576                                                   
577           If selected, the scheduler will be a    
578           i.e. put less load on throttled CPUs    
579                                                   
580           This requires the architecture to im    
581           arch_update_hw_pressure() and arch_s    
582                                                   
583 config BSD_PROCESS_ACCT                           
584         bool "BSD Process Accounting"             
585         depends on MULTIUSER                      
586         help                                      
587           If you say Y here, a user level prog    
588           kernel (via a special system call) t    
589           information to a file: whenever a pr    
590           that process will be appended to the    
591           information includes things such as     
592           command name, memory usage, controll    
593           list is in the struct acct in <file:    
594           up to the user level program to do u    
595           information.  This is generally a go    
596                                                   
597 config BSD_PROCESS_ACCT_V3                        
598         bool "BSD Process Accounting version 3    
599         depends on BSD_PROCESS_ACCT               
600         default n                                 
601         help                                      
602           If you say Y here, the process accou    
603           in a new file format that also logs     
604           process and its parent. Note that th    
605           with previous v0/v1/v2 file formats,    
606           for processing it. A preliminary ver    
607           at <http://www.gnu.org/software/acct    
608                                                   
609 config TASKSTATS                                  
610         bool "Export task/process statistics t    
611         depends on NET                            
612         depends on MULTIUSER                      
613         default n                                 
614         help                                      
615           Export selected statistics for tasks    
616           generic netlink interface. Unlike BS    
617           statistics are available during the     
618           responses to commands. Like BSD acco    
619           space on task exit.                     
620                                                   
621           Say N if unsure.                        
622                                                   
623 config TASK_DELAY_ACCT                            
624         bool "Enable per-task delay accounting    
625         depends on TASKSTATS                      
626         select SCHED_INFO                         
627         help                                      
628           Collect information on time spent by    
629           resources like cpu, synchronous bloc    
630           in pages. Such statistics can help i    
631           relative to other tasks for cpu, io,    
632                                                   
633           Say N if unsure.                        
634                                                   
635 config TASK_XACCT                                 
636         bool "Enable extended accounting over     
637         depends on TASKSTATS                      
638         help                                      
639           Collect extended task accounting dat    
640           to userland for processing over the     
641                                                   
642           Say N if unsure.                        
643                                                   
644 config TASK_IO_ACCOUNTING                         
645         bool "Enable per-task storage I/O acco    
646         depends on TASK_XACCT                     
647         help                                      
648           Collect information on the number of    
649           task has caused.                        
650                                                   
651           Say N if unsure.                        
652                                                   
653 config PSI                                        
654         bool "Pressure stall information track    
655         select KERNFS                             
656         help                                      
657           Collect metrics that indicate how ov    
658           and IO capacity are in the system.      
659                                                   
660           If you say Y here, the kernel will c    
661           pressure statistics files cpu, memor    
662           the share of walltime in which some     
663           delayed due to contention of the res    
664                                                   
665           In kernels with cgroup support, cgro    
666           have cpu.pressure, memory.pressure,     
667           which aggregate pressure stalls for     
668                                                   
669           For more details see Documentation/a    
670                                                   
671           Say N if unsure.                        
672                                                   
673 config PSI_DEFAULT_DISABLED                       
674         bool "Require boot parameter to enable    
675         default n                                 
676         depends on PSI                            
677         help                                      
678           If set, pressure stall information t    
679           per default but can be enabled throu    
680           kernel commandline during boot.         
681                                                   
682           This feature adds some code to the t    
683           paths of the scheduler. The overhead    
684           common scheduling-intense workloads     
685           webservers, memcache), but it does s    
686           scheduler stress tests, such as hack    
687                                                   
688           If you are paranoid and not sure wha    
689           used for, say Y.                        
690                                                   
691           Say N if unsure.                        
692                                                   
693 endmenu # "CPU/Task time and stats accounting"    
694                                                   
695 config CPU_ISOLATION                              
696         bool "CPU isolation"                      
697         depends on SMP || COMPILE_TEST            
698         default y                                 
699         help                                      
700           Make sure that CPUs running critical    
701           any source of "noise" such as unboun    
702           Unbound jobs get offloaded to housek    
703           the "isolcpus=" boot parameter.         
704                                                   
705           Say Y if unsure.                        
706                                                   
707 source "kernel/rcu/Kconfig"                       
708                                                   
709 config IKCONFIG                                   
710         tristate "Kernel .config support"         
711         help                                      
712           This option enables the complete Lin    
713           contents to be saved in the kernel.     
714           of which kernel options are used in     
715           on-disk kernel.  This information ca    
716           image file with the script scripts/e    
717           input to rebuild the current kernel     
718           It can also be extracted from a runn    
719           /proc/config.gz if enabled (below).     
720                                                   
721 config IKCONFIG_PROC                              
722         bool "Enable access to .config through    
723         depends on IKCONFIG && PROC_FS            
724         help                                      
725           This option enables access to the ke    
726           through /proc/config.gz.                
727                                                   
728 config IKHEADERS                                  
729         tristate "Enable kernel headers throug    
730         depends on SYSFS                          
731         help                                      
732           This option enables access to the in    
733           the build process. These can be used    
734           or similar programs.  If you build t    
735           kheaders.ko is built which can be lo    
736                                                   
737 config LOG_BUF_SHIFT                              
738         int "Kernel log buffer size (16 => 64K    
739         range 12 25                               
740         default 17                                
741         depends on PRINTK                         
742         help                                      
743           Select the minimal kernel log buffer    
744           The final size is affected by LOG_CP    
745           parameter, see below. Any higher siz    
746           by "log_buf_len" boot parameter.        
747                                                   
748           Examples:                               
749                      17 => 128 KB                 
750                      16 => 64 KB                  
751                      15 => 32 KB                  
752                      14 => 16 KB                  
753                      13 =>  8 KB                  
754                      12 =>  4 KB                  
755                                                   
756 config LOG_CPU_MAX_BUF_SHIFT                      
757         int "CPU kernel log buffer size contri    
758         depends on SMP                            
759         range 0 21                                
760         default 0 if BASE_SMALL                   
761         default 12                                
762         depends on PRINTK                         
763         help                                      
764           This option allows to increase the d    
765           according to the number of CPUs. The    
766           of each CPU as a power of 2. The use    
767           lines however it might be much more     
768           e.g. backtraces.                        
769                                                   
770           The increased size means that a new     
771           the original static one is unused. I    
772           with more CPUs. Therefore this value    
773           contributions is greater than the ha    
774           buffer as defined by LOG_BUF_SHIFT.     
775           so that more than 16 CPUs are needed    
776                                                   
777           Also this option is ignored when "lo    
778           used as it forces an exact (power of    
779                                                   
780           The number of possible CPUs is used     
781           hotplugging making the computation o    
782           scenario while allowing a simple alg    
783                                                   
784           Examples shift values and their mean    
785                      17 => 128 KB for each CPU    
786                      16 =>  64 KB for each CPU    
787                      15 =>  32 KB for each CPU    
788                      14 =>  16 KB for each CPU    
789                      13 =>   8 KB for each CPU    
790                      12 =>   4 KB for each CPU    
791                                                   
792 config PRINTK_INDEX                               
793         bool "Printk indexing debugfs interfac    
794         depends on PRINTK && DEBUG_FS             
795         help                                      
796           Add support for indexing of all prin    
797           at <debugfs>/printk/index/<module>.     
798                                                   
799           This can be used as part of maintain    
800           /dev/kmsg, as it permits auditing th    
801           kernel, allowing detection of cases     
802           changed or no longer present.           
803                                                   
804           There is no additional runtime cost     
805                                                   
806 #                                                 
807 # Architectures with an unreliable sched_clock    
808 #                                                 
809 config HAVE_UNSTABLE_SCHED_CLOCK                  
810         bool                                      
811                                                   
812 config GENERIC_SCHED_CLOCK                        
813         bool                                      
814                                                   
815 menu "Scheduler features"                         
816                                                   
817 config UCLAMP_TASK                                
818         bool "Enable utilization clamping for     
819         depends on CPU_FREQ_GOV_SCHEDUTIL         
820         help                                      
821           This feature enables the scheduler t    
822           of each CPU based on RUNNABLE tasks     
823                                                   
824           With this option, the user can speci    
825           utilization allowed for RUNNABLE tas    
826           the maximum frequency a task should     
827           defines the minimum frequency it sho    
828                                                   
829           Both min and max utilization clamp v    
830           aiming at improving its frequency se    
831           enforce or grant any specific bandwi    
832                                                   
833           If in doubt, say N.                     
834                                                   
835 config UCLAMP_BUCKETS_COUNT                       
836         int "Number of supported utilization c    
837         range 5 20                                
838         default 5                                 
839         depends on UCLAMP_TASK                    
840         help                                      
841           Defines the number of clamp buckets     
842           will be SCHED_CAPACITY_SCALE/UCLAMP_    
843           number of clamp buckets the finer th    
844           the precision of clamping aggregatio    
845                                                   
846           For example, with the minimum config    
847           clamp buckets tracking 20% utilizati    
848           be refcounted in the [20..39]% bucke    
849           effective value to 25%.                 
850           If a second 30% boosted task should     
851           that task will be refcounted in the     
852           it will boost the bucket clamp effec    
853           The clamp effective value of a bucke    
854           (20% in the example above) when ther    
855           that bucket.                            
856                                                   
857           An additional boost/capping margin c    
858           example above the 25% task will be b    
859           CPU. If that should be considered no    
860           it's always possible to reduce the m    
861           clamp buckets to trade off used memo    
862           precision.                              
863                                                   
864           If in doubt, use the default value.     
865                                                   
866 endmenu                                           
867                                                   
868 #                                                 
869 # For architectures that want to enable the su    
870 # balancing logic:                                
871 #                                                 
872 config ARCH_SUPPORTS_NUMA_BALANCING               
873         bool                                      
874                                                   
875 #                                                 
876 # For architectures that prefer to flush all T    
877 # are unmapped instead of sending one IPI per     
878 # must provide guarantees on what happens if a    
879 # written after the unmap. Details are in mm/r    
880 # should_defer_flush. The architecture should     
881 # and the refill costs are offset by the savin    
882 config ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH          
883         bool                                      
884                                                   
885 config CC_HAS_INT128                              
886         def_bool !$(cc-option,$(m64-flag) -D__    
887                                                   
888 config CC_IMPLICIT_FALLTHROUGH                    
889         string                                    
890         default "-Wimplicit-fallthrough=5" if     
891         default "-Wimplicit-fallthrough" if CC    
892                                                   
893 # Currently, disable gcc-10+ array-bounds glob    
894 # It's still broken in gcc-13, so no upper bou    
895 config GCC10_NO_ARRAY_BOUNDS                      
896         def_bool y                                
897                                                   
898 config CC_NO_ARRAY_BOUNDS                         
899         bool                                      
900         default y if CC_IS_GCC && GCC_VERSION     
901                                                   
902 # Currently, disable -Wstringop-overflow for G    
903 config GCC_NO_STRINGOP_OVERFLOW                   
904         def_bool y                                
905                                                   
906 config CC_NO_STRINGOP_OVERFLOW                    
907         bool                                      
908         default y if CC_IS_GCC && GCC_NO_STRIN    
909                                                   
910 config CC_STRINGOP_OVERFLOW                       
911         bool                                      
912         default y if CC_IS_GCC && !CC_NO_STRIN    
913                                                   
914 #                                                 
915 # For architectures that know their GCC __int1    
916 #                                                 
917 config ARCH_SUPPORTS_INT128                       
918         bool                                      
919                                                   
920 # For architectures that (ab)use NUMA to repre    
921 # all cpu-local but of different latencies, su    
922 #                                                 
923 config ARCH_WANT_NUMA_VARIABLE_LOCALITY           
924         bool                                      
925                                                   
926 config NUMA_BALANCING                             
927         bool "Memory placement aware NUMA sche    
928         depends on ARCH_SUPPORTS_NUMA_BALANCIN    
929         depends on !ARCH_WANT_NUMA_VARIABLE_LO    
930         depends on SMP && NUMA && MIGRATION &&    
931         help                                      
932           This option adds support for automat    
933           The mechanism is quite primitive and    
934           it has references to the node the ta    
935                                                   
936           This system will be inactive on UMA     
937                                                   
938 config NUMA_BALANCING_DEFAULT_ENABLED             
939         bool "Automatically enable NUMA aware     
940         default y                                 
941         depends on NUMA_BALANCING                 
942         help                                      
943           If set, automatic NUMA balancing wil    
944           machine.                                
945                                                   
946 config SLAB_OBJ_EXT                               
947         bool                                      
948                                                   
949 menuconfig CGROUPS                                
950         bool "Control Group support"              
951         select KERNFS                             
952         help                                      
953           This option adds support for groupin    
954           use with process control subsystems     
955           controls or device isolation.           
956           See                                     
957                 - Documentation/scheduler/sche    
958                 - Documentation/admin-guide/cg    
959                                           and     
960                                                   
961           Say N if unsure.                        
962                                                   
963 if CGROUPS                                        
964                                                   
965 config PAGE_COUNTER                               
966         bool                                      
967                                                   
968 config CGROUP_FAVOR_DYNMODS                       
969         bool "Favor dynamic modification laten    
970         help                                      
971           This option enables the "favordynmod    
972           which reduces the latencies of dynam    
973           as task migrations and controller on    
974           hot path operations such as forks an    
975                                                   
976           Say N if unsure.                        
977                                                   
978 config MEMCG                                      
979         bool "Memory controller"                  
980         select PAGE_COUNTER                       
981         select EVENTFD                            
982         select SLAB_OBJ_EXT                       
983         help                                      
984           Provides control over the memory foo    
985                                                   
986 config MEMCG_V1                                   
987         bool "Legacy cgroup v1 memory controll    
988         depends on MEMCG                          
989         default n                                 
990         help                                      
991           Legacy cgroup v1 memory controller w    
992           cgroup v2 implementation. The v1 is     
993           which haven't migrated to the new cg    
994           do not have any such application the    
995           this option disabled.                   
996                                                   
997           Please note that feature set of the     
998           going to shrink due to deprecation p    
999           controller are highly discouraged.      
1000                                                  
1001           Say N if unsure.                       
1002                                                  
1003 config BLK_CGROUP                                
1004         bool "IO controller"                     
1005         depends on BLOCK                         
1006         default n                                
1007         help                                     
1008         Generic block IO controller cgroup in    
1009         cgroup interface which should be used    
1010         policies.                                
1011                                                  
1012         Currently, CFQ IO scheduler uses it t    
1013         control disk bandwidth allocation (pr    
1014         to such task groups. It is also used     
1015         block layer to implement upper limit     
1016                                                  
1017         This option only enables generic Bloc    
1018         One needs to also enable actual IO co    
1019         enabling proportional weight division    
1020         CONFIG_BFQ_GROUP_IOSCHED=y; for enabl    
1021         CONFIG_BLK_DEV_THROTTLING=y.             
1022                                                  
1023         See Documentation/admin-guide/cgroup-    
1024                                                  
1025 config CGROUP_WRITEBACK                          
1026         bool                                     
1027         depends on MEMCG && BLK_CGROUP           
1028         default y                                
1029                                                  
1030 menuconfig CGROUP_SCHED                          
1031         bool "CPU controller"                    
1032         default n                                
1033         help                                     
1034           This feature lets CPU scheduler rec    
1035           bandwidth allocation to such task g    
1036           tasks.                                 
1037                                                  
1038 if CGROUP_SCHED                                  
1039 config GROUP_SCHED_WEIGHT                        
1040         def_bool n                               
1041                                                  
1042 config FAIR_GROUP_SCHED                          
1043         bool "Group scheduling for SCHED_OTHE    
1044         depends on CGROUP_SCHED                  
1045         select GROUP_SCHED_WEIGHT                
1046         default CGROUP_SCHED                     
1047                                                  
1048 config CFS_BANDWIDTH                             
1049         bool "CPU bandwidth provisioning for     
1050         depends on FAIR_GROUP_SCHED              
1051         default n                                
1052         help                                     
1053           This option allows users to define     
1054           tasks running within the fair group    
1055           set are considered to be unconstrai    
1056           restriction.                           
1057           See Documentation/scheduler/sched-b    
1058                                                  
1059 config RT_GROUP_SCHED                            
1060         bool "Group scheduling for SCHED_RR/F    
1061         depends on CGROUP_SCHED                  
1062         default n                                
1063         help                                     
1064           This feature lets you explicitly al    
1065           to task groups. If enabled, it will    
1066           schedule realtime tasks for non-roo    
1067           realtime bandwidth for them.           
1068           See Documentation/scheduler/sched-r    
1069                                                  
1070 config EXT_GROUP_SCHED                           
1071         bool                                     
1072         depends on SCHED_CLASS_EXT && CGROUP_    
1073         select GROUP_SCHED_WEIGHT                
1074         default y                                
1075                                                  
1076 endif #CGROUP_SCHED                              
1077                                                  
1078 config SCHED_MM_CID                              
1079         def_bool y                               
1080         depends on SMP && RSEQ                   
1081                                                  
1082 config UCLAMP_TASK_GROUP                         
1083         bool "Utilization clamping per group     
1084         depends on CGROUP_SCHED                  
1085         depends on UCLAMP_TASK                   
1086         default n                                
1087         help                                     
1088           This feature enables the scheduler     
1089           of each CPU based on RUNNABLE tasks    
1090                                                  
1091           When this option is enabled, the us    
1092           CPU bandwidth which is allowed for     
1093           The max bandwidth allows to clamp t    
1094           can use, while the min bandwidth al    
1095           frequency a task will always use.      
1096                                                  
1097           When task group based utilization c    
1098           specified task-specific clamp value    
1099           specified clamp value. Both minimum    
1100           be bigger than the corresponding cl    
1101                                                  
1102           If in doubt, say N.                    
1103                                                  
1104 config CGROUP_PIDS                               
1105         bool "PIDs controller"                   
1106         help                                     
1107           Provides enforcement of process num    
1108           cgroup. Any attempt to fork more pr    
1109           cgroup will fail. PIDs are fundamen    
1110           is fairly trivial to reach PID exha    
1111           conservative kmemcg limit. As a res    
1112           system to halt without being limite    
1113           PIDs controller is designed to stop    
1114                                                  
1115           It should be noted that organisatio    
1116           to a cgroup hierarchy) will *not* b    
1117           since the PIDs limit only affects a    
1118           attach to a cgroup.                    
1119                                                  
1120 config CGROUP_RDMA                               
1121         bool "RDMA controller"                   
1122         help                                     
1123           Provides enforcement of RDMA resour    
1124           It is fairly easy for consumers to     
1125           can result into resource unavailabi    
1126           RDMA controller is designed to stop    
1127           Attaching processes with active RDM    
1128           hierarchy is allowed even if can cr    
1129                                                  
1130 config CGROUP_FREEZER                            
1131         bool "Freezer controller"                
1132         help                                     
1133           Provides a way to freeze and unfree    
1134           cgroup.                                
1135                                                  
1136           This option affects the ORIGINAL cg    
1137           controller includes important in-ke    
1138                                                  
1139           If you're using cgroup2, say N.        
1140                                                  
1141 config CGROUP_HUGETLB                            
1142         bool "HugeTLB controller"                
1143         depends on HUGETLB_PAGE                  
1144         select PAGE_COUNTER                      
1145         default n                                
1146         help                                     
1147           Provides a cgroup controller for Hu    
1148           When you enable this, you can put a    
1149           The limit is enforced during page f    
1150           support page reclaim, enforcing the    
1151           that, the application will get SIGB    
1152           HugeTLB pages beyond its limit. Thi    
1153           beforehand how much HugeTLB pages i    
1154           control group is tracked in the thi    
1155           that we cannot use the controller w    
1156                                                  
1157 config CPUSETS                                   
1158         bool "Cpuset controller"                 
1159         depends on SMP                           
1160         help                                     
1161           This option will let you create and    
1162           allow dynamically partitioning a sy    
1163           Memory Nodes and assigning tasks to    
1164           This is primarily useful on large S    
1165                                                  
1166           Say N if unsure.                       
1167                                                  
1168 config CPUSETS_V1                                
1169         bool "Legacy cgroup v1 cpusets contro    
1170         depends on CPUSETS                       
1171         default n                                
1172         help                                     
1173           Legacy cgroup v1 cpusets controller    
1174           cgroup v2 implementation. The v1 is    
1175           which haven't migrated to the new c    
1176           do not have any such application th    
1177           this option disabled.                  
1178                                                  
1179           Say N if unsure.                       
1180                                                  
1181 config PROC_PID_CPUSET                           
1182         bool "Include legacy /proc/<pid>/cpus    
1183         depends on CPUSETS                       
1184         default y                                
1185                                                  
1186 config CGROUP_DEVICE                             
1187         bool "Device controller"                 
1188         help                                     
1189           Provides a cgroup controller implem    
1190           devices which a process in the cgro    
1191                                                  
1192 config CGROUP_CPUACCT                            
1193         bool "Simple CPU accounting controlle    
1194         help                                     
1195           Provides a simple controller for mo    
1196           total CPU consumed by the tasks in     
1197                                                  
1198 config CGROUP_PERF                               
1199         bool "Perf controller"                   
1200         depends on PERF_EVENTS                   
1201         help                                     
1202           This option extends the perf per-cp    
1203           to threads which belong to the cgro    
1204           designated cpu.  Or this can be use    
1205           so that it can monitor performance     
1206                                                  
1207           Say N if unsure.                       
1208                                                  
1209 config CGROUP_BPF                                
1210         bool "Support for eBPF programs attac    
1211         depends on BPF_SYSCALL                   
1212         select SOCK_CGROUP_DATA                  
1213         help                                     
1214           Allow attaching eBPF programs to a     
1215           syscall command BPF_PROG_ATTACH.       
1216                                                  
1217           In which context these programs are    
1218           of attachment. For instance, progra    
1219           BPF_CGROUP_INET_INGRESS will be exe    
1220           inet sockets.                          
1221                                                  
1222 config CGROUP_MISC                               
1223         bool "Misc resource controller"          
1224         default n                                
1225         help                                     
1226           Provides a controller for miscellan    
1227                                                  
1228           Miscellaneous scalar resources are     
1229           which cannot be abstracted like the    
1230           tracks and limits the miscellaneous    
1231           attached to a cgroup hierarchy.        
1232                                                  
1233           For more information, please check     
1234           /Documentation/admin-guide/cgroup-v    
1235                                                  
1236 config CGROUP_DEBUG                              
1237         bool "Debug controller"                  
1238         default n                                
1239         depends on DEBUG_KERNEL                  
1240         help                                     
1241           This option enables a simple contro    
1242           debugging information about the cgr    
1243           controller is for control cgroup de    
1244           interfaces are not stable.             
1245                                                  
1246           Say N.                                 
1247                                                  
1248 config SOCK_CGROUP_DATA                          
1249         bool                                     
1250         default n                                
1251                                                  
1252 endif # CGROUPS                                  
1253                                                  
1254 menuconfig NAMESPACES                            
1255         bool "Namespaces support" if EXPERT      
1256         depends on MULTIUSER                     
1257         default !EXPERT                          
1258         help                                     
1259           Provides the way to make tasks work    
1260           the same id. For example same IPC i    
1261           or same user id or pid may refer to    
1262           different namespaces.                  
1263                                                  
1264 if NAMESPACES                                    
1265                                                  
1266 config UTS_NS                                    
1267         bool "UTS namespace"                     
1268         default y                                
1269         help                                     
1270           In this namespace tasks see differe    
1271           uname() system call                    
1272                                                  
1273 config TIME_NS                                   
1274         bool "TIME namespace"                    
1275         depends on GENERIC_VDSO_TIME_NS          
1276         default y                                
1277         help                                     
1278           In this namespace boottime and mono    
1279           The time will keep going with the s    
1280                                                  
1281 config IPC_NS                                    
1282         bool "IPC namespace"                     
1283         depends on (SYSVIPC || POSIX_MQUEUE)     
1284         default y                                
1285         help                                     
1286           In this namespace tasks work with I    
1287           different IPC objects in different     
1288                                                  
1289 config USER_NS                                   
1290         bool "User namespace"                    
1291         default n                                
1292         help                                     
1293           This allows containers, i.e. vserve    
1294           to provide different user info for     
1295                                                  
1296           When user namespaces are enabled in    
1297           recommended that the MEMCG option a    
1298           user-space use the memory control g    
1299           of memory a memory unprivileged use    
1300                                                  
1301           If unsure, say N.                      
1302                                                  
1303 config PID_NS                                    
1304         bool "PID Namespaces"                    
1305         default y                                
1306         help                                     
1307           Support process id namespaces.  Thi    
1308           processes with the same pid as long    
1309           pid namespaces.  This is a building    
1310                                                  
1311 config NET_NS                                    
1312         bool "Network namespace"                 
1313         depends on NET                           
1314         default y                                
1315         help                                     
1316           Allow user space to create what app    
1317           of the network stack.                  
1318                                                  
1319 endif # NAMESPACES                               
1320                                                  
1321 config CHECKPOINT_RESTORE                        
1322         bool "Checkpoint/restore support"        
1323         depends on PROC_FS                       
1324         select PROC_CHILDREN                     
1325         select KCMP                              
1326         default n                                
1327         help                                     
1328           Enables additional kernel features     
1329           In particular it adds auxiliary prc    
1330           data and heap segment sizes, and a     
1331           entries.                               
1332                                                  
1333           If unsure, say N here.                 
1334                                                  
1335 config SCHED_AUTOGROUP                           
1336         bool "Automatic process group schedul    
1337         select CGROUPS                           
1338         select CGROUP_SCHED                      
1339         select FAIR_GROUP_SCHED                  
1340         help                                     
1341           This option optimizes the scheduler    
1342           automatically creating and populati    
1343           of workloads isolates aggressive CP    
1344           desktop applications.  Task group a    
1345           upon task session.                     
1346                                                  
1347 config RELAY                                     
1348         bool "Kernel->user space relay suppor    
1349         select IRQ_WORK                          
1350         help                                     
1351           This option enables support for rel    
1352           certain file systems (such as debug    
1353           It is designed to provide an effici    
1354           facilities to relay large amounts o    
1355           user space.                            
1356                                                  
1357           If unsure, say N.                      
1358                                                  
1359 config BLK_DEV_INITRD                            
1360         bool "Initial RAM filesystem and RAM     
1361         help                                     
1362           The initial RAM filesystem is a ram    
1363           boot loader (loadlin or lilo) and t    
1364           before the normal boot procedure. I    
1365           load modules needed to mount the "r    
1366           etc. See <file:Documentation/admin-    
1367                                                  
1368           If RAM disk support (BLK_DEV_RAM) i    
1369           also enables initial RAM disk (init    
1370           15 Kbytes (more on some other archi    
1371                                                  
1372           If unsure say Y.                       
1373                                                  
1374 if BLK_DEV_INITRD                                
1375                                                  
1376 source "usr/Kconfig"                             
1377                                                  
1378 endif                                            
1379                                                  
1380 config BOOT_CONFIG                               
1381         bool "Boot config support"               
1382         select BLK_DEV_INITRD if !BOOT_CONFIG    
1383         help                                     
1384           Extra boot config allows system adm    
1385           complemental extension of kernel cm    
1386           The boot config file must be attach    
1387           with checksum, size and magic word.    
1388           See <file:Documentation/admin-guide    
1389                                                  
1390           If unsure, say Y.                      
1391                                                  
1392 config BOOT_CONFIG_FORCE                         
1393         bool "Force unconditional bootconfig     
1394         depends on BOOT_CONFIG                   
1395         default y if BOOT_CONFIG_EMBED           
1396         help                                     
1397           With this Kconfig option set, BOOT_    
1398           out even when the "bootconfig" kern    
1399           In fact, with this Kconfig option s    
1400           make the kernel ignore the BOOT_CON    
1401           parameters.                            
1402                                                  
1403           If unsure, say N.                      
1404                                                  
1405 config BOOT_CONFIG_EMBED                         
1406         bool "Embed bootconfig file in the ke    
1407         depends on BOOT_CONFIG                   
1408         help                                     
1409           Embed a bootconfig file given by BO    
1410           kernel. Usually, the bootconfig fil    
1411           image. But if the system doesn't su    
1412           help you by embedding a bootconfig     
1413                                                  
1414           If unsure, say N.                      
1415                                                  
1416 config BOOT_CONFIG_EMBED_FILE                    
1417         string "Embedded bootconfig file path    
1418         depends on BOOT_CONFIG_EMBED             
1419         help                                     
1420           Specify a bootconfig file which wil    
1421           This bootconfig will be used if the    
1422           bootconfig in the initrd.              
1423                                                  
1424 config INITRAMFS_PRESERVE_MTIME                  
1425         bool "Preserve cpio archive mtimes in    
1426         default y                                
1427         help                                     
1428           Each entry in an initramfs cpio arc    
1429           enabled, extracted cpio items take     
1430           setting deferred until after creati    
1431                                                  
1432           If unsure, say Y.                      
1433                                                  
1434 choice                                           
1435         prompt "Compiler optimization level"     
1436         default CC_OPTIMIZE_FOR_PERFORMANCE      
1437                                                  
1438 config CC_OPTIMIZE_FOR_PERFORMANCE               
1439         bool "Optimize for performance (-O2)"    
1440         help                                     
1441           This is the default optimization le    
1442           with the "-O2" compiler flag for be    
1443           helpful compile-time warnings.         
1444                                                  
1445 config CC_OPTIMIZE_FOR_SIZE                      
1446         bool "Optimize for size (-Os)"           
1447         help                                     
1448           Choosing this option will pass "-Os    
1449           in a smaller kernel.                   
1450                                                  
1451 endchoice                                        
1452                                                  
1453 config HAVE_LD_DEAD_CODE_DATA_ELIMINATION        
1454         bool                                     
1455         help                                     
1456           This requires that the arch annotat    
1457           its external entry points from bein    
1458           must also merge .text.*, .data.*, a    
1459           output sections. Care must be taken    
1460           sections (e.g., '.text.init'). Typi    
1461           is used to distinguish them from la    
1462                                                  
1463 config LD_DEAD_CODE_DATA_ELIMINATION             
1464         bool "Dead code and data elimination     
1465         depends on HAVE_LD_DEAD_CODE_DATA_ELI    
1466         depends on EXPERT                        
1467         depends on $(cc-option,-ffunction-sec    
1468         depends on $(ld-option,--gc-sections)    
1469         help                                     
1470           Enable this if you want to do dead     
1471           the linker by compiling with -ffunc    
1472           and linking with --gc-sections.        
1473                                                  
1474           This can reduce on disk and in-memo    
1475           code and static data, particularly     
1476           on small systems. This has the poss    
1477           silently broken kernel if the requi    
1478           present. This option is not well te    
1479           own risk.                              
1480                                                  
1481 config LD_ORPHAN_WARN                            
1482         def_bool y                               
1483         depends on ARCH_WANT_LD_ORPHAN_WARN      
1484         depends on $(ld-option,--orphan-handl    
1485         depends on $(ld-option,--orphan-handl    
1486                                                  
1487 config LD_ORPHAN_WARN_LEVEL                      
1488         string                                   
1489         depends on LD_ORPHAN_WARN                
1490         default "error" if WERROR                
1491         default "warn"                           
1492                                                  
1493 config SYSCTL                                    
1494         bool                                     
1495                                                  
1496 config HAVE_UID16                                
1497         bool                                     
1498                                                  
1499 config SYSCTL_EXCEPTION_TRACE                    
1500         bool                                     
1501         help                                     
1502           Enable support for /proc/sys/debug/    
1503                                                  
1504 config SYSCTL_ARCH_UNALIGN_NO_WARN               
1505         bool                                     
1506         help                                     
1507           Enable support for /proc/sys/kernel    
1508           Allows arch to define/use @no_unali    
1509           about unaligned access emulation go    
1510                                                  
1511 config SYSCTL_ARCH_UNALIGN_ALLOW                 
1512         bool                                     
1513         help                                     
1514           Enable support for /proc/sys/kernel    
1515           Allows arches to define/use @unalig    
1516           the unaligned access emulation.        
1517           see arch/parisc/kernel/unaligned.c     
1518                                                  
1519 config HAVE_PCSPKR_PLATFORM                      
1520         bool                                     
1521                                                  
1522 menuconfig EXPERT                                
1523         bool "Configure standard kernel featu    
1524         # Unhide debug options, to make the o    
1525         select DEBUG_KERNEL                      
1526         help                                     
1527           This option allows certain base ker    
1528           to be disabled or tweaked. This is     
1529           environments which can tolerate a "    
1530           Only use this if you really know wh    
1531                                                  
1532 config UID16                                     
1533         bool "Enable 16-bit UID system calls"    
1534         depends on HAVE_UID16 && MULTIUSER       
1535         default y                                
1536         help                                     
1537           This enables the legacy 16-bit UID     
1538                                                  
1539 config MULTIUSER                                 
1540         bool "Multiple users, groups and capa    
1541         default y                                
1542         help                                     
1543           This option enables support for non    
1544           capabilities.                          
1545                                                  
1546           If you say N here, all processes wi    
1547           possible capabilities.  Saying N he    
1548           system calls related to UIDs, GIDs,    
1549           setgid, and capset.                    
1550                                                  
1551           If unsure, say Y here.                 
1552                                                  
1553 config SGETMASK_SYSCALL                          
1554         bool "sgetmask/ssetmask syscalls supp    
1555         default PARISC || M68K || PPC || MIPS    
1556         help                                     
1557           sys_sgetmask and sys_ssetmask are o    
1558           no longer supported in libc but sti    
1559           architectures.                         
1560                                                  
1561           If unsure, leave the default option    
1562                                                  
1563 config SYSFS_SYSCALL                             
1564         bool "Sysfs syscall support" if EXPER    
1565         default y                                
1566         help                                     
1567           sys_sysfs is an obsolete system cal    
1568           Note that disabling this option is     
1569           compatibility with some systems.       
1570                                                  
1571           If unsure say Y here.                  
1572                                                  
1573 config FHANDLE                                   
1574         bool "open by fhandle syscalls" if EX    
1575         select EXPORTFS                          
1576         default y                                
1577         help                                     
1578           If you say Y here, a user level pro    
1579           file names to handle and then later    
1580           different file system operations. T    
1581           userspace file servers, which now t    
1582           of names. The handle would remain t    
1583           get renamed. Enables open_by_handle    
1584           syscalls.                              
1585                                                  
1586 config POSIX_TIMERS                              
1587         bool "Posix Clocks & timers" if EXPER    
1588         default y                                
1589         help                                     
1590           This includes native support for PO    
1591           Some embedded systems have no use f    
1592           can be configured out to reduce the    
1593                                                  
1594           When this option is disabled, the f    
1595           available: timer_create, timer_gett    
1596           timer_settime, timer_delete, clock_    
1597           setitimer, alarm. Furthermore, the     
1598           clock_getres and clock_nanosleep sy    
1599           CLOCK_REALTIME, CLOCK_MONOTONIC and    
1600                                                  
1601           If unsure say y.                       
1602                                                  
1603 config PRINTK                                    
1604         default y                                
1605         bool "Enable support for printk" if E    
1606         select IRQ_WORK                          
1607         help                                     
1608           This option enables normal printk s    
1609           eliminates most of the message stri    
1610           and makes the kernel more or less s    
1611           very difficult to diagnose system p    
1612           strongly discouraged.                  
1613                                                  
1614 config BUG                                       
1615         bool "BUG() support" if EXPERT           
1616         default y                                
1617         help                                     
1618           Disabling this option eliminates su    
1619           the size of your kernel image and p    
1620           numerous fatal conditions. You shou    
1621           option for embedded systems with no    
1622           Just say Y.                            
1623                                                  
1624 config ELF_CORE                                  
1625         depends on COREDUMP                      
1626         default y                                
1627         bool "Enable ELF core dumps" if EXPER    
1628         help                                     
1629           Enable support for generating core     
1630                                                  
1631                                                  
1632 config PCSPKR_PLATFORM                           
1633         bool "Enable PC-Speaker support" if E    
1634         depends on HAVE_PCSPKR_PLATFORM          
1635         select I8253_LOCK                        
1636         default y                                
1637         help                                     
1638           This option allows to disable the i    
1639           support, saving some memory.           
1640                                                  
1641 config BASE_SMALL                                
1642         bool "Enable smaller-sized data struc    
1643         help                                     
1644           Enabling this option reduces the si    
1645           kernel data structures. This saves     
1646           but may reduce performance.            
1647                                                  
1648 config FUTEX                                     
1649         bool "Enable futex support" if EXPERT    
1650         depends on !(SPARC32 && SMP)             
1651         default y                                
1652         imply RT_MUTEXES                         
1653         help                                     
1654           Disabling this option will cause th    
1655           support for "fast userspace mutexes    
1656           run glibc-based applications correc    
1657                                                  
1658 config FUTEX_PI                                  
1659         bool                                     
1660         depends on FUTEX && RT_MUTEXES           
1661         default y                                
1662                                                  
1663 config EPOLL                                     
1664         bool "Enable eventpoll support" if EX    
1665         default y                                
1666         help                                     
1667           Disabling this option will cause th    
1668           support for epoll family of system     
1669                                                  
1670 config SIGNALFD                                  
1671         bool "Enable signalfd() system call"     
1672         default y                                
1673         help                                     
1674           Enable the signalfd() system call t    
1675           on a file descriptor.                  
1676                                                  
1677           If unsure, say Y.                      
1678                                                  
1679 config TIMERFD                                   
1680         bool "Enable timerfd() system call" i    
1681         default y                                
1682         help                                     
1683           Enable the timerfd() system call th    
1684           events on a file descriptor.           
1685                                                  
1686           If unsure, say Y.                      
1687                                                  
1688 config EVENTFD                                   
1689         bool "Enable eventfd() system call" i    
1690         default y                                
1691         help                                     
1692           Enable the eventfd() system call th    
1693           kernel notification (ie. KAIO) or u    
1694                                                  
1695           If unsure, say Y.                      
1696                                                  
1697 config SHMEM                                     
1698         bool "Use full shmem filesystem" if E    
1699         default y                                
1700         depends on MMU                           
1701         help                                     
1702           The shmem is an internal filesystem    
1703           It is backed by swap and manages re    
1704           to userspace as tmpfs if TMPFS is e    
1705           option replaces shmem and tmpfs wit    
1706           which may be appropriate on small s    
1707                                                  
1708 config AIO                                       
1709         bool "Enable AIO support" if EXPERT      
1710         default y                                
1711         help                                     
1712           This option enables POSIX asynchron    
1713           by some high performance threaded a    
1714           this option saves about 7k.            
1715                                                  
1716 config IO_URING                                  
1717         bool "Enable IO uring support" if EXP    
1718         select IO_WQ                             
1719         default y                                
1720         help                                     
1721           This option enables support for the    
1722           applications to submit and complete    
1723           completion rings that are shared be    
1724                                                  
1725 config GCOV_PROFILE_URING                        
1726         bool "Enable GCOV profiling on the io    
1727         depends on GCOV_KERNEL                   
1728         help                                     
1729           Enable GCOV profiling on the io_uri    
1730           code coverage testing.                 
1731                                                  
1732           If unsure, say N.                      
1733                                                  
1734           Note that this will have a negative    
1735           the io_uring subsystem, hence this     
1736           specific test purposes.                
1737                                                  
1738 config ADVISE_SYSCALLS                           
1739         bool "Enable madvise/fadvise syscalls    
1740         default y                                
1741         help                                     
1742           This option enables the madvise and    
1743           applications to advise the kernel a    
1744           usage, improving performance. If bu    
1745           applications use these syscalls, yo    
1746           space.                                 
1747                                                  
1748 config MEMBARRIER                                
1749         bool "Enable membarrier() system call    
1750         default y                                
1751         help                                     
1752           Enable the membarrier() system call    
1753           barriers across all running threads    
1754           the cost of user-space memory barri    
1755           pairs of memory barriers into pairs    
1756           compiler barrier.                      
1757                                                  
1758           If unsure, say Y.                      
1759                                                  
1760 config KCMP                                      
1761         bool "Enable kcmp() system call" if E    
1762         help                                     
1763           Enable the kernel resource comparis    
1764           user-space with the ability to comp    
1765           share a common resource, such as a     
1766           memory space.                          
1767                                                  
1768           If unsure, say N.                      
1769                                                  
1770 config RSEQ                                      
1771         bool "Enable rseq() system call" if E    
1772         default y                                
1773         depends on HAVE_RSEQ                     
1774         select MEMBARRIER                        
1775         help                                     
1776           Enable the restartable sequences sy    
1777           user-space cache for the current CP    
1778           speeds up getting the current CPU n    
1779           as well as an ABI to speed up user-    
1780           per-CPU data.                          
1781                                                  
1782           If unsure, say Y.                      
1783                                                  
1784 config DEBUG_RSEQ                                
1785         default n                                
1786         bool "Enable debugging of rseq() syst    
1787         depends on RSEQ && DEBUG_KERNEL          
1788         help                                     
1789           Enable extra debugging checks for t    
1790                                                  
1791           If unsure, say N.                      
1792                                                  
1793 config CACHESTAT_SYSCALL                         
1794         bool "Enable cachestat() system call"    
1795         default y                                
1796         help                                     
1797           Enable the cachestat system call, w    
1798           statistics of a file (number of cac    
1799           pages marked for writeback, (recent    
1800                                                  
1801           If unsure say Y here.                  
1802                                                  
1803 config PC104                                     
1804         bool "PC/104 support" if EXPERT          
1805         help                                     
1806           Expose PC/104 form factor device dr    
1807           selection and configuration. Enable    
1808           machine has a PC/104 bus.              
1809                                                  
1810 config KALLSYMS                                  
1811         bool "Load all symbols for debugging/    
1812         default y                                
1813         help                                     
1814           Say Y here to let the kernel print     
1815           symbolic stack backtraces. This inc    
1816           somewhat, as all symbols have to be    
1817                                                  
1818 config KALLSYMS_SELFTEST                         
1819         bool "Test the basic functions and pe    
1820         depends on KALLSYMS                      
1821         default n                                
1822         help                                     
1823           Test the basic functions and perfor    
1824           kallsyms_lookup_name. It also calcu    
1825           kallsyms compression algorithm for     
1826                                                  
1827           Start self-test automatically after    
1828           "dmesg | grep kallsyms_selftest" to    
1829           displayed in the last line, indicat    
1830                                                  
1831 config KALLSYMS_ALL                              
1832         bool "Include all symbols in kallsyms    
1833         depends on DEBUG_KERNEL && KALLSYMS      
1834         help                                     
1835           Normally kallsyms only contains the    
1836           OOPS messages and backtraces (i.e.,    
1837           sections). This is sufficient for m    
1838           enable kernel live patching, or oth    
1839           when a debugger is used) all symbol    
1840           variables from the data sections, e    
1841                                                  
1842           This option makes sure that all sym    
1843           image (i.e., symbols from all secti    
1844           size (depending on the kernel confi    
1845           something like this).                  
1846                                                  
1847           Say N unless you really need all sy    
1848                                                  
1849 config KALLSYMS_ABSOLUTE_PERCPU                  
1850         bool                                     
1851         depends on KALLSYMS                      
1852         default X86_64 && SMP                    
1853                                                  
1854 # end of the "standard kernel features (exper    
1855                                                  
1856 config ARCH_HAS_MEMBARRIER_CALLBACKS             
1857         bool                                     
1858                                                  
1859 config ARCH_HAS_MEMBARRIER_SYNC_CORE             
1860         bool                                     
1861                                                  
1862 config HAVE_PERF_EVENTS                          
1863         bool                                     
1864         help                                     
1865           See tools/perf/design.txt for detai    
1866                                                  
1867 config GUEST_PERF_EVENTS                         
1868         bool                                     
1869         depends on HAVE_PERF_EVENTS              
1870                                                  
1871 config PERF_USE_VMALLOC                          
1872         bool                                     
1873         help                                     
1874           See tools/perf/design.txt for detai    
1875                                                  
1876 menu "Kernel Performance Events And Counters"    
1877                                                  
1878 config PERF_EVENTS                               
1879         bool "Kernel performance events and c    
1880         default y if PROFILING                   
1881         depends on HAVE_PERF_EVENTS              
1882         select IRQ_WORK                          
1883         help                                     
1884           Enable kernel support for various p    
1885           by software and hardware.              
1886                                                  
1887           Software events are supported eithe    
1888           use of generic tracepoints.            
1889                                                  
1890           Most modern CPUs support performanc    
1891           counter registers. These registers     
1892           types of hw events: such as instruc    
1893           suffered, or branches mis-predicted    
1894           kernel or applications. These regis    
1895           when a threshold number of events h    
1896           used to profile the code that runs     
1897                                                  
1898           The Linux Performance Event subsyst    
1899           these software and hardware event c    
1900           system call and used by the "perf"     
1901           provides per task and per CPU count    
1902           capabilities on top of those.          
1903                                                  
1904           Say Y if unsure.                       
1905                                                  
1906 config DEBUG_PERF_USE_VMALLOC                    
1907         default n                                
1908         bool "Debug: use vmalloc to back perf    
1909         depends on PERF_EVENTS && DEBUG_KERNE    
1910         select PERF_USE_VMALLOC                  
1911         help                                     
1912           Use vmalloc memory to back perf mma    
1913                                                  
1914           Mostly useful for debugging the vma    
1915           that don't require it.                 
1916                                                  
1917           Say N if unsure.                       
1918                                                  
1919 endmenu                                          
1920                                                  
1921 config SYSTEM_DATA_VERIFICATION                  
1922         def_bool n                               
1923         select SYSTEM_TRUSTED_KEYRING            
1924         select KEYS                              
1925         select CRYPTO                            
1926         select CRYPTO_RSA                        
1927         select ASYMMETRIC_KEY_TYPE               
1928         select ASYMMETRIC_PUBLIC_KEY_SUBTYPE     
1929         select ASN1                              
1930         select OID_REGISTRY                      
1931         select X509_CERTIFICATE_PARSER           
1932         select PKCS7_MESSAGE_PARSER              
1933         help                                     
1934           Provide PKCS#7 message verification    
1935           trusted keyring to provide public k    
1936           module verification, kexec image ve    
1937           verification.                          
1938                                                  
1939 config PROFILING                                 
1940         bool "Profiling support"                 
1941         help                                     
1942           Say Y here to enable the extended p    
1943           by profilers.                          
1944                                                  
1945 config RUST                                      
1946         bool "Rust support"                      
1947         depends on HAVE_RUST                     
1948         depends on RUST_IS_AVAILABLE             
1949         depends on !MODVERSIONS                  
1950         depends on !GCC_PLUGIN_RANDSTRUCT        
1951         depends on !RANDSTRUCT                   
1952         depends on !DEBUG_INFO_BTF || PAHOLE_    
1953         depends on !CFI_CLANG || HAVE_CFI_ICA    
1954         select CFI_ICALL_NORMALIZE_INTEGERS i    
1955         depends on !CALL_PADDING || RUSTC_VER    
1956         depends on !KASAN_SW_TAGS                
1957         depends on !(MITIGATION_RETHUNK && KA    
1958         help                                     
1959           Enables Rust support in the kernel.    
1960                                                  
1961           This allows other Rust-related opti    
1962           to be selected.                        
1963                                                  
1964           It is also required to be able to l    
1965           written in Rust.                       
1966                                                  
1967           See Documentation/rust/ for more in    
1968                                                  
1969           If unsure, say N.                      
1970                                                  
1971 config RUSTC_VERSION_TEXT                        
1972         string                                   
1973         depends on RUST                          
1974         default "$(RUSTC_VERSION_TEXT)"          
1975         help                                     
1976           See `CC_VERSION_TEXT`.                 
1977                                                  
1978 config BINDGEN_VERSION_TEXT                      
1979         string                                   
1980         depends on RUST                          
1981         # The dummy parameter `workaround-for    
1982         # (https://github.com/rust-lang/rust-    
1983         # the minimum version is upgraded pas    
1984         default "$(shell,$(BINDGEN) --version    
1985                                                  
1986 #                                                
1987 # Place an empty function call at each tracep    
1988 # dynamically changed for a probe function.      
1989 #                                                
1990 config TRACEPOINTS                               
1991         bool                                     
1992                                                  
1993 source "kernel/Kconfig.kexec"                    
1994                                                  
1995 endmenu         # General setup                  
1996                                                  
1997 source "arch/Kconfig"                            
1998                                                  
1999 config RT_MUTEXES                                
2000         bool                                     
2001         default y if PREEMPT_RT                  
2002                                                  
2003 config MODULE_SIG_FORMAT                         
2004         def_bool n                               
2005         select SYSTEM_DATA_VERIFICATION          
2006                                                  
2007 source "kernel/module/Kconfig"                   
2008                                                  
2009 config INIT_ALL_POSSIBLE                         
2010         bool                                     
2011         help                                     
2012           Back when each arch used to define     
2013           cpu_possible_mask, some of them cho    
2014           with all 1s, and others with all 0s    
2015           it was better to provide this optio    
2016           and have several arch maintainers p    
2017                                                  
2018 source "block/Kconfig"                           
2019                                                  
2020 config PREEMPT_NOTIFIERS                         
2021         bool                                     
2022                                                  
2023 config PADATA                                    
2024         depends on SMP                           
2025         bool                                     
2026                                                  
2027 config ASN1                                      
2028         tristate                                 
2029         help                                     
2030           Build a simple ASN.1 grammar compil    
2031           that can be interpreted by the ASN.    
2032           inform it as to what tags are to be    
2033           functions to call on what tags.        
2034                                                  
2035 source "kernel/Kconfig.locks"                    
2036                                                  
2037 config ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE    
2038         bool                                     
2039                                                  
2040 config ARCH_HAS_PREPARE_SYNC_CORE_CMD            
2041         bool                                     
2042                                                  
2043 config ARCH_HAS_SYNC_CORE_BEFORE_USERMODE        
2044         bool                                     
2045                                                  
2046 # It may be useful for an architecture to ove    
2047 # SYSCALL_DEFINE() and __SYSCALL_DEFINEx() ma    
2048 # and the COMPAT_ variants in <linux/compat.h    
2049 # different calling convention for syscalls.     
2050 # macros for not-implemented syscalls in kern    
2051 # kernel/time/posix-stubs.c. All these overri    
2052 # <asm/syscall_wrapper.h>.                       
2053 config ARCH_HAS_SYSCALL_WRAPPER                  
2054         def_bool n                               
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php