Blame view

lib/Kconfig 15.4 KB
ec8f24b7f   Thomas Gleixner   treewide: Add SPD...
1
  # SPDX-License-Identifier: GPL-2.0-only
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
2
3
4
  #
  # Library configuration
  #
4370aa4aa   Lai Jiangshan   vsprintf: add bin...
5
6
  config BINARY_PRINTF
  	def_bool n
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
7
  menu "Library routines"
f5e70d0fe   David Woodhouse   md: Factor out RA...
8
9
  config RAID6_PQ
  	tristate
be85f93ae   Daniel Verkamp   lib/raid6: add op...
10
11
12
13
14
15
16
  config RAID6_PQ_BENCHMARK
  	bool "Automatically choose fastest RAID6 PQ functions"
  	depends on RAID6_PQ
  	default y
  	help
  	  Benchmark all available RAID6 PQ functions on init and choose the
  	  fastest one.
d2218d4e4   Matti Vaittinen   lib: add linear r...
17
18
  config LINEAR_RANGES
  	tristate
554aae350   Vladimir Oltean   lib: Add support ...
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
  config PACKING
  	bool "Generic bitfield packing and unpacking"
  	default n
  	help
  	  This option provides the packing() helper function, which permits
  	  converting bitfields between a CPU-usable representation and a
  	  memory representation that can have any combination of these quirks:
  	    - Is little endian (bytes are reversed within a 32-bit group)
  	    - The least-significant 32-bit word comes first (within a 64-bit
  	      group)
  	    - The most significant bit of a byte is at its right (bit 0 of a
  	      register description is numerically 2^7).
  	  Drivers may use these helpers to match the bit indices as described
  	  in the data sheets of the peripherals they are in control of.
  
  	  When in doubt, say N.
a5cfc1ec5   Akinobu Mita   [PATCH] bit rever...
35
36
  config BITREVERSE
  	tristate
556d2f055   Yalin Wang   ARM: 8187/1: add ...
37
  config HAVE_ARCH_BITREVERSE
841c00900   Christoph Jaeger   lib/Kconfig: use ...
38
  	bool
556d2f055   Yalin Wang   ARM: 8187/1: add ...
39
40
41
  	default n
  	depends on BITREVERSE
  	help
9e522c0d2   Andrew Morton   lib/Kconfig: fix ...
42
43
  	  This option enables the use of hardware bit-reversal instructions on
  	  architectures which support such operations.
556d2f055   Yalin Wang   ARM: 8187/1: add ...
44

2922585b9   David S. Miller   lib: Sparc's strn...
45
46
  config GENERIC_STRNCPY_FROM_USER
  	bool
a08c5356a   Linus Torvalds   lib: add generic ...
47
48
  config GENERIC_STRNLEN_USER
  	bool
4cd5773a2   Andy Shevchenko   net: core: move m...
49
50
  config GENERIC_NET_UTILS
  	bool
19870def5   Alexander van Heukelum   x86, bitops: sele...
51
  config GENERIC_FIND_FIRST_BIT
9ba16087d   Jan Beulich   Kconfig: eliminat...
52
  	bool
19870def5   Alexander van Heukelum   x86, bitops: sele...
53

2c64e9cb0   Andy Shevchenko   lib: Move mathema...
54
  source "lib/math/Kconfig"
b923650b8   Michael S. Tsirkin   lib: add NO_GENER...
55
56
  config NO_GENERIC_PCI_IOPORT_MAP
  	bool
66eab4df2   Michael S. Tsirkin   lib: add GENERIC_...
57
58
  config GENERIC_PCI_IOMAP
  	bool
4673ca8eb   Michael S. Tsirkin   lib: move GENERIC...
59
60
  config GENERIC_IOMAP
  	bool
66eab4df2   Michael S. Tsirkin   lib: add GENERIC_...
61
  	select GENERIC_PCI_IOMAP
4673ca8eb   Michael S. Tsirkin   lib: move GENERIC...
62

4ccf4beab   Wolfram Sang   lib: add support ...
63
64
  config STMP_DEVICE
  	bool
22b361d1d   Oleg Nesterov   percpu_rw_semapho...
65

bc08b449e   Linus Torvalds   lockref: implemen...
66
67
  config ARCH_USE_CMPXCHG_LOCKREF
  	bool
72d931046   Linus Torvalds   Make ARCH_HAS_FAS...
68
69
  config ARCH_HAS_FAST_MULTIPLIER
  	bool
2ce0d7f97   Mark Brown   x86/asm: Provide ...
70
71
  config ARCH_USE_SYM_ANNOTATIONS
  	bool
031e36018   Zhichang Yuan   lib: Add generic ...
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
  config INDIRECT_PIO
  	bool "Access I/O in non-MMIO mode"
  	depends on ARM64
  	help
  	  On some platforms where no separate I/O space exists, there are I/O
  	  hosts which can not be accessed in MMIO mode. Using the logical PIO
  	  mechanism, the host-local I/O resource can be mapped into system
  	  logic PIO space shared with MMIO hosts, such as PCI/PCIe, then the
  	  system can access the I/O devices with the mapped-logic PIO through
  	  I/O accessors.
  
  	  This way has relatively little I/O performance cost. Please make
  	  sure your devices really need this configure item enabled.
  
  	  When in doubt, say N.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
87
88
89
90
91
92
93
  config CRC_CCITT
  	tristate "CRC-CCITT functions"
  	help
  	  This option is provided for the case where no in-kernel-tree
  	  modules require CRC-CCITT functions, but a module built outside
  	  the kernel tree does. Such modules that use library CRC-CCITT
  	  functions require M here.
7657ec1fc   Evgeniy Polyakov   [PATCH] lib/crc16...
94
95
96
97
98
99
100
  config CRC16
  	tristate "CRC16 functions"
  	help
  	  This option is provided for the case where no in-kernel-tree
  	  modules require CRC16 functions, but a module built outside
  	  the kernel tree does. Such modules that use library CRC16
  	  functions require M here.
f11f594ed   Martin K. Petersen   [SCSI] lib: Add s...
101
102
  config CRC_T10DIF
  	tristate "CRC calculation for the T10 Data Integrity Field"
68411521c   Herbert Xu   Reinstate "crypto...
103
104
  	select CRYPTO
  	select CRYPTO_CRCT10DIF
f11f594ed   Martin K. Petersen   [SCSI] lib: Add s...
105
106
107
108
  	help
  	  This option is only needed if a module that's not in the
  	  kernel tree needs to calculate CRC checks for use with the
  	  SCSI data integrity subsystem.
3e7cbae7c   Ivo van Doorn   CRC ITU-T V.41
109
110
111
112
113
114
115
  config CRC_ITU_T
  	tristate "CRC ITU-T V.41 functions"
  	help
  	  This option is provided for the case where no in-kernel-tree
  	  modules require CRC ITU-T V.41 functions, but a module built outside
  	  the kernel tree does. Such modules that use library CRC ITU-T V.41
  	  functions require M here.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
116
  config CRC32
46c5801ea   Darrick J. Wong   crc32: bolt on cr...
117
  	tristate "CRC32/CRC32c functions"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
118
  	default y
906d66df1   Akinobu Mita   [PATCH] crc32: re...
119
  	select BITREVERSE
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
120
121
  	help
  	  This option is provided for the case where no in-kernel-tree
46c5801ea   Darrick J. Wong   crc32: bolt on cr...
122
123
124
  	  modules require CRC32/CRC32c functions, but a module built outside
  	  the kernel tree does. Such modules that use library CRC32/CRC32c
  	  functions require M here.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
125

3863ef31d   Bob Pearson   crc32: simplify u...
126
  config CRC32_SELFTEST
5fb7f8740   Geert Uytterhoeven   lib: add module s...
127
  	tristate "CRC32 perform self test on init"
3863ef31d   Bob Pearson   crc32: simplify u...
128
129
130
131
132
133
  	depends on CRC32
  	help
  	  This option enables the CRC32 library functions to perform a
  	  self test on initialization. The self test computes crc32_le
  	  and crc32_be over byte strings with random alignment and length
  	  and computes the total elapsed time and number of bytes processed.
5cde7656d   Darrick J. Wong   crc32: select an ...
134
135
136
137
  choice
  	prompt "CRC32 implementation"
  	depends on CRC32
  	default CRC32_SLICEBY8
82edb4baa   Darrick J. Wong   crc32: add help t...
138
139
140
141
  	help
  	  This option allows a kernel builder to override the default choice
  	  of CRC32 algorithm.  Choose the default ("slice by 8") unless you
  	  know that you need one of the others.
5cde7656d   Darrick J. Wong   crc32: select an ...
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
  
  config CRC32_SLICEBY8
  	bool "Slice by 8 bytes"
  	help
  	  Calculate checksum 8 bytes at a time with a clever slicing algorithm.
  	  This is the fastest algorithm, but comes with a 8KiB lookup table.
  	  Most modern processors have enough cache to hold this table without
  	  thrashing the cache.
  
  	  This is the default implementation choice.  Choose this one unless
  	  you have a good reason not to.
  
  config CRC32_SLICEBY4
  	bool "Slice by 4 bytes"
  	help
  	  Calculate checksum 4 bytes at a time with a clever slicing algorithm.
  	  This is a bit slower than slice by 8, but has a smaller 4KiB lookup
  	  table.
  
  	  Only choose this option if you know what you are doing.
  
  config CRC32_SARWATE
  	bool "Sarwate's Algorithm (one byte at a time)"
  	help
  	  Calculate checksum a byte at a time using Sarwate's algorithm.  This
  	  is not particularly fast, but has a small 256 byte lookup table.
  
  	  Only choose this option if you know what you are doing.
  
  config CRC32_BIT
  	bool "Classic Algorithm (one bit at a time)"
  	help
  	  Calculate checksum one bit at a time.  This is VERY slow, but has
  	  no lookup table.  This is provided as a debugging option.
  
  	  Only choose this option if you are debugging crc32.
  
  endchoice
feba04fd2   Coly Li   lib: add crc64 ca...
180
181
182
183
184
185
186
  config CRC64
  	tristate "CRC64 functions"
  	help
  	  This option is provided for the case where no in-kernel-tree
  	  modules require CRC64 functions, but a module built outside
  	  the kernel tree does. Such modules that use library CRC64
  	  functions require M here.
0cbaa4484   Jeremy Kerr   lib: Add crc4 module
187
188
189
190
191
192
193
  config CRC4
  	tristate "CRC4 functions"
  	help
  	  This option is provided for the case where no in-kernel-tree
  	  modules require CRC4 functions, but a module built outside
  	  the kernel tree does. Such modules that use library CRC4
  	  functions require M here.
ad241528c   Jan Nikitenko   CRC7 support
194
195
196
197
198
199
200
  config CRC7
  	tristate "CRC7 functions"
  	help
  	  This option is provided for the case where no in-kernel-tree
  	  modules require CRC7 functions, but a module built outside
  	  the kernel tree does. Such modules that use library CRC7
  	  functions require M here.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
201
202
  config LIBCRC32C
  	tristate "CRC32c (Castagnoli, et al) Cyclic Redundancy-Check"
93027354d   Herbert Xu   libcrc32c: Select...
203
  	select CRYPTO
69c35efcf   Herbert Xu   libcrc32c: Move i...
204
  	select CRYPTO_CRC32C
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
205
206
207
208
209
210
  	help
  	  This option is provided for the case where no in-kernel-tree
  	  modules require CRC32c functions, but a module built outside the
  	  kernel tree does. Such modules that use library CRC32c functions
  	  require M here.  See Castagnoli93.
  	  Module will be libcrc32c.
7150962d6   Arend van Spriel   lib: crc8: add ne...
211
212
213
214
215
216
  config CRC8
  	tristate "CRC8 function"
  	help
  	  This option provides CRC8 function. Drivers may select this
  	  when they need to do cyclic redundancy check according CRC8
  	  algorithm. Module will be called crc8.
5d2405227   Nick Terrell   lib: Add xxhash m...
217
218
  config XXHASH
  	tristate
e65e1fc2d   Al Viro   [PATCH] syscall c...
219
220
221
222
  config AUDIT_GENERIC
  	bool
  	depends on AUDIT && !AUDIT_ARCH
  	default y
4b5884114   AKASHI Takahiro   audit: Add generi...
223
224
225
226
227
228
229
230
  config AUDIT_ARCH_COMPAT_GENERIC
  	bool
  	default n
  
  config AUDIT_COMPAT_GENERIC
  	bool
  	depends on AUDIT_GENERIC && AUDIT_ARCH_COMPAT_GENERIC && COMPAT
  	default y
a6a9c0f1b   Daniel Borkmann   random32: add tes...
231
232
  config RANDOM32_SELFTEST
  	bool "PRNG perform self test on init"
a6a9c0f1b   Daniel Borkmann   random32: add tes...
233
234
235
  	help
  	  This option enables the 32 bit PRNG library functions to perform a
  	  self test on initialization.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
236
237
238
  #
  # compression support is select'ed if needed
  #
2da572c95   Dan Streetman   lib: add software...
239
  config 842_COMPRESS
5b5716774   Arnd Bergmann   lib: sw842: selec...
240
  	select CRC32
2da572c95   Dan Streetman   lib: add software...
241
242
243
  	tristate
  
  config 842_DECOMPRESS
5b5716774   Arnd Bergmann   lib: sw842: selec...
244
  	select CRC32
2da572c95   Dan Streetman   lib: add software...
245
  	tristate
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
246
247
248
249
250
  config ZLIB_INFLATE
  	tristate
  
  config ZLIB_DEFLATE
  	tristate
1fd4e5c34   Andrew Morton   lib/Kconfig: ZLIB...
251
  	select BITREVERSE
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
252

aa5b395b6   Mikhail Zaslonko   lib/zlib: add s39...
253
254
255
256
257
258
  config ZLIB_DFLTCC
  	def_bool y
  	depends on S390
  	prompt "Enable s390x DEFLATE CONVERSION CALL support for kernel zlib"
  	help
  	 Enable s390x hardware support for zlib in the kernel.
64c70b1cf   Richard Purdie   Add LZO1X algorit...
259
260
261
262
263
  config LZO_COMPRESS
  	tristate
  
  config LZO_DECOMPRESS
  	tristate
c72ac7a1a   Chanho Min   lib: add lz4 comp...
264
265
266
267
268
  config LZ4_COMPRESS
  	tristate
  
  config LZ4HC_COMPRESS
  	tristate
e76e1fdfa   Kyungsik Lee   lib: add support ...
269
270
  config LZ4_DECOMPRESS
  	tristate
73f3d1b48   Nick Terrell   lib: Add zstd mod...
271
272
273
274
275
276
277
  config ZSTD_COMPRESS
  	select XXHASH
  	tristate
  
  config ZSTD_DECOMPRESS
  	select XXHASH
  	tristate
24fa0402a   Lasse Collin   decompressors: ad...
278
  source "lib/xz/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
279
  #
c8531ab34   H. Peter Anvin   bzip2/lzma: prope...
280
281
282
283
  # These all provide a common interface (hence the apparent duplication with
  # ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.)
  #
  config DECOMPRESS_GZIP
7856a16ea   H. Peter Anvin   bzip2/lzma: DECOM...
284
  	select ZLIB_INFLATE
c8531ab34   H. Peter Anvin   bzip2/lzma: prope...
285
286
287
288
289
290
291
  	tristate
  
  config DECOMPRESS_BZIP2
  	tristate
  
  config DECOMPRESS_LZMA
  	tristate
3ebe12439   Lasse Collin   decompressors: ad...
292
293
294
  config DECOMPRESS_XZ
  	select XZ_DEC
  	tristate
cacb246f8   Albin Tonnerre   Add LZO compressi...
295
296
297
  config DECOMPRESS_LZO
  	select LZO_DECOMPRESS
  	tristate
e76e1fdfa   Kyungsik Lee   lib: add support ...
298
299
300
  config DECOMPRESS_LZ4
  	select LZ4_DECOMPRESS
  	tristate
4963bb2b8   Nick Terrell   lib: Add zstd sup...
301
302
303
  config DECOMPRESS_ZSTD
  	select ZSTD_DECOMPRESS
  	tristate
c8531ab34   H. Peter Anvin   bzip2/lzma: prope...
304
  #
f14f75b81   Jes Sorensen   [PATCH] ia64 unca...
305
306
307
  # Generic allocator support is selected if needed
  #
  config GENERIC_ALLOCATOR
6341e62b2   Christoph Jaeger   kconfig: use bool...
308
  	bool
f14f75b81   Jes Sorensen   [PATCH] ia64 unca...
309
310
  
  #
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
311
312
313
314
315
316
  # reed solomon support is select'ed if needed
  #
  config REED_SOLOMON
  	tristate
  	
  config REED_SOLOMON_ENC8
6341e62b2   Christoph Jaeger   kconfig: use bool...
317
  	bool
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
318
319
  
  config REED_SOLOMON_DEC8
6341e62b2   Christoph Jaeger   kconfig: use bool...
320
  	bool
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
321
322
  
  config REED_SOLOMON_ENC16
6341e62b2   Christoph Jaeger   kconfig: use bool...
323
  	bool
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
324
325
  
  config REED_SOLOMON_DEC16
6341e62b2   Christoph Jaeger   kconfig: use bool...
326
  	bool
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
327

f7704347a   David S. Miller   [PKT_SCHED]: Make...
328
  #
437aa565e   Ivan Djelic   lib: add shared B...
329
330
331
332
333
334
  # BCH support is selected if needed
  #
  config BCH
  	tristate
  
  config BCH_CONST_PARAMS
6341e62b2   Christoph Jaeger   kconfig: use bool...
335
  	bool
437aa565e   Ivan Djelic   lib: add shared B...
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
  	help
  	  Drivers may select this option to force specific constant
  	  values for parameters 'm' (Galois field order) and 't'
  	  (error correction capability). Those specific values must
  	  be set by declaring default values for symbols BCH_CONST_M
  	  and BCH_CONST_T.
  	  Doing so will enable extra compiler optimizations,
  	  improving encoding and decoding performance up to 2x for
  	  usual (m,t) values (typically such that m*t < 200).
  	  When this option is selected, the BCH library supports
  	  only a single (m,t) configuration. This is mainly useful
  	  for NAND flash board drivers requiring known, fixed BCH
  	  parameters.
  
  config BCH_CONST_M
  	int
  	range 5 15
  	help
  	  Constant value for Galois field order 'm'. If 'k' is the
  	  number of data bits to protect, 'm' should be chosen such
  	  that (k + m*t) <= 2**m - 1.
  	  Drivers should declare a default value for this symbol if
  	  they select option BCH_CONST_PARAMS.
  
  config BCH_CONST_T
  	int
  	help
  	  Constant value for error correction capability in bits 't'.
  	  Drivers should declare a default value for this symbol if
  	  they select option BCH_CONST_PARAMS.
  
  #
f7704347a   David S. Miller   [PKT_SCHED]: Make...
368
369
  # Textsearch support is select'ed if needed
  #
2de4ff7bd   Thomas Graf   [LIB]: Textsearch...
370
  config TEXTSEARCH
6341e62b2   Christoph Jaeger   kconfig: use bool...
371
  	bool
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
372

df3fb93ad   Thomas Graf   [LIB]: Knuth-Morr...
373
  config TEXTSEARCH_KMP
f7704347a   David S. Miller   [PKT_SCHED]: Make...
374
  	tristate
df3fb93ad   Thomas Graf   [LIB]: Knuth-Morr...
375

8082e4ed0   Pablo Neira Ayuso   [LIB]: Boyer-Moor...
376
  config TEXTSEARCH_BM
29cb9f9c5   David S. Miller   [LIB]: Make TEXTS...
377
  	tristate
8082e4ed0   Pablo Neira Ayuso   [LIB]: Boyer-Moor...
378

6408f79cc   Thomas Graf   [LIB]: Naive fini...
379
  config TEXTSEARCH_FSM
f7704347a   David S. Miller   [PKT_SCHED]: Make...
380
  	tristate
6408f79cc   Thomas Graf   [LIB]: Naive fini...
381

5db53f3e8   Joern Engel   [LogFS] add new f...
382
  config BTREE
6341e62b2   Christoph Jaeger   kconfig: use bool...
383
  	bool
5db53f3e8   Joern Engel   [LogFS] add new f...
384

a88cc108f   Chris Wilson   lib: Export inter...
385
  config INTERVAL_TREE
6341e62b2   Christoph Jaeger   kconfig: use bool...
386
  	bool
a88cc108f   Chris Wilson   lib: Export inter...
387
388
389
390
391
392
393
  	help
  	  Simple, embeddable, interval-tree. Can find the start of an
  	  overlapping range in log(n) time and then iterate over all
  	  overlapping nodes. The algorithm is implemented as an
  	  augmented rbtree.
  
  	  See:
14bbe3e33   Matthew Wilcox (Oracle)   docs: Add rbtree ...
394
  		Documentation/core-api/rbtree.rst
a88cc108f   Chris Wilson   lib: Export inter...
395
396
  
  	  for more information.
02c02bf12   Matthew Wilcox   xarray: Change de...
397
  config XARRAY_MULTI
57578c2ea   Matthew Wilcox   raxix-tree: intro...
398
  	bool
02c02bf12   Matthew Wilcox   xarray: Change de...
399
400
401
  	help
  	  Support entries which occupy multiple consecutive indices in the
  	  XArray.
57578c2ea   Matthew Wilcox   raxix-tree: intro...
402

3cb989501   David Howells   Add a generic ass...
403
404
405
406
407
408
409
410
411
  config ASSOCIATIVE_ARRAY
  	bool
  	help
  	  Generic associative array.  Can be searched and iterated over whilst
  	  it is being modified.  It is also reasonably quick to search and
  	  modify.  The algorithms are non-recursive, and the trees are highly
  	  capacious.
  
  	  See:
5fb94e9ca   Mauro Carvalho Chehab   docs: Fix some br...
412
  		Documentation/core-api/assoc_array.rst
3cb989501   David Howells   Add a generic ass...
413
414
  
  	  for more information.
5ea817699   Al Viro   [PATCH] sort the ...
415
  config HAS_IOMEM
6341e62b2   Christoph Jaeger   kconfig: use bool...
416
  	bool
5ea817699   Al Viro   [PATCH] sort the ...
417
418
  	depends on !NO_IOMEM
  	default y
ce816fa88   Uwe Kleine-König   Kconfig: rename H...
419
  config HAS_IOPORT_MAP
6341e62b2   Christoph Jaeger   kconfig: use bool...
420
  	bool
ce816fa88   Uwe Kleine-König   Kconfig: rename H...
421
  	depends on HAS_IOMEM && !NO_IOPORT_MAP
ee36c2bf8   Al Viro   [PATCH] uml probl...
422
  	default y
cf65a0f6f   Christoph Hellwig   dma-mapping: move...
423
  source "kernel/dma/Kconfig"
411f0f3ed   Heiko Carstens   Introduce CONFIG_...
424

e80a0af47   Bart Van Assche   lib/scatterlist: ...
425
426
427
  config SGL_ALLOC
  	bool
  	default n
a4ce5a48d   Christoph Hellwig   iommu-helper: mov...
428
429
  config IOMMU_HELPER
  	bool
928923c76   Geert Uytterhoeven   Introduce CONFIG_...
430
431
  config CHECK_SIGNATURE
  	bool
aab46da05   Rusty Russell   cpumask: Add CONF...
432
433
434
435
436
437
  config CPUMASK_OFFSTACK
  	bool "Force CPU masks off stack" if DEBUG_PER_CPU_MAPS
  	help
  	  Use dynamic allocation for cpumask_var_t, instead of putting
  	  them on the stack.  This is a bit more expensive, but avoids
  	  stack overflow.
c39649c33   Ben Hutchings   lib: cpu_rmap: CP...
438
439
440
  config CPU_RMAP
  	bool
  	depends on SMP
75957ba36   Tom Herbert   dql: Dynamic queu...
441
442
  config DQL
  	bool
b01250856   George Spelvin   lib: add lib/glob.c
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
  config GLOB
  	bool
  #	This actually supports modular compilation, but the module overhead
  #	is ridiculous for the amount of code involved.	Until an out-of-tree
  #	driver asks for it, we'll just link it directly it into the kernel
  #	when required.  Since we're ignoring out-of-tree users,	there's also
  #	no need bother prompting for a manual decision:
  #	prompt "glob_match() function"
  	help
  	  This option provides a glob_match function for performing
  	  simple text pattern matching.  It originated in the ATA code
  	  to blacklist particular drive models, but other device drivers
  	  may need similar functionality.
  
  	  All drivers in the Linux kernel tree that require this function
  	  should automatically select this option.  Say N unless you
  	  are compiling an out-of tree driver which tells you that it
  	  depends on this.
5f9be8248   George Spelvin   lib/glob.c: add C...
461
  config GLOB_SELFTEST
ba95b045e   Geert Uytterhoeven   lib: add module s...
462
  	tristate "glob self-test on init"
5f9be8248   George Spelvin   lib/glob.c: add C...
463
464
465
466
467
468
469
470
471
472
  	depends on GLOB
  	help
  	  This option enables a simple self-test of the glob_match
  	  function on startup.	It is primarily useful for people
  	  working on the code to ensure they haven't introduced any
  	  regressions.
  
  	  It only adds a little bit of code and slows kernel boot (or
  	  module load) by a small amount, so you're welcome to play with
  	  it, but you probably don't need it.
e9cc8bdda   Geert Uytterhoeven   netlink: Move net...
473
474
475
476
477
  #
  # Netlink attribute parsing support is select'ed if needed
  #
  config NLATTR
  	bool
09d4e0edd   Paul Mackerras   lib: Provide gene...
478
479
480
481
482
  #
  # Generic 64-bit atomic support is selected if needed
  #
  config GENERIC_ATOMIC64
         bool
b411b3637   Philipp Reisner   The DRBD driver
483
484
  config LRU_CACHE
  	tristate
c6df4b17c   David Miller   lib: Fix multiple...
485
486
  config CLZ_TAB
  	bool
511cbce2f   Christoph Hellwig   irq_poll: make bl...
487
488
489
490
  config IRQ_POLL
  	bool "IRQ polling library"
  	help
  	  Helper library to poll interrupt mitigation using polling.
d9c46b184   Dmitry Kasatkin   crypto: GnuPG bas...
491
  config MPILIB
2e5f094b9   Dmitry Kasatkin   lib: Removed MPIL...
492
  	tristate
c6df4b17c   David Miller   lib: Fix multiple...
493
  	select CLZ_TAB
d9c46b184   Dmitry Kasatkin   crypto: GnuPG bas...
494
495
496
497
  	help
  	  Multiprecision maths library from GnuPG.
  	  It is used to implement RSA digital signature verification,
  	  which is used by IMA/EVM digital signature extension.
5e8898e97   Dmitry Kasatkin   lib: digital sign...
498
  config SIGNATURE
2e5f094b9   Dmitry Kasatkin   lib: Removed MPIL...
499
  	tristate
0d1f64f60   Dmitry Kasatkin   digsig: make cryp...
500
501
  	depends on KEYS
  	select CRYPTO
be440ec77   Dmitry Kasatkin   lib: digital sign...
502
  	select CRYPTO_SHA1
051dbb918   Dmitry Kasatkin   crypto: digital s...
503
504
505
506
  	select MPILIB
  	help
  	  Digital signature verification. Currently only RSA is supported.
  	  Implementation is done using GnuPG MPI library
4f75da366   Tal Gilboa   linux/dim: Move i...
507
  config DIMLIB
424adc329   Uwe Kleine-König   dimlib: make DIML...
508
  	bool
4f75da366   Tal Gilboa   linux/dim: Move i...
509
510
  	help
  	  Dynamic Interrupt Moderation library.
991ad2b24   Randy Dunlap   lib: dimlib: fix ...
511
  	  Implements an algorithm for dynamically changing CQ moderation values
4f75da366   Tal Gilboa   linux/dim: Move i...
512
  	  according to run time performance.
ab2538398   David Daney   of/lib: Allow scr...
513
514
515
516
517
  #
  # libfdt files, only selected if needed.
  #
  config LIBFDT
  	bool
a77ad6ea0   David Howells   X.509: Implement ...
518
519
520
521
  config OID_REGISTRY
  	tristate
  	help
  	  Enable fast lookup object identifier registry.
0635eb8a5   Matthew Garrett   Move utf16 functi...
522
  config UCS2_STRING
68d4b3dfc   Krzysztof Kozlowski   lib/: fix Kconfig...
523
  	tristate
0635eb8a5   Matthew Garrett   Move utf16 functi...
524

00b26474c   Vincenzo Frascino   lib/vdso: Provide...
525
526
527
528
  #
  # generic vdso
  #
  source "lib/vdso/Kconfig"
ee89bd6bc   Geert Uytterhoeven   lib: Move fonts f...
529
  source "lib/fonts/Kconfig"
f8bcbe62a   Robert Jarzmik   lib: scatterlist:...
530
531
532
  config SG_SPLIT
  	def_bool n
  	help
7f7e92f75   Geert Uytterhoeven   lib: scatterlist:...
533
534
535
  	 Provides a helper to split scatterlists into chunks, each chunk being
  	 a scatterlist. This should be selected by a driver or an API which
  	 whishes to split a scatterlist amongst multiple DMA channels.
f8bcbe62a   Robert Jarzmik   lib: scatterlist:...
536

9b1d6c895   Ming Lin   lib: scatterlist:...
537
538
539
540
541
542
  config SG_POOL
  	def_bool n
  	help
  	 Provides a helper to allocate chained scatterlists. This should be
  	 selected by a driver or an API which whishes to allocate chained
  	 scatterlist.
308c09f17   Laura Abbott   lib/scatterlist: ...
543
544
545
  #
  # sg chaining option
  #
7c703e54c   Christoph Hellwig   arch: switch the ...
546
  config ARCH_NO_SG_CHAIN
308c09f17   Laura Abbott   lib/scatterlist: ...
547
  	def_bool n
61031952f   Ross Zwisler   arch, x86: pmem a...
548
549
  config ARCH_HAS_PMEM_API
  	bool
33dd70752   Dan Williams   lib: Uplevel the ...
550
551
  config MEMREGION
  	bool
9ffc1d19f   Dan Williams   mm/memremap_pages...
552
553
  config ARCH_HAS_MEMREMAP_COMPAT_ALIGN
  	bool
bd79f9475   Christoph Hellwig   asm-generic: prov...
554
555
556
  # use memcpy to implement user copies for nommu architectures
  config UACCESS_MEMCPY
  	bool
0aed55af8   Dan Williams   x86, uaccess: int...
557
558
  config ARCH_HAS_UACCESS_FLUSHCACHE
  	bool
ec6347bb4   Dan Williams   x86, powerpc: Ren...
559
560
561
562
563
564
  # arch has a concept of a recoverable synchronous exception due to a
  # memory-read error like x86 machine-check or ARM data-abort, and
  # implements copy_mc_to_{user,kernel} to abort and report
  # 'bytes-transferred' if that exception fires when accessing the source
  # buffer.
  config ARCH_HAS_COPY_MC
522239b44   Dan Williams   uio, lib: Fix CON...
565
  	bool
214d8ca6e   Thomas Gleixner   stacktrace: Provi...
566
567
568
  # Temporary. Goes away when all archs are cleaned up
  config ARCH_STACKWALK
         bool
cd11016e5   Alexander Potapenko   mm, kasan: stackd...
569
570
571
  config STACKDEPOT
  	bool
  	select STACKTRACE
88459642c   Omar Sandoval   blk-mq: abstract ...
572
573
  config SBITMAP
  	bool
44091d29f   Jiri Pirko   lib: Introduce pr...
574
  config PARMAN
9d25af69b   Geert Uytterhoeven   lib: Allow compil...
575
  	tristate "parman" if COMPILE_TEST
44091d29f   Jiri Pirko   lib: Introduce pr...
576

3dfdecc6d   Randy Dunlap   lib/Kconfig: fix ...
577
578
  config OBJAGG
  	tristate "objagg" if COMPILE_TEST
03270c13c   Matthew Wilcox   lib/string.c: add...
579
  config STRING_SELFTEST
d6b28e099   Geert Uytterhoeven   lib: add module s...
580
  	tristate "Test string functions"
03270c13c   Matthew Wilcox   lib/string.c: add...
581

2de4ff7bd   Thomas Graf   [LIB]: Textsearch...
582
  endmenu
b35cd9884   Palmer Dabbelt   lib: Add shared c...
583

80b0ca98f   Christoph Hellwig   lib: provide a si...
584
585
  config GENERIC_IOREMAP
  	bool
e3d598056   Matt Redfearn   lib: Rename compi...
586
  config GENERIC_LIB_ASHLDI3
b35cd9884   Palmer Dabbelt   lib: Add shared c...
587
  	bool
e3d598056   Matt Redfearn   lib: Rename compi...
588
  config GENERIC_LIB_ASHRDI3
b35cd9884   Palmer Dabbelt   lib: Add shared c...
589
  	bool
e3d598056   Matt Redfearn   lib: Rename compi...
590
  config GENERIC_LIB_LSHRDI3
b35cd9884   Palmer Dabbelt   lib: Add shared c...
591
  	bool
e3d598056   Matt Redfearn   lib: Rename compi...
592
  config GENERIC_LIB_MULDI3
b35cd9884   Palmer Dabbelt   lib: Add shared c...
593
  	bool
e3d598056   Matt Redfearn   lib: Rename compi...
594
  config GENERIC_LIB_CMPDI2
b35cd9884   Palmer Dabbelt   lib: Add shared c...
595
  	bool
e3d598056   Matt Redfearn   lib: Rename compi...
596
  config GENERIC_LIB_UCMPDI2
b35cd9884   Palmer Dabbelt   lib: Add shared c...
597
  	bool
b8265621f   Jacob Keller   Add pldmfw librar...
598
599
600
601
  
  config PLDMFW
  	bool
  	default n