~ [ 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 linux-2.6.32.71)


  1 # SPDX-License-Identifier: GPL-2.0-only        !!   1 config ARCH
  2 config CC_VERSION_TEXT                         << 
  3         string                                      2         string
  4         default "$(CC_VERSION_TEXT)"           !!   3         option env="ARCH"
  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                                                     4 
 95 # Fixed in GCC 14, 13.3, 12.4 and 11.5         !!   5 config KERNELVERSION
 96 # https://gcc.gnu.org/bugzilla/show_bug.cgi?id !!   6         string
 97 config GCC_ASM_GOTO_OUTPUT_BROKEN              !!   7         option env="KERNELVERSION"
 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                                                     8 
123 config PAHOLE_VERSION                          !!   9 config DEFCONFIG_LIST
124         int                                    !!  10         string
125         default $(shell,$(srctree)/scripts/pah !!  11         depends on !UML
                                                   >>  12         option defconfig_list
                                                   >>  13         default "/lib/modules/$UNAME_RELEASE/.config"
                                                   >>  14         default "/etc/kernel-config"
                                                   >>  15         default "/boot/config-$UNAME_RELEASE"
                                                   >>  16         default "$ARCH_DEFCONFIG"
                                                   >>  17         default "arch/$ARCH/defconfig"
126                                                    18 
127 config CONSTRUCTORS                                19 config CONSTRUCTORS
128         bool                                       20         bool
129                                                !!  21         depends on !UML
130 config IRQ_WORK                                !!  22         default y
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                                                    23 
146 menu "General setup"                               24 menu "General setup"
147                                                    25 
                                                   >>  26 config EXPERIMENTAL
                                                   >>  27         bool "Prompt for development and/or incomplete code/drivers"
                                                   >>  28         ---help---
                                                   >>  29           Some of the various things that Linux supports (such as network
                                                   >>  30           drivers, file systems, network protocols, etc.) can be in a state
                                                   >>  31           of development where the functionality, stability, or the level of
                                                   >>  32           testing is not yet high enough for general use. This is usually
                                                   >>  33           known as the "alpha-test" phase among developers. If a feature is
                                                   >>  34           currently in alpha-test, then the developers usually discourage
                                                   >>  35           uninformed widespread use of this feature by the general public to
                                                   >>  36           avoid "Why doesn't this work?" type mail messages. However, active
                                                   >>  37           testing and use of these systems is welcomed. Just be aware that it
                                                   >>  38           may not meet the normal level of reliability or it may fail to work
                                                   >>  39           in some special cases. Detailed bug reports from people familiar
                                                   >>  40           with the kernel internals are usually welcomed by the developers
                                                   >>  41           (before submitting bug reports, please read the documents
                                                   >>  42           <file:README>, <file:MAINTAINERS>, <file:REPORTING-BUGS>,
                                                   >>  43           <file:Documentation/BUG-HUNTING>, and
                                                   >>  44           <file:Documentation/oops-tracing.txt> in the kernel source).
                                                   >>  45 
                                                   >>  46           This option will also make obsoleted drivers available. These are
                                                   >>  47           drivers that have been replaced by something else, and/or are
                                                   >>  48           scheduled to be removed in a future kernel release.
                                                   >>  49 
                                                   >>  50           Unless you intend to help test and develop a feature or driver that
                                                   >>  51           falls into this category, or you have a situation that requires
                                                   >>  52           using these features, you should probably say N here, which will
                                                   >>  53           cause the configurator to present you with fewer choices. If
                                                   >>  54           you say Y here, you will be offered the choice of using features or
                                                   >>  55           drivers that are currently considered to be in the alpha-test phase.
                                                   >>  56 
148 config BROKEN                                      57 config BROKEN
149         bool                                       58         bool
150                                                    59 
151 config BROKEN_ON_SMP                               60 config BROKEN_ON_SMP
152         bool                                       61         bool
153         depends on BROKEN || !SMP                  62         depends on BROKEN || !SMP
154         default y                                  63         default y
155                                                    64 
                                                   >>  65 config LOCK_KERNEL
                                                   >>  66         bool
                                                   >>  67         depends on SMP || PREEMPT
                                                   >>  68         default y
                                                   >>  69 
156 config INIT_ENV_ARG_LIMIT                          70 config INIT_ENV_ARG_LIMIT
157         int                                        71         int
158         default 32 if !UML                         72         default 32 if !UML
159         default 128 if UML                         73         default 128 if UML
160         help                                       74         help
161           Maximum of each of the number of arg     75           Maximum of each of the number of arguments and environment
162           variables passed to init from the ke     76           variables passed to init from the kernel command line.
163                                                    77 
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                                                    78 
205 config LOCALVERSION                                79 config LOCALVERSION
206         string "Local version - append to kern     80         string "Local version - append to kernel release"
207         help                                       81         help
208           Append an extra string to the end of     82           Append an extra string to the end of your kernel version.
209           This will show up when you type unam     83           This will show up when you type uname, for example.
210           The string you set here will be appe     84           The string you set here will be appended after the contents of
211           any files with a filename matching l     85           any files with a filename matching localversion* in your
212           object and source tree, in that orde     86           object and source tree, in that order.  Your total string can
213           be a maximum of 64 characters.           87           be a maximum of 64 characters.
214                                                    88 
215 config LOCALVERSION_AUTO                           89 config LOCALVERSION_AUTO
216         bool "Automatically append version inf     90         bool "Automatically append version information to the version string"
217         default y                                  91         default y
218         depends on !COMPILE_TEST               << 
219         help                                       92         help
220           This will try to automatically deter     93           This will try to automatically determine if the current tree is a
221           release tree by looking for git tags     94           release tree by looking for git tags that belong to the current
222           top of tree revision.                    95           top of tree revision.
223                                                    96 
224           A string of the format -gxxxxxxxx wi     97           A string of the format -gxxxxxxxx will be added to the localversion
225           if a git-based tree is found.  The s     98           if a git-based tree is found.  The string generated by this will be
226           appended after any matching localver     99           appended after any matching localversion* files, and after the value
227           set in CONFIG_LOCALVERSION.             100           set in CONFIG_LOCALVERSION.
228                                                   101 
229           (The actual string used here is the  !! 102           (The actual string used here is the first eight characters produced
230           by running the command:                 103           by running the command:
231                                                   104 
232             $ git rev-parse --verify HEAD         105             $ git rev-parse --verify HEAD
233                                                   106 
234           which is done within the script "scr    107           which is done within the script "scripts/setlocalversion".)
235                                                   108 
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                           109 config HAVE_KERNEL_GZIP
246         bool                                      110         bool
247                                                   111 
248 config HAVE_KERNEL_BZIP2                          112 config HAVE_KERNEL_BZIP2
249         bool                                      113         bool
250                                                   114 
251 config HAVE_KERNEL_LZMA                           115 config HAVE_KERNEL_LZMA
252         bool                                      116         bool
253                                                   117 
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                                            118 choice
270         prompt "Kernel compression mode"          119         prompt "Kernel compression mode"
271         default KERNEL_GZIP                       120         default KERNEL_GZIP
272         depends on HAVE_KERNEL_GZIP || HAVE_KE !! 121         depends on HAVE_KERNEL_GZIP || HAVE_KERNEL_BZIP2 || HAVE_KERNEL_LZMA
273         help                                      122         help
274           The linux kernel is a kind of self-e    123           The linux kernel is a kind of self-extracting executable.
275           Several compression algorithms are a    124           Several compression algorithms are available, which differ
276           in efficiency, compression and decom    125           in efficiency, compression and decompression speed.
277           Compression speed is only relevant w    126           Compression speed is only relevant when building a kernel.
278           Decompression speed is relevant at e    127           Decompression speed is relevant at each boot.
279                                                   128 
280           If you have any problems with bzip2     129           If you have any problems with bzip2 or lzma compressed
281           kernels, mail me (Alain Knaff) <alain    130           kernels, mail me (Alain Knaff) <alain@knaff.lu>. (An older
282           version of this functionality (bzip2    131           version of this functionality (bzip2 only), for 2.4, was
283           supplied by Christian Ludwig)           132           supplied by Christian Ludwig)
284                                                   133 
285           High compression options are mostly     134           High compression options are mostly useful for users, who
286           are low on disk space (embedded syst    135           are low on disk space (embedded systems), but for whom ram
287           size matters less.                      136           size matters less.
288                                                   137 
289           If in doubt, select 'gzip'              138           If in doubt, select 'gzip'
290                                                   139 
291 config KERNEL_GZIP                                140 config KERNEL_GZIP
292         bool "Gzip"                               141         bool "Gzip"
293         depends on HAVE_KERNEL_GZIP               142         depends on HAVE_KERNEL_GZIP
294         help                                      143         help
295           The old and tried gzip compression.  !! 144           The old and tried gzip compression. Its compression ratio is
296           between compression ratio and decomp !! 145           the poorest among the 3 choices; however its speed (both
                                                   >> 146           compression and decompression) is the fastest.
297                                                   147 
298 config KERNEL_BZIP2                               148 config KERNEL_BZIP2
299         bool "Bzip2"                              149         bool "Bzip2"
300         depends on HAVE_KERNEL_BZIP2              150         depends on HAVE_KERNEL_BZIP2
301         help                                      151         help
302           Its compression ratio and speed is i    152           Its compression ratio and speed is intermediate.
303           Decompression speed is slowest among !! 153           Decompression speed is slowest among the three.  The kernel
304           size is about 10% smaller with bzip2    154           size is about 10% smaller with bzip2, in comparison to gzip.
305           Bzip2 uses a large amount of memory.    155           Bzip2 uses a large amount of memory. For modern kernels you
306           will need at least 8MB RAM or more f    156           will need at least 8MB RAM or more for booting.
307                                                   157 
308 config KERNEL_LZMA                                158 config KERNEL_LZMA
309         bool "LZMA"                               159         bool "LZMA"
310         depends on HAVE_KERNEL_LZMA               160         depends on HAVE_KERNEL_LZMA
311         help                                      161         help
312           This compression algorithm's ratio i !! 162           The most recent compression algorithm.
313           is between gzip and bzip2.  Compress !! 163           Its ratio is best, decompression speed is between the other
314           The kernel size is about 33% smaller !! 164           two. Compression is slowest.  The kernel size is about 33%
315                                                !! 165           smaller with LZMA in comparison to gzip.
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                                                   166 
372 endchoice                                         167 endchoice
373                                                   168 
374 config DEFAULT_INIT                            !! 169 config SWAP
375         string "Default init path"             !! 170         bool "Support for paging of anonymous memory (swap)"
376         default ""                             !! 171         depends on MMU && BLOCK
377         help                                   !! 172         default y
378           This option determines the default i !! 173         help
379           option is passed on the kernel comma !! 174           This option allows you to choose whether you want to have support
380           not present, we will still then move !! 175           for so called swap devices or swap files in your kernel that are
381           locations (e.g. /sbin/init, etc). If !! 176           used to provide more virtual memory than the actual RAM present
382           the fallback list when init= is not  !! 177           in your computer.  If unsure say Y.
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                                                   178 
393 config SYSVIPC                                    179 config SYSVIPC
394         bool "System V IPC"                       180         bool "System V IPC"
395         help                                   !! 181         ---help---
396           Inter Process Communication is a sui    182           Inter Process Communication is a suite of library functions and
397           system calls which let processes (ru    183           system calls which let processes (running programs) synchronize and
398           exchange information. It is generall    184           exchange information. It is generally considered to be a good thing,
399           and some programs won't run unless y    185           and some programs won't run unless you say Y here. In particular, if
400           you want to run the DOS emulator dos    186           you want to run the DOS emulator dosemu under Linux (read the
401           DOSEMU-HOWTO, available from <http:/    187           DOSEMU-HOWTO, available from <http://www.tldp.org/docs.html#howto>),
402           you'll need to say Y here.              188           you'll need to say Y here.
403                                                   189 
404           You can find documentation about IPC    190           You can find documentation about IPC with "info ipc" and also in
405           section 6.4 of the Linux Programmer'    191           section 6.4 of the Linux Programmer's Guide, available from
406           <http://www.tldp.org/guides.html>.      192           <http://www.tldp.org/guides.html>.
407                                                   193 
408 config SYSVIPC_SYSCTL                             194 config SYSVIPC_SYSCTL
409         bool                                      195         bool
410         depends on SYSVIPC                        196         depends on SYSVIPC
411         depends on SYSCTL                         197         depends on SYSCTL
412         default y                                 198         default y
413                                                   199 
414 config SYSVIPC_COMPAT                          << 
415         def_bool y                             << 
416         depends on COMPAT && SYSVIPC           << 
417                                                << 
418 config POSIX_MQUEUE                               200 config POSIX_MQUEUE
419         bool "POSIX Message Queues"               201         bool "POSIX Message Queues"
420         depends on NET                         !! 202         depends on NET && EXPERIMENTAL
421         help                                   !! 203         ---help---
422           POSIX variant of message queues is a    204           POSIX variant of message queues is a part of IPC. In POSIX message
423           queues every message has a priority     205           queues every message has a priority which decides about succession
424           of receiving it by a process. If you    206           of receiving it by a process. If you want to compile and run
425           programs written e.g. for Solaris wi    207           programs written e.g. for Solaris with use of its POSIX message
426           queues (functions mq_*) say Y here.     208           queues (functions mq_*) say Y here.
427                                                   209 
428           POSIX message queues are visible as     210           POSIX message queues are visible as a filesystem called 'mqueue'
429           and can be mounted somewhere if you     211           and can be mounted somewhere if you want to do filesystem
430           operations on message queues.           212           operations on message queues.
431                                                   213 
432           If unsure, say Y.                       214           If unsure, say Y.
433                                                   215 
434 config POSIX_MQUEUE_SYSCTL                        216 config POSIX_MQUEUE_SYSCTL
435         bool                                      217         bool
436         depends on POSIX_MQUEUE                   218         depends on POSIX_MQUEUE
437         depends on SYSCTL                         219         depends on SYSCTL
438         default y                                 220         default y
439                                                   221 
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                           222 config BSD_PROCESS_ACCT
584         bool "BSD Process Accounting"             223         bool "BSD Process Accounting"
585         depends on MULTIUSER                   << 
586         help                                      224         help
587           If you say Y here, a user level prog    225           If you say Y here, a user level program will be able to instruct the
588           kernel (via a special system call) t    226           kernel (via a special system call) to write process accounting
589           information to a file: whenever a pr    227           information to a file: whenever a process exits, information about
590           that process will be appended to the    228           that process will be appended to the file by the kernel.  The
591           information includes things such as     229           information includes things such as creation time, owning user,
592           command name, memory usage, controll    230           command name, memory usage, controlling terminal etc. (the complete
593           list is in the struct acct in <file:    231           list is in the struct acct in <file:include/linux/acct.h>).  It is
594           up to the user level program to do u    232           up to the user level program to do useful things with this
595           information.  This is generally a go    233           information.  This is generally a good idea, so say Y.
596                                                   234 
597 config BSD_PROCESS_ACCT_V3                        235 config BSD_PROCESS_ACCT_V3
598         bool "BSD Process Accounting version 3    236         bool "BSD Process Accounting version 3 file format"
599         depends on BSD_PROCESS_ACCT               237         depends on BSD_PROCESS_ACCT
600         default n                                 238         default n
601         help                                      239         help
602           If you say Y here, the process accou    240           If you say Y here, the process accounting information is written
603           in a new file format that also logs     241           in a new file format that also logs the process IDs of each
604           process and its parent. Note that th !! 242           process and it's parent. Note that this file format is incompatible
605           with previous v0/v1/v2 file formats,    243           with previous v0/v1/v2 file formats, so you will need updated tools
606           for processing it. A preliminary ver    244           for processing it. A preliminary version of these tools is available
607           at <http://www.gnu.org/software/acct    245           at <http://www.gnu.org/software/acct/>.
608                                                   246 
609 config TASKSTATS                                  247 config TASKSTATS
610         bool "Export task/process statistics t !! 248         bool "Export task/process statistics through netlink (EXPERIMENTAL)"
611         depends on NET                            249         depends on NET
612         depends on MULTIUSER                   << 
613         default n                                 250         default n
614         help                                      251         help
615           Export selected statistics for tasks    252           Export selected statistics for tasks/processes through the
616           generic netlink interface. Unlike BS    253           generic netlink interface. Unlike BSD process accounting, the
617           statistics are available during the     254           statistics are available during the lifetime of tasks/processes as
618           responses to commands. Like BSD acco    255           responses to commands. Like BSD accounting, they are sent to user
619           space on task exit.                     256           space on task exit.
620                                                   257 
621           Say N if unsure.                        258           Say N if unsure.
622                                                   259 
623 config TASK_DELAY_ACCT                            260 config TASK_DELAY_ACCT
624         bool "Enable per-task delay accounting !! 261         bool "Enable per-task delay accounting (EXPERIMENTAL)"
625         depends on TASKSTATS                      262         depends on TASKSTATS
626         select SCHED_INFO                      << 
627         help                                      263         help
628           Collect information on time spent by    264           Collect information on time spent by a task waiting for system
629           resources like cpu, synchronous bloc    265           resources like cpu, synchronous block I/O completion and swapping
630           in pages. Such statistics can help i    266           in pages. Such statistics can help in setting a task's priorities
631           relative to other tasks for cpu, io,    267           relative to other tasks for cpu, io, rss limits etc.
632                                                   268 
633           Say N if unsure.                        269           Say N if unsure.
634                                                   270 
635 config TASK_XACCT                                 271 config TASK_XACCT
636         bool "Enable extended accounting over  !! 272         bool "Enable extended accounting over taskstats (EXPERIMENTAL)"
637         depends on TASKSTATS                      273         depends on TASKSTATS
638         help                                      274         help
639           Collect extended task accounting dat    275           Collect extended task accounting data and send the data
640           to userland for processing over the     276           to userland for processing over the taskstats interface.
641                                                   277 
642           Say N if unsure.                        278           Say N if unsure.
643                                                   279 
644 config TASK_IO_ACCOUNTING                         280 config TASK_IO_ACCOUNTING
645         bool "Enable per-task storage I/O acco !! 281         bool "Enable per-task storage I/O accounting (EXPERIMENTAL)"
646         depends on TASK_XACCT                     282         depends on TASK_XACCT
647         help                                      283         help
648           Collect information on the number of    284           Collect information on the number of bytes of storage I/O which this
649           task has caused.                        285           task has caused.
650                                                   286 
651           Say N if unsure.                        287           Say N if unsure.
652                                                   288 
653 config PSI                                     !! 289 config AUDIT
654         bool "Pressure stall information track !! 290         bool "Auditing support"
655         select KERNFS                          !! 291         depends on NET
656         help                                   !! 292         help
657           Collect metrics that indicate how ov !! 293           Enable auditing infrastructure that can be used with another
658           and IO capacity are in the system.   !! 294           kernel subsystem, such as SELinux (which requires this for
659                                                !! 295           logging of avc messages output).  Does not do system-call
660           If you say Y here, the kernel will c !! 296           auditing without CONFIG_AUDITSYSCALL.
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                                                   297 
669           For more details see Documentation/a !! 298 config AUDITSYSCALL
                                                   >> 299         bool "Enable system-call auditing support"
                                                   >> 300         depends on AUDIT && (X86 || PPC || S390 || IA64 || UML || SPARC64 || SUPERH)
                                                   >> 301         default y if SECURITY_SELINUX
                                                   >> 302         help
                                                   >> 303           Enable low-overhead system-call auditing infrastructure that
                                                   >> 304           can be used independently or with another kernel subsystem,
                                                   >> 305           such as SELinux.  To use audit's filesystem watch feature, please
                                                   >> 306           ensure that INOTIFY is configured.
670                                                   307 
671           Say N if unsure.                     !! 308 config AUDIT_TREE
                                                   >> 309         def_bool y
                                                   >> 310         depends on AUDITSYSCALL
                                                   >> 311         select INOTIFY
672                                                   312 
673 config PSI_DEFAULT_DISABLED                    !! 313 menu "RCU Subsystem"
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                                                   314 
688           If you are paranoid and not sure wha !! 315 choice
689           used for, say Y.                     !! 316         prompt "RCU Implementation"
                                                   >> 317         default TREE_RCU
690                                                   318 
691           Say N if unsure.                     !! 319 config TREE_RCU
                                                   >> 320         bool "Tree-based hierarchical RCU"
                                                   >> 321         help
                                                   >> 322           This option selects the RCU implementation that is
                                                   >> 323           designed for very large SMP system with hundreds or
                                                   >> 324           thousands of CPUs.  It also scales down nicely to
                                                   >> 325           smaller systems.
                                                   >> 326 
                                                   >> 327 config TREE_PREEMPT_RCU
                                                   >> 328         bool "Preemptable tree-based hierarchical RCU"
                                                   >> 329         depends on PREEMPT
                                                   >> 330         help
                                                   >> 331           This option selects the RCU implementation that is
                                                   >> 332           designed for very large SMP systems with hundreds or
                                                   >> 333           thousands of CPUs, but for which real-time response
                                                   >> 334           is also required.  It also scales down nicely to
                                                   >> 335           smaller systems.
692                                                   336 
693 endmenu # "CPU/Task time and stats accounting" !! 337 endchoice
694                                                   338 
695 config CPU_ISOLATION                           !! 339 config RCU_TRACE
696         bool "CPU isolation"                   !! 340         bool "Enable tracing for RCU"
697         depends on SMP || COMPILE_TEST         !! 341         depends on TREE_RCU || TREE_PREEMPT_RCU
698         default y                              !! 342         help
                                                   >> 343           This option provides tracing in RCU which presents stats
                                                   >> 344           in debugfs for debugging RCU implementation.
                                                   >> 345 
                                                   >> 346           Say Y here if you want to enable RCU tracing
                                                   >> 347           Say N if you are unsure.
                                                   >> 348 
                                                   >> 349 config RCU_FANOUT
                                                   >> 350         int "Tree-based hierarchical RCU fanout value"
                                                   >> 351         range 2 64 if 64BIT
                                                   >> 352         range 2 32 if !64BIT
                                                   >> 353         depends on TREE_RCU || TREE_PREEMPT_RCU
                                                   >> 354         default 64 if 64BIT
                                                   >> 355         default 32 if !64BIT
                                                   >> 356         help
                                                   >> 357           This option controls the fanout of hierarchical implementations
                                                   >> 358           of RCU, allowing RCU to work efficiently on machines with
                                                   >> 359           large numbers of CPUs.  This value must be at least the cube
                                                   >> 360           root of NR_CPUS, which allows NR_CPUS up to 32,768 for 32-bit
                                                   >> 361           systems and up to 262,144 for 64-bit systems.
                                                   >> 362 
                                                   >> 363           Select a specific number if testing RCU itself.
                                                   >> 364           Take the default if unsure.
                                                   >> 365 
                                                   >> 366 config RCU_FANOUT_EXACT
                                                   >> 367         bool "Disable tree-based hierarchical RCU auto-balancing"
                                                   >> 368         depends on TREE_RCU || TREE_PREEMPT_RCU
                                                   >> 369         default n
699         help                                      370         help
700           Make sure that CPUs running critical !! 371           This option forces use of the exact RCU_FANOUT value specified,
701           any source of "noise" such as unboun !! 372           regardless of imbalances in the hierarchy.  This is useful for
702           Unbound jobs get offloaded to housek !! 373           testing RCU itself, and might one day be useful on systems with
703           the "isolcpus=" boot parameter.      !! 374           strong NUMA behavior.
704                                                   375 
705           Say Y if unsure.                     !! 376           Without RCU_FANOUT_EXACT, the code will balance the hierarchy.
706                                                   377 
707 source "kernel/rcu/Kconfig"                    !! 378           Say N if unsure.
                                                   >> 379 
                                                   >> 380 config TREE_RCU_TRACE
                                                   >> 381         def_bool RCU_TRACE && ( TREE_RCU || TREE_PREEMPT_RCU )
                                                   >> 382         select DEBUG_FS
                                                   >> 383         help
                                                   >> 384           This option provides tracing for the TREE_RCU and
                                                   >> 385           TREE_PREEMPT_RCU implementations, permitting Makefile to
                                                   >> 386           trivially select kernel/rcutree_trace.c.
                                                   >> 387 
                                                   >> 388 endmenu # "RCU Subsystem"
708                                                   389 
709 config IKCONFIG                                   390 config IKCONFIG
710         tristate "Kernel .config support"         391         tristate "Kernel .config support"
711         help                                   !! 392         ---help---
712           This option enables the complete Lin    393           This option enables the complete Linux kernel ".config" file
713           contents to be saved in the kernel.     394           contents to be saved in the kernel. It provides documentation
714           of which kernel options are used in     395           of which kernel options are used in a running kernel or in an
715           on-disk kernel.  This information ca    396           on-disk kernel.  This information can be extracted from the kernel
716           image file with the script scripts/e    397           image file with the script scripts/extract-ikconfig and used as
717           input to rebuild the current kernel     398           input to rebuild the current kernel or to build another kernel.
718           It can also be extracted from a runn    399           It can also be extracted from a running kernel by reading
719           /proc/config.gz if enabled (below).     400           /proc/config.gz if enabled (below).
720                                                   401 
721 config IKCONFIG_PROC                              402 config IKCONFIG_PROC
722         bool "Enable access to .config through    403         bool "Enable access to .config through /proc/config.gz"
723         depends on IKCONFIG && PROC_FS            404         depends on IKCONFIG && PROC_FS
724         help                                   !! 405         ---help---
725           This option enables access to the ke    406           This option enables access to the kernel configuration file
726           through /proc/config.gz.                407           through /proc/config.gz.
727                                                   408 
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                              409 config LOG_BUF_SHIFT
738         int "Kernel log buffer size (16 => 64K    410         int "Kernel log buffer size (16 => 64KB, 17 => 128KB)"
739         range 12 25                            !! 411         range 12 21
740         default 17                                412         default 17
741         depends on PRINTK                      << 
742         help                                      413         help
743           Select the minimal kernel log buffer !! 414           Select kernel log buffer size as a power of 2.
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:                               415           Examples:
749                      17 => 128 KB              !! 416                      17 => 128 KB
750                      16 => 64 KB                  417                      16 => 64 KB
751                      15 => 32 KB               !! 418                      15 => 32 KB
752                      14 => 16 KB               !! 419                      14 => 16 KB
753                      13 =>  8 KB                  420                      13 =>  8 KB
754                      12 =>  4 KB                  421                      12 =>  4 KB
755                                                   422 
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 #                                                 423 #
807 # Architectures with an unreliable sched_clock    424 # Architectures with an unreliable sched_clock() should select this:
808 #                                                 425 #
809 config HAVE_UNSTABLE_SCHED_CLOCK                  426 config HAVE_UNSTABLE_SCHED_CLOCK
810         bool                                      427         bool
811                                                   428 
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                                429 menuconfig CGROUPS
950         bool "Control Group support"           !! 430         boolean "Control Group support"
951         select KERNFS                          << 
952         help                                      431         help
953           This option adds support for groupin    432           This option adds support for grouping sets of processes together, for
954           use with process control subsystems     433           use with process control subsystems such as Cpusets, CFS, memory
955           controls or device isolation.           434           controls or device isolation.
956           See                                     435           See
957                 - Documentation/scheduler/sche !! 436                 - Documentation/scheduler/sched-design-CFS.txt  (CFS)
958                 - Documentation/admin-guide/cg !! 437                 - Documentation/cgroups/ (features for grouping, isolation
959                                           and     438                                           and resource control)
960                                                   439 
961           Say N if unsure.                        440           Say N if unsure.
962                                                   441 
963 if CGROUPS                                        442 if CGROUPS
964                                                   443 
965 config PAGE_COUNTER                            !! 444 config CGROUP_DEBUG
966         bool                                   !! 445         bool "Example debug cgroup subsystem"
967                                                !! 446         depends on CGROUPS
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                                 447         default n
990         help                                      448         help
991           Legacy cgroup v1 memory controller w !! 449           This option enables a simple cgroup subsystem that
992           cgroup v2 implementation. The v1 is  !! 450           exports useful debugging information about the cgroups
993           which haven't migrated to the new cg !! 451           framework.
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                                                  452 
1001           Say N if unsure.                       453           Say N if unsure.
1002                                                  454 
1003 config BLK_CGROUP                             !! 455 config CGROUP_NS
1004         bool "IO controller"                  !! 456         bool "Namespace cgroup subsystem"
1005         depends on BLOCK                      !! 457         depends on CGROUPS
1006         default n                             !! 458         help
1007         help                                  !! 459           Provides a simple namespace cgroup subsystem to
1008         Generic block IO controller cgroup in !! 460           provide hierarchical naming of sets of namespaces,
1009         cgroup interface which should be used !! 461           for instance virtual servers and checkpoint/restart
1010         policies.                             !! 462           jobs.
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                                                  463 
1130 config CGROUP_FREEZER                            464 config CGROUP_FREEZER
1131         bool "Freezer controller"             !! 465         bool "Freezer cgroup subsystem"
                                                   >> 466         depends on CGROUPS
1132         help                                     467         help
1133           Provides a way to freeze and unfree    468           Provides a way to freeze and unfreeze all tasks in a
1134           cgroup.                                469           cgroup.
1135                                                  470 
1136           This option affects the ORIGINAL cg !! 471 config CGROUP_DEVICE
1137           controller includes important in-ke !! 472         bool "Device controller for cgroups"
1138                                               !! 473         depends on CGROUPS && EXPERIMENTAL
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                                     474         help
1147           Provides a cgroup controller for Hu !! 475           Provides a cgroup implementing whitelists for devices which
1148           When you enable this, you can put a !! 476           a process in the cgroup can mknod or open.
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                                                  477 
1157 config CPUSETS                                   478 config CPUSETS
1158         bool "Cpuset controller"              !! 479         bool "Cpuset support"
1159         depends on SMP                        !! 480         depends on CGROUPS
1160         help                                     481         help
1161           This option will let you create and    482           This option will let you create and manage CPUSETs which
1162           allow dynamically partitioning a sy    483           allow dynamically partitioning a system into sets of CPUs and
1163           Memory Nodes and assigning tasks to    484           Memory Nodes and assigning tasks to run only within those sets.
1164           This is primarily useful on large S    485           This is primarily useful on large SMP or NUMA systems.
1165                                                  486 
1166           Say N if unsure.                       487           Say N if unsure.
1167                                                  488 
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                           489 config PROC_PID_CPUSET
1182         bool "Include legacy /proc/<pid>/cpus    490         bool "Include legacy /proc/<pid>/cpuset file"
1183         depends on CPUSETS                       491         depends on CPUSETS
1184         default y                                492         default y
1185                                                  493 
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                            494 config CGROUP_CPUACCT
1193         bool "Simple CPU accounting controlle !! 495         bool "Simple CPU accounting cgroup subsystem"
                                                   >> 496         depends on CGROUPS
1194         help                                     497         help
1195           Provides a simple controller for mo !! 498           Provides a simple Resource Controller for monitoring the
1196           total CPU consumed by the tasks in     499           total CPU consumed by the tasks in a cgroup.
1197                                                  500 
1198 config CGROUP_PERF                            !! 501 config RESOURCE_COUNTERS
1199         bool "Perf controller"                !! 502         bool "Resource counters"
1200         depends on PERF_EVENTS                !! 503         help
1201         help                                  !! 504           This option enables controller independent resource accounting
1202           This option extends the perf per-cp !! 505           infrastructure that works with cgroups.
1203           to threads which belong to the cgro !! 506         depends on CGROUPS
1204           designated cpu.  Or this can be use !! 507 
1205           so that it can monitor performance  !! 508 config CGROUP_MEM_RES_CTLR
                                                   >> 509         bool "Memory Resource Controller for Control Groups"
                                                   >> 510         depends on CGROUPS && RESOURCE_COUNTERS
                                                   >> 511         select MM_OWNER
                                                   >> 512         help
                                                   >> 513           Provides a memory resource controller that manages both anonymous
                                                   >> 514           memory and page cache. (See Documentation/cgroups/memory.txt)
                                                   >> 515 
                                                   >> 516           Note that setting this option increases fixed memory overhead
                                                   >> 517           associated with each page of memory in the system. By this,
                                                   >> 518           20(40)bytes/PAGE_SIZE on 32(64)bit system will be occupied by memory
                                                   >> 519           usage tracking struct at boot. Total amount of this is printed out
                                                   >> 520           at boot.
                                                   >> 521 
                                                   >> 522           Only enable when you're ok with these trade offs and really
                                                   >> 523           sure you need the memory resource controller. Even when you enable
                                                   >> 524           this, you can set "cgroup_disable=memory" at your boot option to
                                                   >> 525           disable memory resource controller and you can avoid overheads.
                                                   >> 526           (and lose benefits of memory resource controller)
                                                   >> 527 
                                                   >> 528           This config option also selects MM_OWNER config option, which
                                                   >> 529           could in turn add some fork/exit overhead.
                                                   >> 530 
                                                   >> 531 config CGROUP_MEM_RES_CTLR_SWAP
                                                   >> 532         bool "Memory Resource Controller Swap Extension(EXPERIMENTAL)"
                                                   >> 533         depends on CGROUP_MEM_RES_CTLR && SWAP && EXPERIMENTAL
                                                   >> 534         help
                                                   >> 535           Add swap management feature to memory resource controller. When you
                                                   >> 536           enable this, you can limit mem+swap usage per cgroup. In other words,
                                                   >> 537           when you disable this, memory resource controller has no cares to
                                                   >> 538           usage of swap...a process can exhaust all of the swap. This extension
                                                   >> 539           is useful when you want to avoid exhaustion swap but this itself
                                                   >> 540           adds more overheads and consumes memory for remembering information.
                                                   >> 541           Especially if you use 32bit system or small memory system, please
                                                   >> 542           be careful about enabling this. When memory resource controller
                                                   >> 543           is disabled by boot option, this will be automatically disabled and
                                                   >> 544           there will be no overhead from this. Even when you set this config=y,
                                                   >> 545           if boot option "noswapaccount" is set, swap will not be accounted.
                                                   >> 546           Now, memory usage of swap_cgroup is 2 bytes per entry. If swap page
                                                   >> 547           size is 4096bytes, 512k per 1Gbytes of swap.
1206                                                  548 
1207           Say N if unsure.                    !! 549 menuconfig CGROUP_SCHED
                                                   >> 550         bool "Group CPU scheduler"
                                                   >> 551         depends on EXPERIMENTAL && CGROUPS
                                                   >> 552         default n
                                                   >> 553         help
                                                   >> 554           This feature lets CPU scheduler recognize task groups and control CPU
                                                   >> 555           bandwidth allocation to such task groups. It uses cgroups to group
                                                   >> 556           tasks.
1208                                                  557 
1209 config CGROUP_BPF                             !! 558 if CGROUP_SCHED
1210         bool "Support for eBPF programs attac !! 559 config FAIR_GROUP_SCHED
1211         depends on BPF_SYSCALL                !! 560         bool "Group scheduling for SCHED_OTHER"
1212         select SOCK_CGROUP_DATA               !! 561         depends on CGROUP_SCHED
1213         help                                  !! 562         default CGROUP_SCHED
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                                                  563 
1222 config CGROUP_MISC                            !! 564 config RT_GROUP_SCHED
1223         bool "Misc resource controller"       !! 565         bool "Group scheduling for SCHED_RR/FIFO"
                                                   >> 566         depends on EXPERIMENTAL
                                                   >> 567         depends on CGROUP_SCHED
1224         default n                                568         default n
1225         help                                     569         help
1226           Provides a controller for miscellan !! 570           This feature lets you explicitly allocate real CPU bandwidth
                                                   >> 571           to task groups. If enabled, it will also make it impossible to
                                                   >> 572           schedule realtime tasks for non-root users until you allocate
                                                   >> 573           realtime bandwidth for them.
                                                   >> 574           See Documentation/scheduler/sched-rt-group.txt for more information.
                                                   >> 575 
                                                   >> 576 endif #CGROUP_SCHED
1227                                                  577 
1228           Miscellaneous scalar resources are  !! 578 endif # CGROUPS
1229           which cannot be abstracted like the << 
1230           tracks and limits the miscellaneous << 
1231           attached to a cgroup hierarchy.     << 
1232                                                  579 
1233           For more information, please check  !! 580 config MM_OWNER
1234           /Documentation/admin-guide/cgroup-v !! 581         bool
1235                                                  582 
1236 config CGROUP_DEBUG                           !! 583 config SYSFS_DEPRECATED
1237         bool "Debug controller"               !! 584         bool
                                                   >> 585 
                                                   >> 586 config SYSFS_DEPRECATED_V2
                                                   >> 587         bool "enable deprecated sysfs features which may confuse old userspace tools"
                                                   >> 588         depends on SYSFS
1238         default n                                589         default n
1239         depends on DEBUG_KERNEL               !! 590         select SYSFS_DEPRECATED
1240         help                                     591         help
1241           This option enables a simple contro !! 592           This option switches the layout of sysfs to the deprecated
1242           debugging information about the cgr !! 593           version. Do not use it on recent distributions.
1243           controller is for control cgroup de << 
1244           interfaces are not stable.          << 
1245                                                  594 
1246           Say N.                              !! 595           The current sysfs layout features a unified device tree at
                                                   >> 596           /sys/devices/, which is able to express a hierarchy between
                                                   >> 597           class devices. If the deprecated option is set to Y, the
                                                   >> 598           unified device tree is split into a bus device tree at
                                                   >> 599           /sys/devices/ and several individual class device trees at
                                                   >> 600           /sys/class/. The class and bus devices will be connected by
                                                   >> 601           "<subsystem>:<name>" and the "device" links. The "block"
                                                   >> 602           class devices, will not show up in /sys/class/block/. Some
                                                   >> 603           subsystems will suppress the creation of some devices which
                                                   >> 604           depend on the unified device tree.
                                                   >> 605 
                                                   >> 606           This option is not a pure compatibility option that can
                                                   >> 607           be safely enabled on newer distributions. It will change the
                                                   >> 608           layout of sysfs to the non-extensible deprecated version,
                                                   >> 609           and disable some features, which can not be exported without
                                                   >> 610           confusing older userspace tools. Since 2007/2008 all major
                                                   >> 611           distributions do not enable this option, and ship no tools which
                                                   >> 612           depend on the deprecated layout or this option.
                                                   >> 613 
                                                   >> 614           If you are using a new kernel on an older distribution, or use
                                                   >> 615           older userspace tools, you might need to say Y here. Do not say Y,
                                                   >> 616           if the original kernel, that came with your distribution, has
                                                   >> 617           this option set to N.
1247                                                  618 
1248 config SOCK_CGROUP_DATA                       !! 619 config RELAY
1249         bool                                  !! 620         bool "Kernel->user space relay support (formerly relayfs)"
1250         default n                             !! 621         help
                                                   >> 622           This option enables support for relay interface support in
                                                   >> 623           certain file systems (such as debugfs).
                                                   >> 624           It is designed to provide an efficient mechanism for tools and
                                                   >> 625           facilities to relay large amounts of data from kernel space to
                                                   >> 626           user space.
1251                                                  627 
1252 endif # CGROUPS                               !! 628           If unsure, say N.
1253                                                  629 
1254 menuconfig NAMESPACES                         !! 630 config NAMESPACES
1255         bool "Namespaces support" if EXPERT   !! 631         bool "Namespaces support" if EMBEDDED
1256         depends on MULTIUSER                  !! 632         default !EMBEDDED
1257         default !EXPERT                       << 
1258         help                                     633         help
1259           Provides the way to make tasks work    634           Provides the way to make tasks work with different objects using
1260           the same id. For example same IPC i    635           the same id. For example same IPC id may refer to different objects
1261           or same user id or pid may refer to    636           or same user id or pid may refer to different tasks when used in
1262           different namespaces.                  637           different namespaces.
1263                                                  638 
1264 if NAMESPACES                                 << 
1265                                               << 
1266 config UTS_NS                                    639 config UTS_NS
1267         bool "UTS namespace"                     640         bool "UTS namespace"
1268         default y                             !! 641         depends on NAMESPACES
1269         help                                     642         help
1270           In this namespace tasks see differe    643           In this namespace tasks see different info provided with the
1271           uname() system call                    644           uname() system call
1272                                                  645 
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                                    646 config IPC_NS
1282         bool "IPC namespace"                     647         bool "IPC namespace"
1283         depends on (SYSVIPC || POSIX_MQUEUE)  !! 648         depends on NAMESPACES && (SYSVIPC || POSIX_MQUEUE)
1284         default y                             << 
1285         help                                     649         help
1286           In this namespace tasks work with I    650           In this namespace tasks work with IPC ids which correspond to
1287           different IPC objects in different     651           different IPC objects in different namespaces.
1288                                                  652 
1289 config USER_NS                                   653 config USER_NS
1290         bool "User namespace"                 !! 654         bool "User namespace (EXPERIMENTAL)"
1291         default n                             !! 655         depends on NAMESPACES && EXPERIMENTAL
1292         help                                     656         help
1293           This allows containers, i.e. vserve    657           This allows containers, i.e. vservers, to use user namespaces
1294           to provide different user info for     658           to provide different user info for different servers.
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.                      659           If unsure, say N.
1302                                                  660 
1303 config PID_NS                                    661 config PID_NS
1304         bool "PID Namespaces"                 !! 662         bool "PID Namespaces (EXPERIMENTAL)"
1305         default y                             !! 663         default n
                                                   >> 664         depends on NAMESPACES && EXPERIMENTAL
1306         help                                     665         help
1307           Support process id namespaces.  Thi    666           Support process id namespaces.  This allows having multiple
1308           processes with the same pid as long    667           processes with the same pid as long as they are in different
1309           pid namespaces.  This is a building    668           pid namespaces.  This is a building block of containers.
1310                                                  669 
                                                   >> 670           Unless you want to work with an experimental feature
                                                   >> 671           say N here.
                                                   >> 672 
1311 config NET_NS                                    673 config NET_NS
1312         bool "Network namespace"                 674         bool "Network namespace"
1313         depends on NET                        !! 675         default n
1314         default y                             !! 676         depends on NAMESPACES && EXPERIMENTAL && NET
1315         help                                     677         help
1316           Allow user space to create what app    678           Allow user space to create what appear to be multiple instances
1317           of the network stack.                  679           of the network stack.
1318                                                  680 
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                            681 config BLK_DEV_INITRD
1360         bool "Initial RAM filesystem and RAM     682         bool "Initial RAM filesystem and RAM disk (initramfs/initrd) support"
                                                   >> 683         depends on BROKEN || !FRV
1361         help                                     684         help
1362           The initial RAM filesystem is a ram    685           The initial RAM filesystem is a ramfs which is loaded by the
1363           boot loader (loadlin or lilo) and t    686           boot loader (loadlin or lilo) and that is mounted as root
1364           before the normal boot procedure. I    687           before the normal boot procedure. It is typically used to
1365           load modules needed to mount the "r    688           load modules needed to mount the "real" root file system,
1366           etc. See <file:Documentation/admin- !! 689           etc. See <file:Documentation/initrd.txt> for details.
1367                                                  690 
1368           If RAM disk support (BLK_DEV_RAM) i    691           If RAM disk support (BLK_DEV_RAM) is also included, this
1369           also enables initial RAM disk (init    692           also enables initial RAM disk (initrd) support and adds
1370           15 Kbytes (more on some other archi    693           15 Kbytes (more on some other architectures) to the kernel size.
1371                                                  694 
1372           If unsure say Y.                       695           If unsure say Y.
1373                                                  696 
1374 if BLK_DEV_INITRD                                697 if BLK_DEV_INITRD
1375                                                  698 
1376 source "usr/Kconfig"                             699 source "usr/Kconfig"
1377                                                  700 
1378 endif                                            701 endif
1379                                                  702 
1380 config BOOT_CONFIG                            !! 703 config CC_OPTIMIZE_FOR_SIZE
1381         bool "Boot config support"            !! 704         bool "Optimize for size"
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                                705         default y
1427         help                                     706         help
1428           Each entry in an initramfs cpio arc !! 707           Enabling this option will pass "-Os" instead of "-O2" to gcc
1429           enabled, extracted cpio items take  !! 708           resulting in a smaller kernel.
1430           setting deferred until after creati << 
1431                                                  709 
1432           If unsure, say Y.                      710           If unsure, say Y.
1433                                                  711 
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                                    712 config SYSCTL
1494         bool                                     713         bool
1495                                                  714 
1496 config HAVE_UID16                             !! 715 config ANON_INODES
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                                     716         bool
1521                                                  717 
1522 menuconfig EXPERT                             !! 718 menuconfig EMBEDDED
1523         bool "Configure standard kernel featu !! 719         bool "Configure standard kernel features (for small systems)"
1524         # Unhide debug options, to make the o << 
1525         select DEBUG_KERNEL                   << 
1526         help                                     720         help
1527           This option allows certain base ker    721           This option allows certain base kernel options and settings
1528           to be disabled or tweaked. This is  !! 722           to be disabled or tweaked. This is for specialized
1529           environments which can tolerate a " !! 723           environments which can tolerate a "non-standard" kernel.
1530           Only use this if you really know wh !! 724           Only use this if you really know what you are doing.
1531                                                  725 
1532 config UID16                                     726 config UID16
1533         bool "Enable 16-bit UID system calls" !! 727         bool "Enable 16-bit UID system calls" if EMBEDDED
1534         depends on HAVE_UID16 && MULTIUSER    !! 728         depends on ARM || BLACKFIN || CRIS || FRV || H8300 || X86_32 || M68K || (S390 && !64BIT) || SUPERH || SPARC32 || (SPARC64 && COMPAT) || UML || (X86_64 && IA32_EMULATION)
1535         default y                                729         default y
1536         help                                     730         help
1537           This enables the legacy 16-bit UID     731           This enables the legacy 16-bit UID syscall wrappers.
1538                                                  732 
1539 config MULTIUSER                              !! 733 config SYSCTL_SYSCALL
1540         bool "Multiple users, groups and capa !! 734         bool "Sysctl syscall support" if EMBEDDED
1541         default y                                735         default y
1542         help                                  !! 736         select SYSCTL
1543           This option enables support for non !! 737         ---help---
1544           capabilities.                       !! 738           sys_sysctl uses binary paths that have been found challenging
                                                   >> 739           to properly maintain and use.  The interface in /proc/sys
                                                   >> 740           using paths with ascii names is now the primary path to this
                                                   >> 741           information.
                                                   >> 742 
                                                   >> 743           Almost nothing using the binary sysctl interface so if you are
                                                   >> 744           trying to save some space it is probably safe to disable this,
                                                   >> 745           making your kernel marginally smaller.
1545                                                  746 
1546           If you say N here, all processes wi !! 747           If unsure say Y here.
1547           possible capabilities.  Saying N he << 
1548           system calls related to UIDs, GIDs, << 
1549           setgid, and capset.                 << 
1550                                                  748 
1551           If unsure, say Y here.              !! 749 config KALLSYMS
                                                   >> 750          bool "Load all symbols for debugging/ksymoops" if EMBEDDED
                                                   >> 751          default y
                                                   >> 752          help
                                                   >> 753            Say Y here to let the kernel print out symbolic crash information and
                                                   >> 754            symbolic stack backtraces. This increases the size of the kernel
                                                   >> 755            somewhat, as all symbols have to be loaded into the kernel image.
1552                                                  756 
1553 config SGETMASK_SYSCALL                       !! 757 config KALLSYMS_ALL
1554         bool "sgetmask/ssetmask syscalls supp !! 758         bool "Include all symbols in kallsyms"
1555         default PARISC || M68K || PPC || MIPS !! 759         depends on DEBUG_KERNEL && KALLSYMS
1556         help                                     760         help
1557           sys_sgetmask and sys_ssetmask are o !! 761            Normally kallsyms only contains the symbols of functions, for nicer
1558           no longer supported in libc but sti !! 762            OOPS messages.  Some debuggers can use kallsyms for other
1559           architectures.                      !! 763            symbols too: say Y here to include all symbols, if you need them 
                                                   >> 764            and you don't care about adding 300k to the size of your kernel.
1560                                                  765 
1561           If unsure, leave the default option !! 766            Say N.
1562                                                  767 
1563 config SYSFS_SYSCALL                          !! 768 config KALLSYMS_EXTRA_PASS
1564         bool "Sysfs syscall support" if EXPER !! 769         bool "Do an extra kallsyms pass"
1565         default y                             !! 770         depends on KALLSYMS
1566         help                                     771         help
1567           sys_sysfs is an obsolete system cal !! 772            If kallsyms is not working correctly, the build will fail with
1568           Note that disabling this option is  !! 773            inconsistent kallsyms data.  If that occurs, log a bug report and
1569           compatibility with some systems.    !! 774            turn on KALLSYMS_EXTRA_PASS which should result in a stable build.
1570                                               !! 775            Always say N here unless you find a bug in kallsyms, which must be
1571           If unsure say Y here.               !! 776            reported.  KALLSYMS_EXTRA_PASS is only a temporary workaround while
1572                                               !! 777            you wait for kallsyms to be fixed.
1573 config FHANDLE                                !! 778 
1574         bool "open by fhandle syscalls" if EX !! 779 
1575         select EXPORTFS                       !! 780 config HOTPLUG
1576         default y                             !! 781         bool "Support for hot-pluggable devices" if EMBEDDED
1577         help                                  !! 782         default y
1578           If you say Y here, a user level pro !! 783         help
1579           file names to handle and then later !! 784           This option is provided for the case where no hotplug or uevent
1580           different file system operations. T !! 785           capabilities is wanted by the kernel.  You should only consider
1581           userspace file servers, which now t !! 786           disabling this option for embedded systems that do not use modules, a
1582           of names. The handle would remain t !! 787           dynamic /dev tree, or dynamic device discovery.  Just say Y.
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                                                  788 
1603 config PRINTK                                    789 config PRINTK
1604         default y                                790         default y
1605         bool "Enable support for printk" if E !! 791         bool "Enable support for printk" if EMBEDDED
1606         select IRQ_WORK                       << 
1607         help                                     792         help
1608           This option enables normal printk s    793           This option enables normal printk support. Removing it
1609           eliminates most of the message stri    794           eliminates most of the message strings from the kernel image
1610           and makes the kernel more or less s    795           and makes the kernel more or less silent. As this makes it
1611           very difficult to diagnose system p    796           very difficult to diagnose system problems, saying N here is
1612           strongly discouraged.                  797           strongly discouraged.
1613                                                  798 
1614 config BUG                                       799 config BUG
1615         bool "BUG() support" if EXPERT        !! 800         bool "BUG() support" if EMBEDDED
1616         default y                                801         default y
1617         help                                     802         help
1618           Disabling this option eliminates su !! 803           Disabling this option eliminates support for BUG and WARN, reducing
1619           the size of your kernel image and p !! 804           the size of your kernel image and potentially quietly ignoring
1620           numerous fatal conditions. You shou !! 805           numerous fatal conditions. You should only consider disabling this
1621           option for embedded systems with no !! 806           option for embedded systems with no facilities for reporting errors.
1622           Just say Y.                         !! 807           Just say Y.
1623                                                  808 
1624 config ELF_CORE                                  809 config ELF_CORE
1625         depends on COREDUMP                   << 
1626         default y                                810         default y
1627         bool "Enable ELF core dumps" if EXPER !! 811         bool "Enable ELF core dumps" if EMBEDDED
1628         help                                     812         help
1629           Enable support for generating core     813           Enable support for generating core dumps. Disabling saves about 4k.
1630                                                  814 
1631                                               << 
1632 config PCSPKR_PLATFORM                           815 config PCSPKR_PLATFORM
1633         bool "Enable PC-Speaker support" if E !! 816         bool "Enable PC-Speaker support" if EMBEDDED
1634         depends on HAVE_PCSPKR_PLATFORM       !! 817         depends on ALPHA || X86 || MIPS || PPC_PREP || PPC_CHRP || PPC_PSERIES
1635         select I8253_LOCK                     << 
1636         default y                                818         default y
1637         help                                     819         help
1638           This option allows to disable the i !! 820           This option allows to disable the internal PC-Speaker
1639           support, saving some memory.        !! 821           support, saving some memory.
1640                                                  822 
1641 config BASE_SMALL                             !! 823 config BASE_FULL
1642         bool "Enable smaller-sized data struc !! 824         default y
                                                   >> 825         bool "Enable full-sized data structures for core" if EMBEDDED
1643         help                                     826         help
1644           Enabling this option reduces the si !! 827           Disabling this option reduces the size of miscellaneous core
1645           kernel data structures. This saves     828           kernel data structures. This saves memory on small machines,
1646           but may reduce performance.            829           but may reduce performance.
1647                                                  830 
1648 config FUTEX                                     831 config FUTEX
1649         bool "Enable futex support" if EXPERT !! 832         bool "Enable futex support" if EMBEDDED
1650         depends on !(SPARC32 && SMP)          << 
1651         default y                                833         default y
1652         imply RT_MUTEXES                      !! 834         select RT_MUTEXES
1653         help                                     835         help
1654           Disabling this option will cause th    836           Disabling this option will cause the kernel to be built without
1655           support for "fast userspace mutexes    837           support for "fast userspace mutexes".  The resulting kernel may not
1656           run glibc-based applications correc    838           run glibc-based applications correctly.
1657                                                  839 
1658 config FUTEX_PI                               << 
1659         bool                                  << 
1660         depends on FUTEX && RT_MUTEXES        << 
1661         default y                             << 
1662                                               << 
1663 config EPOLL                                     840 config EPOLL
1664         bool "Enable eventpoll support" if EX !! 841         bool "Enable eventpoll support" if EMBEDDED
1665         default y                                842         default y
                                                   >> 843         select ANON_INODES
1666         help                                     844         help
1667           Disabling this option will cause th    845           Disabling this option will cause the kernel to be built without
1668           support for epoll family of system     846           support for epoll family of system calls.
1669                                                  847 
1670 config SIGNALFD                                  848 config SIGNALFD
1671         bool "Enable signalfd() system call"  !! 849         bool "Enable signalfd() system call" if EMBEDDED
                                                   >> 850         select ANON_INODES
1672         default y                                851         default y
1673         help                                     852         help
1674           Enable the signalfd() system call t    853           Enable the signalfd() system call that allows to receive signals
1675           on a file descriptor.                  854           on a file descriptor.
1676                                                  855 
1677           If unsure, say Y.                      856           If unsure, say Y.
1678                                                  857 
1679 config TIMERFD                                   858 config TIMERFD
1680         bool "Enable timerfd() system call" i !! 859         bool "Enable timerfd() system call" if EMBEDDED
                                                   >> 860         select ANON_INODES
1681         default y                                861         default y
1682         help                                     862         help
1683           Enable the timerfd() system call th    863           Enable the timerfd() system call that allows to receive timer
1684           events on a file descriptor.           864           events on a file descriptor.
1685                                                  865 
1686           If unsure, say Y.                      866           If unsure, say Y.
1687                                                  867 
1688 config EVENTFD                                   868 config EVENTFD
1689         bool "Enable eventfd() system call" i !! 869         bool "Enable eventfd() system call" if EMBEDDED
                                                   >> 870         select ANON_INODES
1690         default y                                871         default y
1691         help                                     872         help
1692           Enable the eventfd() system call th    873           Enable the eventfd() system call that allows to receive both
1693           kernel notification (ie. KAIO) or u    874           kernel notification (ie. KAIO) or userspace notifications.
1694                                                  875 
1695           If unsure, say Y.                      876           If unsure, say Y.
1696                                                  877 
1697 config SHMEM                                     878 config SHMEM
1698         bool "Use full shmem filesystem" if E !! 879         bool "Use full shmem filesystem" if EMBEDDED
1699         default y                                880         default y
1700         depends on MMU                           881         depends on MMU
1701         help                                     882         help
1702           The shmem is an internal filesystem    883           The shmem is an internal filesystem used to manage shared memory.
1703           It is backed by swap and manages re    884           It is backed by swap and manages resource limits. It is also exported
1704           to userspace as tmpfs if TMPFS is e    885           to userspace as tmpfs if TMPFS is enabled. Disabling this
1705           option replaces shmem and tmpfs wit    886           option replaces shmem and tmpfs with the much simpler ramfs code,
1706           which may be appropriate on small s    887           which may be appropriate on small systems without swap.
1707                                                  888 
1708 config AIO                                       889 config AIO
1709         bool "Enable AIO support" if EXPERT   !! 890         bool "Enable AIO support" if EMBEDDED
1710         default y                                891         default y
1711         help                                     892         help
1712           This option enables POSIX asynchron    893           This option enables POSIX asynchronous I/O which may by used
1713           by some high performance threaded a !! 894           by some high performance threaded applications. Disabling
1714           this option saves about 7k.         !! 895           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                                                  896 
1862 config HAVE_PERF_EVENTS                          897 config HAVE_PERF_EVENTS
1863         bool                                     898         bool
1864         help                                     899         help
1865           See tools/perf/design.txt for detai    900           See tools/perf/design.txt for details.
1866                                                  901 
1867 config GUEST_PERF_EVENTS                      << 
1868         bool                                  << 
1869         depends on HAVE_PERF_EVENTS           << 
1870                                               << 
1871 config PERF_USE_VMALLOC                          902 config PERF_USE_VMALLOC
1872         bool                                     903         bool
1873         help                                     904         help
1874           See tools/perf/design.txt for detai    905           See tools/perf/design.txt for details
1875                                                  906 
1876 menu "Kernel Performance Events And Counters"    907 menu "Kernel Performance Events And Counters"
1877                                                  908 
1878 config PERF_EVENTS                               909 config PERF_EVENTS
1879         bool "Kernel performance events and c    910         bool "Kernel performance events and counters"
1880         default y if PROFILING                !! 911         default y if (PROFILING || PERF_COUNTERS)
1881         depends on HAVE_PERF_EVENTS              912         depends on HAVE_PERF_EVENTS
1882         select IRQ_WORK                       !! 913         select ANON_INODES
1883         help                                     914         help
1884           Enable kernel support for various p    915           Enable kernel support for various performance events provided
1885           by software and hardware.              916           by software and hardware.
1886                                                  917 
1887           Software events are supported eithe    918           Software events are supported either built-in or via the
1888           use of generic tracepoints.            919           use of generic tracepoints.
1889                                                  920 
1890           Most modern CPUs support performanc    921           Most modern CPUs support performance events via performance
1891           counter registers. These registers     922           counter registers. These registers count the number of certain
1892           types of hw events: such as instruc    923           types of hw events: such as instructions executed, cachemisses
1893           suffered, or branches mis-predicted    924           suffered, or branches mis-predicted - without slowing down the
1894           kernel or applications. These regis    925           kernel or applications. These registers can also trigger interrupts
1895           when a threshold number of events h    926           when a threshold number of events have passed - and can thus be
1896           used to profile the code that runs     927           used to profile the code that runs on that CPU.
1897                                                  928 
1898           The Linux Performance Event subsyst    929           The Linux Performance Event subsystem provides an abstraction of
1899           these software and hardware event c    930           these software and hardware event capabilities, available via a
1900           system call and used by the "perf"     931           system call and used by the "perf" utility in tools/perf/. It
1901           provides per task and per CPU count    932           provides per task and per CPU counters, and it provides event
1902           capabilities on top of those.          933           capabilities on top of those.
1903                                                  934 
1904           Say Y if unsure.                       935           Say Y if unsure.
1905                                                  936 
                                                   >> 937 config EVENT_PROFILE
                                                   >> 938         bool "Tracepoint profiling sources"
                                                   >> 939         depends on PERF_EVENTS && EVENT_TRACING
                                                   >> 940         default y
                                                   >> 941         help
                                                   >> 942          Allow the use of tracepoints as software performance events.
                                                   >> 943 
                                                   >> 944          When this is enabled, you can create perf events based on
                                                   >> 945          tracepoints using PERF_TYPE_TRACEPOINT and the tracepoint ID
                                                   >> 946          found in debugfs://tracing/events/*/*/id. (The -e/--events
                                                   >> 947          option to the perf tool can parse and interpret symbolic
                                                   >> 948          tracepoints, in the subsystem:tracepoint_name format.)
                                                   >> 949 
                                                   >> 950 config PERF_COUNTERS
                                                   >> 951         bool "Kernel performance counters (old config option)"
                                                   >> 952         depends on HAVE_PERF_EVENTS
                                                   >> 953         help
                                                   >> 954           This config has been obsoleted by the PERF_EVENTS
                                                   >> 955           config option - please see that one for details.
                                                   >> 956 
                                                   >> 957           It has no effect on the kernel whether you enable
                                                   >> 958           it or not, it is a compatibility placeholder.
                                                   >> 959 
                                                   >> 960           Say N if unsure.
                                                   >> 961 
1906 config DEBUG_PERF_USE_VMALLOC                    962 config DEBUG_PERF_USE_VMALLOC
1907         default n                                963         default n
1908         bool "Debug: use vmalloc to back perf    964         bool "Debug: use vmalloc to back perf mmap() buffers"
1909         depends on PERF_EVENTS && DEBUG_KERNE !! 965         depends on PERF_EVENTS && DEBUG_KERNEL
1910         select PERF_USE_VMALLOC                  966         select PERF_USE_VMALLOC
1911         help                                     967         help
1912           Use vmalloc memory to back perf mma !! 968          Use vmalloc memory to back perf mmap() buffers.
1913                                                  969 
1914           Mostly useful for debugging the vma !! 970          Mostly useful for debugging the vmalloc code on platforms
1915           that don't require it.              !! 971          that don't require it.
1916                                                  972 
1917           Say N if unsure.                    !! 973          Say N if unsure.
1918                                                  974 
1919 endmenu                                          975 endmenu
1920                                                  976 
1921 config SYSTEM_DATA_VERIFICATION               !! 977 config VM_EVENT_COUNTERS
1922         def_bool n                            !! 978         default y
1923         select SYSTEM_TRUSTED_KEYRING         !! 979         bool "Enable VM event counters for /proc/vmstat" if EMBEDDED
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                                     980         help
1942           Say Y here to enable the extended p !! 981           VM event counters are needed for event counts to be shown.
1943           by profilers.                       !! 982           This option allows the disabling of the VM event counters
                                                   >> 983           on EMBEDDED systems.  /proc/vmstat will only show page counts
                                                   >> 984           if VM event counters are disabled.
1944                                                  985 
1945 config RUST                                   !! 986 config PCI_QUIRKS
1946         bool "Rust support"                   !! 987         default y
1947         depends on HAVE_RUST                  !! 988         bool "Enable PCI quirk workarounds" if EMBEDDED
1948         depends on RUST_IS_AVAILABLE          !! 989         depends on PCI
1949         depends on !MODVERSIONS               !! 990         help
1950         depends on !GCC_PLUGIN_RANDSTRUCT     !! 991           This enables workarounds for various PCI chipset
1951         depends on !RANDSTRUCT                !! 992           bugs/quirks. Disable this only if your target machine is
1952         depends on !DEBUG_INFO_BTF || PAHOLE_ !! 993           unaffected by PCI quirks.
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                                                  994 
1961           This allows other Rust-related opti !! 995 config SLUB_DEBUG
1962           to be selected.                     !! 996         default y
                                                   >> 997         bool "Enable SLUB debugging support" if EMBEDDED
                                                   >> 998         depends on SLUB && SYSFS
                                                   >> 999         help
                                                   >> 1000           SLUB has extensive debug support features. Disabling these can
                                                   >> 1001           result in significant savings in code size. This also disables
                                                   >> 1002           SLUB sysfs support. /sys/slab will not exist and there will be
                                                   >> 1003           no support for cache validation etc.
1963                                                  1004 
1964           It is also required to be able to l !! 1005 config COMPAT_BRK
1965           written in Rust.                    !! 1006         bool "Disable heap randomization"
                                                   >> 1007         default y
                                                   >> 1008         help
                                                   >> 1009           Randomizing heap placement makes heap exploits harder, but it
                                                   >> 1010           also breaks ancient binaries (including anything libc5 based).
                                                   >> 1011           This option changes the bootup default to heap randomization
                                                   >> 1012           disabled, and can be overridden at runtime by setting
                                                   >> 1013           /proc/sys/kernel/randomize_va_space to 2.
1966                                                  1014 
1967           See Documentation/rust/ for more in !! 1015           On non-ancient distros (post-2000 ones) N is usually a safe choice.
1968                                                  1016 
1969           If unsure, say N.                   !! 1017 choice
                                                   >> 1018         prompt "Choose SLAB allocator"
                                                   >> 1019         default SLUB
                                                   >> 1020         help
                                                   >> 1021            This option allows to select a slab allocator.
1970                                                  1022 
1971 config RUSTC_VERSION_TEXT                     !! 1023 config SLAB
1972         string                                !! 1024         bool "SLAB"
1973         depends on RUST                       << 
1974         default "$(RUSTC_VERSION_TEXT)"       << 
1975         help                                     1025         help
1976           See `CC_VERSION_TEXT`.              !! 1026           The regular slab allocator that is established and known to work
                                                   >> 1027           well in all environments. It organizes cache hot objects in
                                                   >> 1028           per cpu and per node queues.
                                                   >> 1029 
                                                   >> 1030 config SLUB
                                                   >> 1031         depends on BROKEN || NUMA || !DISCONTIGMEM
                                                   >> 1032         bool "SLUB (Unqueued Allocator)"
                                                   >> 1033         help
                                                   >> 1034            SLUB is a slab allocator that minimizes cache line usage
                                                   >> 1035            instead of managing queues of cached objects (SLAB approach).
                                                   >> 1036            Per cpu caching is realized using slabs of objects instead
                                                   >> 1037            of queues of objects. SLUB can use memory efficiently
                                                   >> 1038            and has enhanced diagnostics. SLUB is the default choice for
                                                   >> 1039            a slab allocator.
                                                   >> 1040 
                                                   >> 1041 config SLOB
                                                   >> 1042         depends on EMBEDDED
                                                   >> 1043         bool "SLOB (Simple Allocator)"
                                                   >> 1044         help
                                                   >> 1045            SLOB replaces the stock allocator with a drastically simpler
                                                   >> 1046            allocator. SLOB is generally more space efficient but
                                                   >> 1047            does not perform as well on large systems.
1977                                                  1048 
1978 config BINDGEN_VERSION_TEXT                   !! 1049 endchoice
1979         string                                !! 1050 
1980         depends on RUST                       !! 1051 config PROFILING
1981         # The dummy parameter `workaround-for !! 1052         bool "Profiling support (EXPERIMENTAL)"
1982         # (https://github.com/rust-lang/rust- !! 1053         help
1983         # the minimum version is upgraded pas !! 1054           Say Y here to enable the extended profiling support mechanisms used
1984         default "$(shell,$(BINDGEN) --version !! 1055           by profilers such as OProfile.
1985                                                  1056 
1986 #                                                1057 #
1987 # Place an empty function call at each tracep    1058 # Place an empty function call at each tracepoint site. Can be
1988 # dynamically changed for a probe function.      1059 # dynamically changed for a probe function.
1989 #                                                1060 #
1990 config TRACEPOINTS                               1061 config TRACEPOINTS
1991         bool                                     1062         bool
1992                                                  1063 
1993 source "kernel/Kconfig.kexec"                 !! 1064 source "arch/Kconfig"
                                                   >> 1065 
                                                   >> 1066 config SLOW_WORK
                                                   >> 1067         default n
                                                   >> 1068         bool
                                                   >> 1069         help
                                                   >> 1070           The slow work thread pool provides a number of dynamically allocated
                                                   >> 1071           threads that can be used by the kernel to perform operations that
                                                   >> 1072           take a relatively long time.
                                                   >> 1073 
                                                   >> 1074           An example of this would be CacheFiles doing a path lookup followed
                                                   >> 1075           by a series of mkdirs and a create call, all of which have to touch
                                                   >> 1076           disk.
                                                   >> 1077 
                                                   >> 1078           See Documentation/slow-work.txt.
                                                   >> 1079 
                                                   >> 1080 config SLOW_WORK_DEBUG
                                                   >> 1081         bool "Slow work debugging through debugfs"
                                                   >> 1082         default n
                                                   >> 1083         depends on SLOW_WORK && DEBUG_FS
                                                   >> 1084         help
                                                   >> 1085           Display the contents of the slow work run queue through debugfs,
                                                   >> 1086           including items currently executing.
                                                   >> 1087 
                                                   >> 1088           See Documentation/slow-work.txt.
1994                                                  1089 
1995 endmenu         # General setup                  1090 endmenu         # General setup
1996                                                  1091 
1997 source "arch/Kconfig"                         !! 1092 config HAVE_GENERIC_DMA_COHERENT
                                                   >> 1093         bool
                                                   >> 1094         default n
1998                                                  1095 
1999 config RT_MUTEXES                             !! 1096 config SLABINFO
2000         bool                                     1097         bool
2001         default y if PREEMPT_RT               !! 1098         depends on PROC_FS
                                                   >> 1099         depends on SLAB || SLUB_DEBUG
                                                   >> 1100         default y
2002                                                  1101 
2003 config MODULE_SIG_FORMAT                      !! 1102 config RT_MUTEXES
2004         def_bool n                            !! 1103         boolean
2005         select SYSTEM_DATA_VERIFICATION       << 
2006                                                  1104 
2007 source "kernel/module/Kconfig"                !! 1105 config BASE_SMALL
                                                   >> 1106         int
                                                   >> 1107         default 0 if BASE_FULL
                                                   >> 1108         default 1 if !BASE_FULL
2008                                                  1109 
2009 config INIT_ALL_POSSIBLE                      !! 1110 menuconfig MODULES
2010         bool                                  !! 1111         bool "Enable loadable module support"
2011         help                                     1112         help
2012           Back when each arch used to define  !! 1113           Kernel modules are small pieces of compiled code which can
2013           cpu_possible_mask, some of them cho !! 1114           be inserted in the running kernel, rather than being
2014           with all 1s, and others with all 0s !! 1115           permanently built into the kernel.  You use the "modprobe"
2015           it was better to provide this optio !! 1116           tool to add (and sometimes remove) them.  If you say Y here,
2016           and have several arch maintainers p !! 1117           many parts of the kernel can be built as modules (by
                                                   >> 1118           answering M instead of Y where indicated): this is most
                                                   >> 1119           useful for infrequently used options which are not required
                                                   >> 1120           for booting.  For more information, see the man pages for
                                                   >> 1121           modprobe, lsmod, modinfo, insmod and rmmod.
                                                   >> 1122 
                                                   >> 1123           If you say Y here, you will need to run "make
                                                   >> 1124           modules_install" to put the modules under /lib/modules/
                                                   >> 1125           where modprobe can find them (you may need to be root to do
                                                   >> 1126           this).
2017                                                  1127 
2018 source "block/Kconfig"                        !! 1128           If unsure, say Y.
2019                                                  1129 
2020 config PREEMPT_NOTIFIERS                      !! 1130 if MODULES
2021         bool                                  << 
2022                                                  1131 
2023 config PADATA                                 !! 1132 config MODULE_FORCE_LOAD
2024         depends on SMP                        !! 1133         bool "Forced module loading"
2025         bool                                  !! 1134         default n
                                                   >> 1135         help
                                                   >> 1136           Allow loading of modules without version information (ie. modprobe
                                                   >> 1137           --force).  Forced module loading sets the 'F' (forced) taint flag and
                                                   >> 1138           is usually a really bad idea.
                                                   >> 1139 
                                                   >> 1140 config MODULE_UNLOAD
                                                   >> 1141         bool "Module unloading"
                                                   >> 1142         help
                                                   >> 1143           Without this option you will not be able to unload any
                                                   >> 1144           modules (note that some modules may not be unloadable
                                                   >> 1145           anyway), which makes your kernel smaller, faster
                                                   >> 1146           and simpler.  If unsure, say Y.
                                                   >> 1147 
                                                   >> 1148 config MODULE_FORCE_UNLOAD
                                                   >> 1149         bool "Forced module unloading"
                                                   >> 1150         depends on MODULE_UNLOAD && EXPERIMENTAL
                                                   >> 1151         help
                                                   >> 1152           This option allows you to force a module to unload, even if the
                                                   >> 1153           kernel believes it is unsafe: the kernel will remove the module
                                                   >> 1154           without waiting for anyone to stop using it (using the -f option to
                                                   >> 1155           rmmod).  This is mainly for kernel developers and desperate users.
                                                   >> 1156           If unsure, say N.
2026                                                  1157 
2027 config ASN1                                   !! 1158 config MODVERSIONS
2028         tristate                              !! 1159         bool "Module versioning support"
2029         help                                     1160         help
2030           Build a simple ASN.1 grammar compil !! 1161           Usually, you have to use modules compiled with your kernel.
2031           that can be interpreted by the ASN. !! 1162           Saying Y here makes it sometimes possible to use modules
2032           inform it as to what tags are to be !! 1163           compiled for different kernels, by adding enough information
2033           functions to call on what tags.     !! 1164           to the modules to (hopefully) spot any changes which would
                                                   >> 1165           make them incompatible with the kernel you are running.  If
                                                   >> 1166           unsure, say N.
                                                   >> 1167 
                                                   >> 1168 config MODULE_SRCVERSION_ALL
                                                   >> 1169         bool "Source checksum for all modules"
                                                   >> 1170         help
                                                   >> 1171           Modules which contain a MODULE_VERSION get an extra "srcversion"
                                                   >> 1172           field inserted into their modinfo section, which contains a
                                                   >> 1173           sum of the source files which made it.  This helps maintainers
                                                   >> 1174           see exactly which source was used to build a module (since
                                                   >> 1175           others sometimes change the module source without updating
                                                   >> 1176           the version).  With this option, such a "srcversion" field
                                                   >> 1177           will be created for all modules.  If unsure, say N.
2034                                                  1178 
2035 source "kernel/Kconfig.locks"                 !! 1179 endif # MODULES
2036                                                  1180 
2037 config ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE !! 1181 config INIT_ALL_POSSIBLE
2038         bool                                     1182         bool
                                                   >> 1183         help
                                                   >> 1184           Back when each arch used to define their own cpu_online_map and
                                                   >> 1185           cpu_possible_map, some of them chose to initialize cpu_possible_map
                                                   >> 1186           with all 1s, and others with all 0s.  When they were centralised,
                                                   >> 1187           it was better to provide this option than to break all the archs
                                                   >> 1188           and have several arch maintainers pursuing me down dark alleys.
2039                                                  1189 
2040 config ARCH_HAS_PREPARE_SYNC_CORE_CMD         !! 1190 config STOP_MACHINE
2041         bool                                     1191         bool
                                                   >> 1192         default y
                                                   >> 1193         depends on (SMP && MODULE_UNLOAD) || HOTPLUG_CPU
                                                   >> 1194         help
                                                   >> 1195           Need stop_machine() primitive.
2042                                                  1196 
2043 config ARCH_HAS_SYNC_CORE_BEFORE_USERMODE     !! 1197 source "block/Kconfig"
                                                   >> 1198 
                                                   >> 1199 config PREEMPT_NOTIFIERS
2044         bool                                     1200         bool
2045                                                  1201 
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