blob: c4214a089ab1541bfe74b2f1000772c879d25c7c
1 | Kernel Parameters |
2 | ~~~~~~~~~~~~~~~~~ |
3 | |
4 | The following is a consolidated list of the kernel parameters as |
5 | implemented by the __setup(), core_param() and module_param() macros |
6 | and sorted into English Dictionary order (defined as ignoring all |
7 | punctuation and sorting digits before letters in a case insensitive |
8 | manner), and with descriptions where known. |
9 | |
10 | The kernel parses parameters from the kernel command line up to "--"; |
11 | if it doesn't recognize a parameter and it doesn't contain a '.', the |
12 | parameter gets passed to init: parameters with '=' go into init's |
13 | environment, others are passed as command line arguments to init. |
14 | Everything after "--" is passed as an argument to init. |
15 | |
16 | Module parameters can be specified in two ways: via the kernel command |
17 | line with a module name prefix, or via modprobe, e.g.: |
18 | |
19 | (kernel command line) usbcore.blinkenlights=1 |
20 | (modprobe command line) modprobe usbcore blinkenlights=1 |
21 | |
22 | Parameters for modules which are built into the kernel need to be |
23 | specified on the kernel command line. modprobe looks through the |
24 | kernel command line (/proc/cmdline) and collects module parameters |
25 | when it loads a module, so the kernel command line can be used for |
26 | loadable modules too. |
27 | |
28 | Hyphens (dashes) and underscores are equivalent in parameter names, so |
29 | log_buf_len=1M print-fatal-signals=1 |
30 | can also be entered as |
31 | log-buf-len=1M print_fatal_signals=1 |
32 | |
33 | Double-quotes can be used to protect spaces in values, e.g.: |
34 | param="spaces in here" |
35 | |
36 | cpu lists: |
37 | ---------- |
38 | |
39 | Some kernel parameters take a list of CPUs as a value, e.g. isolcpus, |
40 | nohz_full, irqaffinity, rcu_nocbs. The format of this list is: |
41 | |
42 | <cpu number>,...,<cpu number> |
43 | |
44 | or |
45 | |
46 | <cpu number>-<cpu number> |
47 | (must be a positive range in ascending order) |
48 | |
49 | or a mixture |
50 | |
51 | <cpu number>,...,<cpu number>-<cpu number> |
52 | |
53 | Note that for the special case of a range one can split the range into equal |
54 | sized groups and for each group use some amount from the beginning of that |
55 | group: |
56 | |
57 | <cpu number>-cpu number>:<used size>/<group size> |
58 | |
59 | For example one can add to the command line following parameter: |
60 | |
61 | isolcpus=1,2,10-20,100-2000:2/25 |
62 | |
63 | where the final item represents CPUs 100,101,125,126,150,151,... |
64 | |
65 | |
66 | |
67 | This document may not be entirely up to date and comprehensive. The command |
68 | "modinfo -p ${modulename}" shows a current list of all parameters of a loadable |
69 | module. Loadable modules, after being loaded into the running kernel, also |
70 | reveal their parameters in /sys/module/${modulename}/parameters/. Some of these |
71 | parameters may be changed at runtime by the command |
72 | "echo -n ${value} > /sys/module/${modulename}/parameters/${parm}". |
73 | |
74 | The parameters listed below are only valid if certain kernel build options were |
75 | enabled and if respective hardware is present. The text in square brackets at |
76 | the beginning of each description states the restrictions within which a |
77 | parameter is applicable: |
78 | |
79 | ACPI ACPI support is enabled. |
80 | AGP AGP (Accelerated Graphics Port) is enabled. |
81 | ALSA ALSA sound support is enabled. |
82 | APIC APIC support is enabled. |
83 | APM Advanced Power Management support is enabled. |
84 | ARM ARM architecture is enabled. |
85 | AVR32 AVR32 architecture is enabled. |
86 | AX25 Appropriate AX.25 support is enabled. |
87 | BLACKFIN Blackfin architecture is enabled. |
88 | CLK Common clock infrastructure is enabled. |
89 | CMA Contiguous Memory Area support is enabled. |
90 | DM Device mapper support is enabled. |
91 | DRM Direct Rendering Management support is enabled. |
92 | DYNAMIC_DEBUG Build in debug messages and enable them at runtime |
93 | EDD BIOS Enhanced Disk Drive Services (EDD) is enabled |
94 | EFI EFI Partitioning (GPT) is enabled |
95 | EIDE EIDE/ATAPI support is enabled. |
96 | EVM Extended Verification Module |
97 | FB The frame buffer device is enabled. |
98 | FTRACE Function tracing enabled. |
99 | GCOV GCOV profiling is enabled. |
100 | HW Appropriate hardware is enabled. |
101 | IA-64 IA-64 architecture is enabled. |
102 | IMA Integrity measurement architecture is enabled. |
103 | IOSCHED More than one I/O scheduler is enabled. |
104 | IP_PNP IP DHCP, BOOTP, or RARP is enabled. |
105 | IPV6 IPv6 support is enabled. |
106 | ISAPNP ISA PnP code is enabled. |
107 | ISDN Appropriate ISDN support is enabled. |
108 | JOY Appropriate joystick support is enabled. |
109 | KGDB Kernel debugger support is enabled. |
110 | KVM Kernel Virtual Machine support is enabled. |
111 | LIBATA Libata driver is enabled |
112 | LP Printer support is enabled. |
113 | LOOP Loopback device support is enabled. |
114 | M68k M68k architecture is enabled. |
115 | These options have more detailed description inside of |
116 | Documentation/m68k/kernel-options.txt. |
117 | MDA MDA console support is enabled. |
118 | MIPS MIPS architecture is enabled. |
119 | MOUSE Appropriate mouse support is enabled. |
120 | MSI Message Signaled Interrupts (PCI). |
121 | MTD MTD (Memory Technology Device) support is enabled. |
122 | NET Appropriate network support is enabled. |
123 | NUMA NUMA support is enabled. |
124 | NFS Appropriate NFS support is enabled. |
125 | OSS OSS sound support is enabled. |
126 | PV_OPS A paravirtualized kernel is enabled. |
127 | PARIDE The ParIDE (parallel port IDE) subsystem is enabled. |
128 | PARISC The PA-RISC architecture is enabled. |
129 | PCI PCI bus support is enabled. |
130 | PCIE PCI Express support is enabled. |
131 | PCMCIA The PCMCIA subsystem is enabled. |
132 | PNP Plug & Play support is enabled. |
133 | PPC PowerPC architecture is enabled. |
134 | PPT Parallel port support is enabled. |
135 | PS2 Appropriate PS/2 support is enabled. |
136 | RAM RAM disk support is enabled. |
137 | S390 S390 architecture is enabled. |
138 | SCSI Appropriate SCSI support is enabled. |
139 | A lot of drivers have their options described inside |
140 | the Documentation/scsi/ sub-directory. |
141 | SECURITY Different security models are enabled. |
142 | SELINUX SELinux support is enabled. |
143 | APPARMOR AppArmor support is enabled. |
144 | SERIAL Serial support is enabled. |
145 | SH SuperH architecture is enabled. |
146 | SMP The kernel is an SMP kernel. |
147 | SPARC Sparc architecture is enabled. |
148 | SWSUSP Software suspend (hibernation) is enabled. |
149 | SUSPEND System suspend states are enabled. |
150 | TPM TPM drivers are enabled. |
151 | TS Appropriate touchscreen support is enabled. |
152 | UMS USB Mass Storage support is enabled. |
153 | USB USB support is enabled. |
154 | USBHID USB Human Interface Device support is enabled. |
155 | V4L Video For Linux support is enabled. |
156 | VMMIO Driver for memory mapped virtio devices is enabled. |
157 | VGA The VGA console has been enabled. |
158 | VT Virtual terminal support is enabled. |
159 | WDT Watchdog support is enabled. |
160 | XT IBM PC/XT MFM hard disk support is enabled. |
161 | X86-32 X86-32, aka i386 architecture is enabled. |
162 | X86-64 X86-64 architecture is enabled. |
163 | More X86-64 boot options can be found in |
164 | Documentation/x86/x86_64/boot-options.txt . |
165 | X86 Either 32-bit or 64-bit x86 (same as X86-32+X86-64) |
166 | X86_UV SGI UV support is enabled. |
167 | XEN Xen support is enabled |
168 | |
169 | In addition, the following text indicates that the option: |
170 | |
171 | BUGS= Relates to possible processor bugs on the said processor. |
172 | KNL Is a kernel start-up parameter. |
173 | BOOT Is a boot loader parameter. |
174 | |
175 | Parameters denoted with BOOT are actually interpreted by the boot |
176 | loader, and have no meaning to the kernel directly. |
177 | Do not modify the syntax of boot loader parameters without extreme |
178 | need or coordination with <Documentation/x86/boot.txt>. |
179 | |
180 | There are also arch-specific kernel-parameters not documented here. |
181 | See for example <Documentation/x86/x86_64/boot-options.txt>. |
182 | |
183 | Note that ALL kernel parameters listed below are CASE SENSITIVE, and that |
184 | a trailing = on the name of any parameter states that that parameter will |
185 | be entered as an environment variable, whereas its absence indicates that |
186 | it will appear as a kernel argument readable via /proc/cmdline by programs |
187 | running once the system is up. |
188 | |
189 | The number of kernel parameters is not limited, but the length of the |
190 | complete command line (parameters including spaces etc.) is limited to |
191 | a fixed number of characters. This limit depends on the architecture |
192 | and is between 256 and 4096 characters. It is defined in the file |
193 | ./include/asm/setup.h as COMMAND_LINE_SIZE. |
194 | |
195 | Finally, the [KMG] suffix is commonly described after a number of kernel |
196 | parameter values. These 'K', 'M', and 'G' letters represent the _binary_ |
197 | multipliers 'Kilo', 'Mega', and 'Giga', equalling 2^10, 2^20, and 2^30 |
198 | bytes respectively. Such letter suffixes can also be entirely omitted. |
199 | |
200 | |
201 | acpi= [HW,ACPI,X86,ARM64] |
202 | Advanced Configuration and Power Interface |
203 | Format: { force | on | off | strict | noirq | rsdt | |
204 | copy_dsdt } |
205 | force -- enable ACPI if default was off |
206 | on -- enable ACPI but allow fallback to DT [arm64] |
207 | off -- disable ACPI if default was on |
208 | noirq -- do not use ACPI for IRQ routing |
209 | strict -- Be less tolerant of platforms that are not |
210 | strictly ACPI specification compliant. |
211 | rsdt -- prefer RSDT over (default) XSDT |
212 | copy_dsdt -- copy DSDT to memory |
213 | For ARM64, ONLY "acpi=off", "acpi=on" or "acpi=force" |
214 | are available |
215 | |
216 | See also Documentation/power/runtime_pm.txt, pci=noacpi |
217 | |
218 | acpi_apic_instance= [ACPI, IOAPIC] |
219 | Format: <int> |
220 | 2: use 2nd APIC table, if available |
221 | 1,0: use 1st APIC table |
222 | default: 0 |
223 | |
224 | acpi_backlight= [HW,ACPI] |
225 | acpi_backlight=vendor |
226 | acpi_backlight=video |
227 | If set to vendor, prefer vendor specific driver |
228 | (e.g. thinkpad_acpi, sony_acpi, etc.) instead |
229 | of the ACPI video.ko driver. |
230 | |
231 | acpi_force_32bit_fadt_addr |
232 | force FADT to use 32 bit addresses rather than the |
233 | 64 bit X_* addresses. Some firmware have broken 64 |
234 | bit addresses for force ACPI ignore these and use |
235 | the older legacy 32 bit addresses. |
236 | |
237 | acpica_no_return_repair [HW, ACPI] |
238 | Disable AML predefined validation mechanism |
239 | This mechanism can repair the evaluation result to make |
240 | the return objects more ACPI specification compliant. |
241 | This option is useful for developers to identify the |
242 | root cause of an AML interpreter issue when the issue |
243 | has something to do with the repair mechanism. |
244 | |
245 | acpi.debug_layer= [HW,ACPI,ACPI_DEBUG] |
246 | acpi.debug_level= [HW,ACPI,ACPI_DEBUG] |
247 | Format: <int> |
248 | CONFIG_ACPI_DEBUG must be enabled to produce any ACPI |
249 | debug output. Bits in debug_layer correspond to a |
250 | _COMPONENT in an ACPI source file, e.g., |
251 | #define _COMPONENT ACPI_PCI_COMPONENT |
252 | Bits in debug_level correspond to a level in |
253 | ACPI_DEBUG_PRINT statements, e.g., |
254 | ACPI_DEBUG_PRINT((ACPI_DB_INFO, ... |
255 | The debug_level mask defaults to "info". See |
256 | Documentation/acpi/debug.txt for more information about |
257 | debug layers and levels. |
258 | |
259 | Enable processor driver info messages: |
260 | acpi.debug_layer=0x20000000 |
261 | Enable PCI/PCI interrupt routing info messages: |
262 | acpi.debug_layer=0x400000 |
263 | Enable AML "Debug" output, i.e., stores to the Debug |
264 | object while interpreting AML: |
265 | acpi.debug_layer=0xffffffff acpi.debug_level=0x2 |
266 | Enable all messages related to ACPI hardware: |
267 | acpi.debug_layer=0x2 acpi.debug_level=0xffffffff |
268 | |
269 | Some values produce so much output that the system is |
270 | unusable. The "log_buf_len" parameter may be useful |
271 | if you need to capture more output. |
272 | |
273 | acpi_enforce_resources= [ACPI] |
274 | { strict | lax | no } |
275 | Check for resource conflicts between native drivers |
276 | and ACPI OperationRegions (SystemIO and SystemMemory |
277 | only). IO ports and memory declared in ACPI might be |
278 | used by the ACPI subsystem in arbitrary AML code and |
279 | can interfere with legacy drivers. |
280 | strict (default): access to resources claimed by ACPI |
281 | is denied; legacy drivers trying to access reserved |
282 | resources will fail to bind to device using them. |
283 | lax: access to resources claimed by ACPI is allowed; |
284 | legacy drivers trying to access reserved resources |
285 | will bind successfully but a warning message is logged. |
286 | no: ACPI OperationRegions are not marked as reserved, |
287 | no further checks are performed. |
288 | |
289 | acpi_force_table_verification [HW,ACPI] |
290 | Enable table checksum verification during early stage. |
291 | By default, this is disabled due to x86 early mapping |
292 | size limitation. |
293 | |
294 | acpi_irq_balance [HW,ACPI] |
295 | ACPI will balance active IRQs |
296 | default in APIC mode |
297 | |
298 | acpi_irq_nobalance [HW,ACPI] |
299 | ACPI will not move active IRQs (default) |
300 | default in PIC mode |
301 | |
302 | acpi_irq_isa= [HW,ACPI] If irq_balance, mark listed IRQs used by ISA |
303 | Format: <irq>,<irq>... |
304 | |
305 | acpi_irq_pci= [HW,ACPI] If irq_balance, clear listed IRQs for |
306 | use by PCI |
307 | Format: <irq>,<irq>... |
308 | |
309 | acpi_mask_gpe= [HW,ACPI] |
310 | Due to the existence of _Lxx/_Exx, some GPEs triggered |
311 | by unsupported hardware/firmware features can result in |
312 | GPE floodings that cannot be automatically disabled by |
313 | the GPE dispatcher. |
314 | This facility can be used to prevent such uncontrolled |
315 | GPE floodings. |
316 | Format: <int> |
317 | |
318 | acpi_no_auto_serialize [HW,ACPI] |
319 | Disable auto-serialization of AML methods |
320 | AML control methods that contain the opcodes to create |
321 | named objects will be marked as "Serialized" by the |
322 | auto-serialization feature. |
323 | This feature is enabled by default. |
324 | This option allows to turn off the feature. |
325 | |
326 | acpi_no_memhotplug [ACPI] Disable memory hotplug. Useful for kdump |
327 | kernels. |
328 | |
329 | acpi_no_static_ssdt [HW,ACPI] |
330 | Disable installation of static SSDTs at early boot time |
331 | By default, SSDTs contained in the RSDT/XSDT will be |
332 | installed automatically and they will appear under |
333 | /sys/firmware/acpi/tables. |
334 | This option turns off this feature. |
335 | Note that specifying this option does not affect |
336 | dynamic table installation which will install SSDT |
337 | tables to /sys/firmware/acpi/tables/dynamic. |
338 | |
339 | acpi_rsdp= [ACPI,EFI,KEXEC] |
340 | Pass the RSDP address to the kernel, mostly used |
341 | on machines running EFI runtime service to boot the |
342 | second kernel for kdump. |
343 | |
344 | acpi_os_name= [HW,ACPI] Tell ACPI BIOS the name of the OS |
345 | Format: To spoof as Windows 98: ="Microsoft Windows" |
346 | |
347 | acpi_rev_override [ACPI] Override the _REV object to return 5 (instead |
348 | of 2 which is mandated by ACPI 6) as the supported ACPI |
349 | specification revision (when using this switch, it may |
350 | be necessary to carry out a cold reboot _twice_ in a |
351 | row to make it take effect on the platform firmware). |
352 | |
353 | acpi_osi= [HW,ACPI] Modify list of supported OS interface strings |
354 | acpi_osi="string1" # add string1 |
355 | acpi_osi="!string2" # remove string2 |
356 | acpi_osi=!* # remove all strings |
357 | acpi_osi=! # disable all built-in OS vendor |
358 | strings |
359 | acpi_osi=!! # enable all built-in OS vendor |
360 | strings |
361 | acpi_osi= # disable all strings |
362 | |
363 | 'acpi_osi=!' can be used in combination with single or |
364 | multiple 'acpi_osi="string1"' to support specific OS |
365 | vendor string(s). Note that such command can only |
366 | affect the default state of the OS vendor strings, thus |
367 | it cannot affect the default state of the feature group |
368 | strings and the current state of the OS vendor strings, |
369 | specifying it multiple times through kernel command line |
370 | is meaningless. This command is useful when one do not |
371 | care about the state of the feature group strings which |
372 | should be controlled by the OSPM. |
373 | Examples: |
374 | 1. 'acpi_osi=! acpi_osi="Windows 2000"' is equivalent |
375 | to 'acpi_osi="Windows 2000" acpi_osi=!', they all |
376 | can make '_OSI("Windows 2000")' TRUE. |
377 | |
378 | 'acpi_osi=' cannot be used in combination with other |
379 | 'acpi_osi=' command lines, the _OSI method will not |
380 | exist in the ACPI namespace. NOTE that such command can |
381 | only affect the _OSI support state, thus specifying it |
382 | multiple times through kernel command line is also |
383 | meaningless. |
384 | Examples: |
385 | 1. 'acpi_osi=' can make 'CondRefOf(_OSI, Local1)' |
386 | FALSE. |
387 | |
388 | 'acpi_osi=!*' can be used in combination with single or |
389 | multiple 'acpi_osi="string1"' to support specific |
390 | string(s). Note that such command can affect the |
391 | current state of both the OS vendor strings and the |
392 | feature group strings, thus specifying it multiple times |
393 | through kernel command line is meaningful. But it may |
394 | still not able to affect the final state of a string if |
395 | there are quirks related to this string. This command |
396 | is useful when one want to control the state of the |
397 | feature group strings to debug BIOS issues related to |
398 | the OSPM features. |
399 | Examples: |
400 | 1. 'acpi_osi="Module Device" acpi_osi=!*' can make |
401 | '_OSI("Module Device")' FALSE. |
402 | 2. 'acpi_osi=!* acpi_osi="Module Device"' can make |
403 | '_OSI("Module Device")' TRUE. |
404 | 3. 'acpi_osi=! acpi_osi=!* acpi_osi="Windows 2000"' is |
405 | equivalent to |
406 | 'acpi_osi=!* acpi_osi=! acpi_osi="Windows 2000"' |
407 | and |
408 | 'acpi_osi=!* acpi_osi="Windows 2000" acpi_osi=!', |
409 | they all will make '_OSI("Windows 2000")' TRUE. |
410 | |
411 | acpi_pm_good [X86] |
412 | Override the pmtimer bug detection: force the kernel |
413 | to assume that this machine's pmtimer latches its value |
414 | and always returns good values. |
415 | |
416 | acpi_sci= [HW,ACPI] ACPI System Control Interrupt trigger mode |
417 | Format: { level | edge | high | low } |
418 | |
419 | acpi_skip_timer_override [HW,ACPI] |
420 | Recognize and ignore IRQ0/pin2 Interrupt Override. |
421 | For broken nForce2 BIOS resulting in XT-PIC timer. |
422 | |
423 | acpi_sleep= [HW,ACPI] Sleep options |
424 | Format: { s3_bios, s3_mode, s3_beep, s4_nohwsig, |
425 | old_ordering, nonvs, sci_force_enable } |
426 | See Documentation/power/video.txt for information on |
427 | s3_bios and s3_mode. |
428 | s3_beep is for debugging; it makes the PC's speaker beep |
429 | as soon as the kernel's real-mode entry point is called. |
430 | s4_nohwsig prevents ACPI hardware signature from being |
431 | used during resume from hibernation. |
432 | old_ordering causes the ACPI 1.0 ordering of the _PTS |
433 | control method, with respect to putting devices into |
434 | low power states, to be enforced (the ACPI 2.0 ordering |
435 | of _PTS is used by default). |
436 | nonvs prevents the kernel from saving/restoring the |
437 | ACPI NVS memory during suspend/hibernation and resume. |
438 | sci_force_enable causes the kernel to set SCI_EN directly |
439 | on resume from S1/S3 (which is against the ACPI spec, |
440 | but some broken systems don't work without it). |
441 | |
442 | acpi_use_timer_override [HW,ACPI] |
443 | Use timer override. For some broken Nvidia NF5 boards |
444 | that require a timer override, but don't have HPET |
445 | |
446 | add_efi_memmap [EFI; X86] Include EFI memory map in |
447 | kernel's map of available physical RAM. |
448 | |
449 | agp= [AGP] |
450 | { off | try_unsupported } |
451 | off: disable AGP support |
452 | try_unsupported: try to drive unsupported chipsets |
453 | (may crash computer or cause data corruption) |
454 | |
455 | ALSA [HW,ALSA] |
456 | See Documentation/sound/alsa/alsa-parameters.txt |
457 | |
458 | alignment= [KNL,ARM] |
459 | Allow the default userspace alignment fault handler |
460 | behaviour to be specified. Bit 0 enables warnings, |
461 | bit 1 enables fixups, and bit 2 sends a segfault. |
462 | |
463 | align_va_addr= [X86-64] |
464 | Align virtual addresses by clearing slice [14:12] when |
465 | allocating a VMA at process creation time. This option |
466 | gives you up to 3% performance improvement on AMD F15h |
467 | machines (where it is enabled by default) for a |
468 | CPU-intensive style benchmark, and it can vary highly in |
469 | a microbenchmark depending on workload and compiler. |
470 | |
471 | 32: only for 32-bit processes |
472 | 64: only for 64-bit processes |
473 | on: enable for both 32- and 64-bit processes |
474 | off: disable for both 32- and 64-bit processes |
475 | |
476 | alloc_snapshot [FTRACE] |
477 | Allocate the ftrace snapshot buffer on boot up when the |
478 | main buffer is allocated. This is handy if debugging |
479 | and you need to use tracing_snapshot() on boot up, and |
480 | do not want to use tracing_snapshot_alloc() as it needs |
481 | to be done where GFP_KERNEL allocations are allowed. |
482 | |
483 | amd_iommu= [HW,X86-64] |
484 | Pass parameters to the AMD IOMMU driver in the system. |
485 | Possible values are: |
486 | fullflush - enable flushing of IO/TLB entries when |
487 | they are unmapped. Otherwise they are |
488 | flushed before they will be reused, which |
489 | is a lot of faster |
490 | off - do not initialize any AMD IOMMU found in |
491 | the system |
492 | force_isolation - Force device isolation for all |
493 | devices. The IOMMU driver is not |
494 | allowed anymore to lift isolation |
495 | requirements as needed. This option |
496 | does not override iommu=pt |
497 | |
498 | amd_iommu_dump= [HW,X86-64] |
499 | Enable AMD IOMMU driver option to dump the ACPI table |
500 | for AMD IOMMU. With this option enabled, AMD IOMMU |
501 | driver will print ACPI tables for AMD IOMMU during |
502 | IOMMU initialization. |
503 | |
504 | amd_iommu_intr= [HW,X86-64] |
505 | Specifies one of the following AMD IOMMU interrupt |
506 | remapping modes: |
507 | legacy - Use legacy interrupt remapping mode. |
508 | vapic - Use virtual APIC mode, which allows IOMMU |
509 | to inject interrupts directly into guest. |
510 | This mode requires kvm-amd.avic=1. |
511 | (Default when IOMMU HW support is present.) |
512 | |
513 | amijoy.map= [HW,JOY] Amiga joystick support |
514 | Map of devices attached to JOY0DAT and JOY1DAT |
515 | Format: <a>,<b> |
516 | See also Documentation/input/joystick.txt |
517 | |
518 | analog.map= [HW,JOY] Analog joystick and gamepad support |
519 | Specifies type or capabilities of an analog joystick |
520 | connected to one of 16 gameports |
521 | Format: <type1>,<type2>,..<type16> |
522 | |
523 | apc= [HW,SPARC] |
524 | Power management functions (SPARCstation-4/5 + deriv.) |
525 | Format: noidle |
526 | Disable APC CPU standby support. SPARCstation-Fox does |
527 | not play well with APC CPU idle - disable it if you have |
528 | APC and your system crashes randomly. |
529 | |
530 | apic= [APIC,X86-32] Advanced Programmable Interrupt Controller |
531 | Change the output verbosity whilst booting |
532 | Format: { quiet (default) | verbose | debug } |
533 | Change the amount of debugging information output |
534 | when initialising the APIC and IO-APIC components. |
535 | |
536 | apic_extnmi= [APIC,X86] External NMI delivery setting |
537 | Format: { bsp (default) | all | none } |
538 | bsp: External NMI is delivered only to CPU 0 |
539 | all: External NMIs are broadcast to all CPUs as a |
540 | backup of CPU 0 |
541 | none: External NMI is masked for all CPUs. This is |
542 | useful so that a dump capture kernel won't be |
543 | shot down by NMI |
544 | |
545 | autoconf= [IPV6] |
546 | See Documentation/networking/ipv6.txt. |
547 | |
548 | show_lapic= [APIC,X86] Advanced Programmable Interrupt Controller |
549 | Limit apic dumping. The parameter defines the maximal |
550 | number of local apics being dumped. Also it is possible |
551 | to set it to "all" by meaning -- no limit here. |
552 | Format: { 1 (default) | 2 | ... | all }. |
553 | The parameter valid if only apic=debug or |
554 | apic=verbose is specified. |
555 | Example: apic=debug show_lapic=all |
556 | |
557 | apm= [APM] Advanced Power Management |
558 | See header of arch/x86/kernel/apm_32.c. |
559 | |
560 | arcrimi= [HW,NET] ARCnet - "RIM I" (entirely mem-mapped) cards |
561 | Format: <io>,<irq>,<nodeID> |
562 | |
563 | ataflop= [HW,M68k] |
564 | |
565 | atarimouse= [HW,MOUSE] Atari Mouse |
566 | |
567 | atkbd.extra= [HW] Enable extra LEDs and keys on IBM RapidAccess, |
568 | EzKey and similar keyboards |
569 | |
570 | atkbd.reset= [HW] Reset keyboard during initialization |
571 | |
572 | atkbd.set= [HW] Select keyboard code set |
573 | Format: <int> (2 = AT (default), 3 = PS/2) |
574 | |
575 | atkbd.scroll= [HW] Enable scroll wheel on MS Office and similar |
576 | keyboards |
577 | |
578 | atkbd.softraw= [HW] Choose between synthetic and real raw mode |
579 | Format: <bool> (0 = real, 1 = synthetic (default)) |
580 | |
581 | atkbd.softrepeat= [HW] |
582 | Use software keyboard repeat |
583 | |
584 | audit= [KNL] Enable the audit sub-system |
585 | Format: { "0" | "1" } (0 = disabled, 1 = enabled) |
586 | 0 - kernel audit is disabled and can not be enabled |
587 | until the next reboot |
588 | unset - kernel audit is initialized but disabled and |
589 | will be fully enabled by the userspace auditd. |
590 | 1 - kernel audit is initialized and partially enabled, |
591 | storing at most audit_backlog_limit messages in |
592 | RAM until it is fully enabled by the userspace |
593 | auditd. |
594 | Default: unset |
595 | |
596 | audit_backlog_limit= [KNL] Set the audit queue size limit. |
597 | Format: <int> (must be >=0) |
598 | Default: 64 |
599 | |
600 | bau= [X86_UV] Enable the BAU on SGI UV. The default |
601 | behavior is to disable the BAU (i.e. bau=0). |
602 | Format: { "0" | "1" } |
603 | 0 - Disable the BAU. |
604 | 1 - Enable the BAU. |
605 | unset - Disable the BAU. |
606 | |
607 | baycom_epp= [HW,AX25] |
608 | Format: <io>,<mode> |
609 | |
610 | baycom_par= [HW,AX25] BayCom Parallel Port AX.25 Modem |
611 | Format: <io>,<mode> |
612 | See header of drivers/net/hamradio/baycom_par.c. |
613 | |
614 | baycom_ser_fdx= [HW,AX25] |
615 | BayCom Serial Port AX.25 Modem (Full Duplex Mode) |
616 | Format: <io>,<irq>,<mode>[,<baud>] |
617 | See header of drivers/net/hamradio/baycom_ser_fdx.c. |
618 | |
619 | baycom_ser_hdx= [HW,AX25] |
620 | BayCom Serial Port AX.25 Modem (Half Duplex Mode) |
621 | Format: <io>,<irq>,<mode> |
622 | See header of drivers/net/hamradio/baycom_ser_hdx.c. |
623 | |
624 | blkdevparts= Manual partition parsing of block device(s) for |
625 | embedded devices based on command line input. |
626 | See Documentation/block/cmdline-partition.txt |
627 | |
628 | boot_delay= Milliseconds to delay each printk during boot. |
629 | Values larger than 10 seconds (10000) are changed to |
630 | no delay (0). |
631 | Format: integer |
632 | |
633 | bootmem_debug [KNL] Enable bootmem allocator debug messages. |
634 | |
635 | bert_disable [ACPI] |
636 | Disable BERT OS support on buggy BIOSes. |
637 | |
638 | bttv.card= [HW,V4L] bttv (bt848 + bt878 based grabber cards) |
639 | bttv.radio= Most important insmod options are available as |
640 | kernel args too. |
641 | bttv.pll= See Documentation/video4linux/bttv/Insmod-options |
642 | bttv.tuner= |
643 | |
644 | bulk_remove=off [PPC] This parameter disables the use of the pSeries |
645 | firmware feature for flushing multiple hpte entries |
646 | at a time. |
647 | |
648 | c101= [NET] Moxa C101 synchronous serial card |
649 | |
650 | cachesize= [BUGS=X86-32] Override level 2 CPU cache size detection. |
651 | Sometimes CPU hardware bugs make them report the cache |
652 | size incorrectly. The kernel will attempt work arounds |
653 | to fix known problems, but for some CPUs it is not |
654 | possible to determine what the correct size should be. |
655 | This option provides an override for these situations. |
656 | |
657 | ca_keys= [KEYS] This parameter identifies a specific key(s) on |
658 | the system trusted keyring to be used for certificate |
659 | trust validation. |
660 | format: { id:<keyid> | builtin } |
661 | |
662 | cca= [MIPS] Override the kernel pages' cache coherency |
663 | algorithm. Accepted values range from 0 to 7 |
664 | inclusive. See arch/mips/include/asm/pgtable-bits.h |
665 | for platform specific values (SB1, Loongson3 and |
666 | others). |
667 | |
668 | ccw_timeout_log [S390] |
669 | See Documentation/s390/CommonIO for details. |
670 | |
671 | cgroup_disable= [KNL] Disable a particular controller |
672 | Format: {name of the controller(s) to disable} |
673 | The effects of cgroup_disable=foo are: |
674 | - foo isn't auto-mounted if you mount all cgroups in |
675 | a single hierarchy |
676 | - foo isn't visible as an individually mountable |
677 | subsystem |
678 | {Currently only "memory" controller deal with this and |
679 | cut the overhead, others just disable the usage. So |
680 | only cgroup_disable=memory is actually worthy} |
681 | |
682 | cgroup_no_v1= [KNL] Disable one, multiple, all cgroup controllers in v1 |
683 | Format: { controller[,controller...] | "all" } |
684 | Like cgroup_disable, but only applies to cgroup v1; |
685 | the blacklisted controllers remain available in cgroup2. |
686 | |
687 | cgroup.memory= [KNL] Pass options to the cgroup memory controller. |
688 | Format: <string> |
689 | nosocket -- Disable socket memory accounting. |
690 | nokmem -- Disable kernel memory accounting. |
691 | |
692 | checkreqprot [SELINUX] Set initial checkreqprot flag value. |
693 | Format: { "0" | "1" } |
694 | See security/selinux/Kconfig help text. |
695 | 0 -- check protection applied by kernel (includes |
696 | any implied execute protection). |
697 | 1 -- check protection requested by application. |
698 | Default value is set via a kernel config option. |
699 | Value can be changed at runtime via |
700 | /selinux/checkreqprot. |
701 | |
702 | cio_ignore= [S390] |
703 | See Documentation/s390/CommonIO for details. |
704 | clk_ignore_unused |
705 | [CLK] |
706 | Prevents the clock framework from automatically gating |
707 | clocks that have not been explicitly enabled by a Linux |
708 | device driver but are enabled in hardware at reset or |
709 | by the bootloader/firmware. Note that this does not |
710 | force such clocks to be always-on nor does it reserve |
711 | those clocks in any way. This parameter is useful for |
712 | debug and development, but should not be needed on a |
713 | platform with proper driver support. For more |
714 | information, see Documentation/clk.txt. |
715 | |
716 | clock= [BUGS=X86-32, HW] gettimeofday clocksource override. |
717 | [Deprecated] |
718 | Forces specified clocksource (if available) to be used |
719 | when calculating gettimeofday(). If specified |
720 | clocksource is not available, it defaults to PIT. |
721 | Format: { pit | tsc | cyclone | pmtmr } |
722 | |
723 | clocksource= Override the default clocksource |
724 | Format: <string> |
725 | Override the default clocksource and use the clocksource |
726 | with the name specified. |
727 | Some clocksource names to choose from, depending on |
728 | the platform: |
729 | [all] jiffies (this is the base, fallback clocksource) |
730 | [ACPI] acpi_pm |
731 | [ARM] imx_timer1,OSTS,netx_timer,mpu_timer2, |
732 | pxa_timer,timer3,32k_counter,timer0_1 |
733 | [AVR32] avr32 |
734 | [X86-32] pit,hpet,tsc; |
735 | scx200_hrt on Geode; cyclone on IBM x440 |
736 | [MIPS] MIPS |
737 | [PARISC] cr16 |
738 | [S390] tod |
739 | [SH] SuperH |
740 | [SPARC64] tick |
741 | [X86-64] hpet,tsc |
742 | |
743 | clocksource.arm_arch_timer.evtstrm= |
744 | [ARM,ARM64] |
745 | Format: <bool> |
746 | Enable/disable the eventstream feature of the ARM |
747 | architected timer so that code using WFE-based polling |
748 | loops can be debugged more effectively on production |
749 | systems. |
750 | |
751 | clocksource.arm_arch_timer.fsl-a008585= |
752 | [ARM64] |
753 | Format: <bool> |
754 | Enable/disable the workaround of Freescale/NXP |
755 | erratum A-008585. This can be useful for KVM |
756 | guests, if the guest device tree doesn't show the |
757 | erratum. If unspecified, the workaround is |
758 | enabled based on the device tree. |
759 | |
760 | clearcpuid=BITNUM [X86] |
761 | Disable CPUID feature X for the kernel. See |
762 | arch/x86/include/asm/cpufeatures.h for the valid bit |
763 | numbers. Note the Linux specific bits are not necessarily |
764 | stable over kernel options, but the vendor specific |
765 | ones should be. |
766 | Also note that user programs calling CPUID directly |
767 | or using the feature without checking anything |
768 | will still see it. This just prevents it from |
769 | being used by the kernel or shown in /proc/cpuinfo. |
770 | Also note the kernel might malfunction if you disable |
771 | some critical bits. |
772 | |
773 | cma=nn[MG]@[start[MG][-end[MG]]] |
774 | [ARM,X86,KNL] |
775 | Sets the size of kernel global memory area for |
776 | contiguous memory allocations and optionally the |
777 | placement constraint by the physical address range of |
778 | memory allocations. A value of 0 disables CMA |
779 | altogether. For more information, see |
780 | include/linux/dma-contiguous.h |
781 | |
782 | cmo_free_hint= [PPC] Format: { yes | no } |
783 | Specify whether pages are marked as being inactive |
784 | when they are freed. This is used in CMO environments |
785 | to determine OS memory pressure for page stealing by |
786 | a hypervisor. |
787 | Default: yes |
788 | |
789 | coherent_pool=nn[KMG] [ARM,KNL] |
790 | Sets the size of memory pool for coherent, atomic dma |
791 | allocations, by default set to 256K. |
792 | |
793 | code_bytes [X86] How many bytes of object code to print |
794 | in an oops report. |
795 | Range: 0 - 8192 |
796 | Default: 64 |
797 | |
798 | com20020= [HW,NET] ARCnet - COM20020 chipset |
799 | Format: |
800 | <io>[,<irq>[,<nodeID>[,<backplane>[,<ckp>[,<timeout>]]]]] |
801 | |
802 | com90io= [HW,NET] ARCnet - COM90xx chipset (IO-mapped buffers) |
803 | Format: <io>[,<irq>] |
804 | |
805 | com90xx= [HW,NET] |
806 | ARCnet - COM90xx chipset (memory-mapped buffers) |
807 | Format: <io>[,<irq>[,<memstart>]] |
808 | |
809 | condev= [HW,S390] console device |
810 | conmode= |
811 | |
812 | console= [KNL] Output console device and options. |
813 | |
814 | tty<n> Use the virtual console device <n>. |
815 | |
816 | ttyS<n>[,options] |
817 | ttyUSB0[,options] |
818 | Use the specified serial port. The options are of |
819 | the form "bbbbpnf", where "bbbb" is the baud rate, |
820 | "p" is parity ("n", "o", or "e"), "n" is number of |
821 | bits, and "f" is flow control ("r" for RTS or |
822 | omit it). Default is "9600n8". |
823 | |
824 | See Documentation/serial-console.txt for more |
825 | information. See |
826 | Documentation/networking/netconsole.txt for an |
827 | alternative. |
828 | |
829 | uart[8250],io,<addr>[,options] |
830 | uart[8250],mmio,<addr>[,options] |
831 | uart[8250],mmio16,<addr>[,options] |
832 | uart[8250],mmio32,<addr>[,options] |
833 | uart[8250],0x<addr>[,options] |
834 | Start an early, polled-mode console on the 8250/16550 |
835 | UART at the specified I/O port or MMIO address, |
836 | switching to the matching ttyS device later. |
837 | MMIO inter-register address stride is either 8-bit |
838 | (mmio), 16-bit (mmio16), or 32-bit (mmio32). |
839 | If none of [io|mmio|mmio16|mmio32], <addr> is assumed |
840 | to be equivalent to 'mmio'. 'options' are specified in |
841 | the same format described for ttyS above; if unspecified, |
842 | the h/w is not re-initialized. |
843 | |
844 | hvc<n> Use the hypervisor console device <n>. This is for |
845 | both Xen and PowerPC hypervisors. |
846 | |
847 | If the device connected to the port is not a TTY but a braille |
848 | device, prepend "brl," before the device type, for instance |
849 | console=brl,ttyS0 |
850 | For now, only VisioBraille is supported. |
851 | |
852 | consoleblank= [KNL] The console blank (screen saver) timeout in |
853 | seconds. Defaults to 10*60 = 10mins. A value of 0 |
854 | disables the blank timer. |
855 | |
856 | coredump_filter= |
857 | [KNL] Change the default value for |
858 | /proc/<pid>/coredump_filter. |
859 | See also Documentation/filesystems/proc.txt. |
860 | |
861 | cpuidle.off=1 [CPU_IDLE] |
862 | disable the cpuidle sub-system |
863 | |
864 | cpu_init_udelay=N |
865 | [X86] Delay for N microsec between assert and de-assert |
866 | of APIC INIT to start processors. This delay occurs |
867 | on every CPU online, such as boot, and resume from suspend. |
868 | Default: 10000 |
869 | |
870 | cpcihp_generic= [HW,PCI] Generic port I/O CompactPCI driver |
871 | Format: |
872 | <first_slot>,<last_slot>,<port>,<enum_bit>[,<debug>] |
873 | |
874 | crashkernel=size[KMG][@offset[KMG]] |
875 | [KNL] Using kexec, Linux can switch to a 'crash kernel' |
876 | upon panic. This parameter reserves the physical |
877 | memory region [offset, offset + size] for that kernel |
878 | image. If '@offset' is omitted, then a suitable offset |
879 | is selected automatically. Check |
880 | Documentation/kdump/kdump.txt for further details. |
881 | |
882 | crashkernel=range1:size1[,range2:size2,...][@offset] |
883 | [KNL] Same as above, but depends on the memory |
884 | in the running system. The syntax of range is |
885 | start-[end] where start and end are both |
886 | a memory unit (amount[KMG]). See also |
887 | Documentation/kdump/kdump.txt for an example. |
888 | |
889 | crashkernel=size[KMG],high |
890 | [KNL, x86_64] range could be above 4G. Allow kernel |
891 | to allocate physical memory region from top, so could |
892 | be above 4G if system have more than 4G ram installed. |
893 | Otherwise memory region will be allocated below 4G, if |
894 | available. |
895 | It will be ignored if crashkernel=X is specified. |
896 | crashkernel=size[KMG],low |
897 | [KNL, x86_64] range under 4G. When crashkernel=X,high |
898 | is passed, kernel could allocate physical memory region |
899 | above 4G, that cause second kernel crash on system |
900 | that require some amount of low memory, e.g. swiotlb |
901 | requires at least 64M+32K low memory, also enough extra |
902 | low memory is needed to make sure DMA buffers for 32-bit |
903 | devices won't run out. Kernel would try to allocate at |
904 | at least 256M below 4G automatically. |
905 | This one let user to specify own low range under 4G |
906 | for second kernel instead. |
907 | 0: to disable low allocation. |
908 | It will be ignored when crashkernel=X,high is not used |
909 | or memory reserved is below 4G. |
910 | |
911 | cryptomgr.notests |
912 | [KNL] Disable crypto self-tests |
913 | |
914 | cs89x0_dma= [HW,NET] |
915 | Format: <dma> |
916 | |
917 | cs89x0_media= [HW,NET] |
918 | Format: { rj45 | aui | bnc } |
919 | |
920 | dasd= [HW,NET] |
921 | See header of drivers/s390/block/dasd_devmap.c. |
922 | |
923 | db9.dev[2|3]= [HW,JOY] Multisystem joystick support via parallel port |
924 | (one device per port) |
925 | Format: <port#>,<type> |
926 | See also Documentation/input/joystick-parport.txt |
927 | |
928 | ddebug_query= [KNL,DYNAMIC_DEBUG] Enable debug messages at early boot |
929 | time. See Documentation/dynamic-debug-howto.txt for |
930 | details. Deprecated, see dyndbg. |
931 | |
932 | debug [KNL] Enable kernel debugging (events log level). |
933 | |
934 | debug_locks_verbose= |
935 | [KNL] verbose self-tests |
936 | Format=<0|1> |
937 | Print debugging info while doing the locking API |
938 | self-tests. |
939 | We default to 0 (no extra messages), setting it to |
940 | 1 will print _a lot_ more information - normally |
941 | only useful to kernel developers. |
942 | |
943 | debug_objects [KNL] Enable object debugging |
944 | |
945 | no_debug_objects |
946 | [KNL] Disable object debugging |
947 | |
948 | debug_guardpage_minorder= |
949 | [KNL] When CONFIG_DEBUG_PAGEALLOC is set, this |
950 | parameter allows control of the order of pages that will |
951 | be intentionally kept free (and hence protected) by the |
952 | buddy allocator. Bigger value increase the probability |
953 | of catching random memory corruption, but reduce the |
954 | amount of memory for normal system use. The maximum |
955 | possible value is MAX_ORDER/2. Setting this parameter |
956 | to 1 or 2 should be enough to identify most random |
957 | memory corruption problems caused by bugs in kernel or |
958 | driver code when a CPU writes to (or reads from) a |
959 | random memory location. Note that there exists a class |
960 | of memory corruptions problems caused by buggy H/W or |
961 | F/W or by drivers badly programing DMA (basically when |
962 | memory is written at bus level and the CPU MMU is |
963 | bypassed) which are not detectable by |
964 | CONFIG_DEBUG_PAGEALLOC, hence this option will not help |
965 | tracking down these problems. |
966 | |
967 | debug_pagealloc= |
968 | [KNL] When CONFIG_DEBUG_PAGEALLOC is set, this |
969 | parameter enables the feature at boot time. In |
970 | default, it is disabled. We can avoid allocating huge |
971 | chunk of memory for debug pagealloc if we don't enable |
972 | it at boot time and the system will work mostly same |
973 | with the kernel built without CONFIG_DEBUG_PAGEALLOC. |
974 | on: enable the feature |
975 | |
976 | debugpat [X86] Enable PAT debugging |
977 | |
978 | decnet.addr= [HW,NET] |
979 | Format: <area>[,<node>] |
980 | See also Documentation/networking/decnet.txt. |
981 | |
982 | default_hugepagesz= |
983 | [same as hugepagesz=] The size of the default |
984 | HugeTLB page size. This is the size represented by |
985 | the legacy /proc/ hugepages APIs, used for SHM, and |
986 | default size when mounting hugetlbfs filesystems. |
987 | Defaults to the default architecture's huge page size |
988 | if not specified. |
989 | |
990 | dhash_entries= [KNL] |
991 | Set number of hash buckets for dentry cache. |
992 | |
993 | disable_1tb_segments [PPC] |
994 | Disables the use of 1TB hash page table segments. This |
995 | causes the kernel to fall back to 256MB segments which |
996 | can be useful when debugging issues that require an SLB |
997 | miss to occur. |
998 | |
999 | disable= [IPV6] |
1000 | See Documentation/networking/ipv6.txt. |
1001 | |
1002 | disable_radix [PPC] |
1003 | Disable RADIX MMU mode on POWER9 |
1004 | |
1005 | disable_cpu_apicid= [X86,APIC,SMP] |
1006 | Format: <int> |
1007 | The number of initial APIC ID for the |
1008 | corresponding CPU to be disabled at boot, |
1009 | mostly used for the kdump 2nd kernel to |
1010 | disable BSP to wake up multiple CPUs without |
1011 | causing system reset or hang due to sending |
1012 | INIT from AP to BSP. |
1013 | |
1014 | disable_ddw [PPC/PSERIES] |
1015 | Disable Dynamic DMA Window support. Use this if |
1016 | to workaround buggy firmware. |
1017 | |
1018 | disable_ipv6= [IPV6] |
1019 | See Documentation/networking/ipv6.txt. |
1020 | |
1021 | disable_mtrr_cleanup [X86] |
1022 | The kernel tries to adjust MTRR layout from continuous |
1023 | to discrete, to make X server driver able to add WB |
1024 | entry later. This parameter disables that. |
1025 | |
1026 | disable_mtrr_trim [X86, Intel and AMD only] |
1027 | By default the kernel will trim any uncacheable |
1028 | memory out of your available memory pool based on |
1029 | MTRR settings. This parameter disables that behavior, |
1030 | possibly causing your machine to run very slowly. |
1031 | |
1032 | disable_timer_pin_1 [X86] |
1033 | Disable PIN 1 of APIC timer |
1034 | Can be useful to work around chipset bugs. |
1035 | |
1036 | dis_ucode_ldr [X86] Disable the microcode loader. |
1037 | |
1038 | dm= [DM] Allows early creation of a device-mapper device. |
1039 | See Documentation/device-mapper/boot.txt. |
1040 | |
1041 | dmasound= [HW,OSS] Sound subsystem buff |
1042 | |
1043 | dma_debug=off If the kernel is compiled with DMA_API_DEBUG support, |
1044 | this option disables the debugging code at boot. |
1045 | |
1046 | dma_debug_entries=<number> |
1047 | This option allows to tune the number of preallocated |
1048 | entries for DMA-API debugging code. One entry is |
1049 | required per DMA-API allocation. Use this if the |
1050 | DMA-API debugging code disables itself because the |
1051 | architectural default is too low. |
1052 | |
1053 | dma_debug_driver=<driver_name> |
1054 | With this option the DMA-API debugging driver |
1055 | filter feature can be enabled at boot time. Just |
1056 | pass the driver to filter for as the parameter. |
1057 | The filter can be disabled or changed to another |
1058 | driver later using sysfs. |
1059 | |
1060 | drm_kms_helper.edid_firmware=[<connector>:]<file>[,[<connector>:]<file>] |
1061 | Broken monitors, graphic adapters, KVMs and EDIDless |
1062 | panels may send no or incorrect EDID data sets. |
1063 | This parameter allows to specify an EDID data sets |
1064 | in the /lib/firmware directory that are used instead. |
1065 | Generic built-in EDID data sets are used, if one of |
1066 | edid/1024x768.bin, edid/1280x1024.bin, |
1067 | edid/1680x1050.bin, or edid/1920x1080.bin is given |
1068 | and no file with the same name exists. Details and |
1069 | instructions how to build your own EDID data are |
1070 | available in Documentation/EDID/HOWTO.txt. An EDID |
1071 | data set will only be used for a particular connector, |
1072 | if its name and a colon are prepended to the EDID |
1073 | name. Each connector may use a unique EDID data |
1074 | set by separating the files with a comma. An EDID |
1075 | data set with no connector name will be used for |
1076 | any connectors not explicitly specified. |
1077 | |
1078 | dscc4.setup= [NET] |
1079 | |
1080 | dyndbg[="val"] [KNL,DYNAMIC_DEBUG] |
1081 | module.dyndbg[="val"] |
1082 | Enable debug messages at boot time. See |
1083 | Documentation/dynamic-debug-howto.txt for details. |
1084 | |
1085 | nompx [X86] Disables Intel Memory Protection Extensions. |
1086 | See Documentation/x86/intel_mpx.txt for more |
1087 | information about the feature. |
1088 | |
1089 | nopku [X86] Disable Memory Protection Keys CPU feature found |
1090 | in some Intel CPUs. |
1091 | |
1092 | module.async_probe [KNL] |
1093 | Enable asynchronous probe on this module. |
1094 | |
1095 | early_ioremap_debug [KNL] |
1096 | Enable debug messages in early_ioremap support. This |
1097 | is useful for tracking down temporary early mappings |
1098 | which are not unmapped. |
1099 | |
1100 | earlycon= [KNL] Output early console device and options. |
1101 | |
1102 | When used with no options, the early console is |
1103 | determined by the stdout-path property in device |
1104 | tree's chosen node. |
1105 | |
1106 | cdns,<addr>[,options] |
1107 | Start an early, polled-mode console on a Cadence |
1108 | (xuartps) serial port at the specified address. Only |
1109 | supported option is baud rate. If baud rate is not |
1110 | specified, the serial port must already be setup and |
1111 | configured. |
1112 | |
1113 | uart[8250],io,<addr>[,options] |
1114 | uart[8250],mmio,<addr>[,options] |
1115 | uart[8250],mmio32,<addr>[,options] |
1116 | uart[8250],mmio32be,<addr>[,options] |
1117 | uart[8250],0x<addr>[,options] |
1118 | Start an early, polled-mode console on the 8250/16550 |
1119 | UART at the specified I/O port or MMIO address. |
1120 | MMIO inter-register address stride is either 8-bit |
1121 | (mmio) or 32-bit (mmio32 or mmio32be). |
1122 | If none of [io|mmio|mmio32|mmio32be], <addr> is assumed |
1123 | to be equivalent to 'mmio'. 'options' are specified |
1124 | in the same format described for "console=ttyS<n>"; if |
1125 | unspecified, the h/w is not initialized. |
1126 | |
1127 | pl011,<addr> |
1128 | pl011,mmio32,<addr> |
1129 | Start an early, polled-mode console on a pl011 serial |
1130 | port at the specified address. The pl011 serial port |
1131 | must already be setup and configured. Options are not |
1132 | yet supported. If 'mmio32' is specified, then only |
1133 | the driver will use only 32-bit accessors to read/write |
1134 | the device registers. |
1135 | |
1136 | meson,<addr> |
1137 | Start an early, polled-mode console on a meson serial |
1138 | port at the specified address. The serial port must |
1139 | already be setup and configured. Options are not yet |
1140 | supported. |
1141 | |
1142 | msm_serial,<addr> |
1143 | Start an early, polled-mode console on an msm serial |
1144 | port at the specified address. The serial port |
1145 | must already be setup and configured. Options are not |
1146 | yet supported. |
1147 | |
1148 | msm_serial_dm,<addr> |
1149 | Start an early, polled-mode console on an msm serial |
1150 | dm port at the specified address. The serial port |
1151 | must already be setup and configured. Options are not |
1152 | yet supported. |
1153 | |
1154 | smh Use ARM semihosting calls for early console. |
1155 | |
1156 | s3c2410,<addr> |
1157 | s3c2412,<addr> |
1158 | s3c2440,<addr> |
1159 | s3c6400,<addr> |
1160 | s5pv210,<addr> |
1161 | exynos4210,<addr> |
1162 | Use early console provided by serial driver available |
1163 | on Samsung SoCs, requires selecting proper type and |
1164 | a correct base address of the selected UART port. The |
1165 | serial port must already be setup and configured. |
1166 | Options are not yet supported. |
1167 | |
1168 | lpuart,<addr> |
1169 | lpuart32,<addr> |
1170 | Use early console provided by Freescale LP UART driver |
1171 | found on Freescale Vybrid and QorIQ LS1021A processors. |
1172 | A valid base address must be provided, and the serial |
1173 | port must already be setup and configured. |
1174 | |
1175 | armada3700_uart,<addr> |
1176 | Start an early, polled-mode console on the |
1177 | Armada 3700 serial port at the specified |
1178 | address. The serial port must already be setup |
1179 | and configured. Options are not yet supported. |
1180 | |
1181 | earlyprintk= [X86,SH,BLACKFIN,ARM,M68k] |
1182 | earlyprintk=vga |
1183 | earlyprintk=efi |
1184 | earlyprintk=xen |
1185 | earlyprintk=serial[,ttySn[,baudrate]] |
1186 | earlyprintk=serial[,0x...[,baudrate]] |
1187 | earlyprintk=ttySn[,baudrate] |
1188 | earlyprintk=dbgp[debugController#] |
1189 | earlyprintk=pciserial,bus:device.function[,baudrate] |
1190 | |
1191 | earlyprintk is useful when the kernel crashes before |
1192 | the normal console is initialized. It is not enabled by |
1193 | default because it has some cosmetic problems. |
1194 | |
1195 | Append ",keep" to not disable it when the real console |
1196 | takes over. |
1197 | |
1198 | Only one of vga, efi, serial, or usb debug port can |
1199 | be used at a time. |
1200 | |
1201 | Currently only ttyS0 and ttyS1 may be specified by |
1202 | name. Other I/O ports may be explicitly specified |
1203 | on some architectures (x86 and arm at least) by |
1204 | replacing ttySn with an I/O port address, like this: |
1205 | earlyprintk=serial,0x1008,115200 |
1206 | You can find the port for a given device in |
1207 | /proc/tty/driver/serial: |
1208 | 2: uart:ST16650V2 port:00001008 irq:18 ... |
1209 | |
1210 | Interaction with the standard serial driver is not |
1211 | very good. |
1212 | |
1213 | The VGA and EFI output is eventually overwritten by |
1214 | the real console. |
1215 | |
1216 | The xen output can only be used by Xen PV guests. |
1217 | |
1218 | edac_report= [HW,EDAC] Control how to report EDAC event |
1219 | Format: {"on" | "off" | "force"} |
1220 | on: enable EDAC to report H/W event. May be overridden |
1221 | by other higher priority error reporting module. |
1222 | off: disable H/W event reporting through EDAC. |
1223 | force: enforce the use of EDAC to report H/W event. |
1224 | default: on. |
1225 | |
1226 | ekgdboc= [X86,KGDB] Allow early kernel console debugging |
1227 | ekgdboc=kbd |
1228 | |
1229 | This is designed to be used in conjunction with |
1230 | the boot argument: earlyprintk=vga |
1231 | |
1232 | edd= [EDD] |
1233 | Format: {"off" | "on" | "skip[mbr]"} |
1234 | |
1235 | efi= [EFI] |
1236 | Format: { "old_map", "nochunk", "noruntime", "debug" } |
1237 | old_map [X86-64]: switch to the old ioremap-based EFI |
1238 | runtime services mapping. 32-bit still uses this one by |
1239 | default. |
1240 | nochunk: disable reading files in "chunks" in the EFI |
1241 | boot stub, as chunking can cause problems with some |
1242 | firmware implementations. |
1243 | noruntime : disable EFI runtime services support |
1244 | debug: enable misc debug output |
1245 | |
1246 | efi_no_storage_paranoia [EFI; X86] |
1247 | Using this parameter you can use more than 50% of |
1248 | your efi variable storage. Use this parameter only if |
1249 | you are really sure that your UEFI does sane gc and |
1250 | fulfills the spec otherwise your board may brick. |
1251 | |
1252 | efi_fake_mem= nn[KMG]@ss[KMG]:aa[,nn[KMG]@ss[KMG]:aa,..] [EFI; X86] |
1253 | Add arbitrary attribute to specific memory range by |
1254 | updating original EFI memory map. |
1255 | Region of memory which aa attribute is added to is |
1256 | from ss to ss+nn. |
1257 | If efi_fake_mem=2G@4G:0x10000,2G@0x10a0000000:0x10000 |
1258 | is specified, EFI_MEMORY_MORE_RELIABLE(0x10000) |
1259 | attribute is added to range 0x100000000-0x180000000 and |
1260 | 0x10a0000000-0x1120000000. |
1261 | |
1262 | Using this parameter you can do debugging of EFI memmap |
1263 | related feature. For example, you can do debugging of |
1264 | Address Range Mirroring feature even if your box |
1265 | doesn't support it. |
1266 | |
1267 | efivar_ssdt= [EFI; X86] Name of an EFI variable that contains an SSDT |
1268 | that is to be dynamically loaded by Linux. If there are |
1269 | multiple variables with the same name but with different |
1270 | vendor GUIDs, all of them will be loaded. See |
1271 | Documentation/acpi/ssdt-overlays.txt for details. |
1272 | |
1273 | |
1274 | eisa_irq_edge= [PARISC,HW] |
1275 | See header of drivers/parisc/eisa.c. |
1276 | |
1277 | elanfreq= [X86-32] |
1278 | See comment before function elanfreq_setup() in |
1279 | arch/x86/kernel/cpu/cpufreq/elanfreq.c. |
1280 | |
1281 | elevator= [IOSCHED] |
1282 | Format: {"cfq" | "deadline" | "noop"} |
1283 | See Documentation/block/cfq-iosched.txt and |
1284 | Documentation/block/deadline-iosched.txt for details. |
1285 | |
1286 | elfcorehdr=[size[KMG]@]offset[KMG] [IA64,PPC,SH,X86,S390] |
1287 | Specifies physical address of start of kernel core |
1288 | image elf header and optionally the size. Generally |
1289 | kexec loader will pass this option to capture kernel. |
1290 | See Documentation/kdump/kdump.txt for details. |
1291 | |
1292 | enable_mtrr_cleanup [X86] |
1293 | The kernel tries to adjust MTRR layout from continuous |
1294 | to discrete, to make X server driver able to add WB |
1295 | entry later. This parameter enables that. |
1296 | |
1297 | enable_timer_pin_1 [X86] |
1298 | Enable PIN 1 of APIC timer |
1299 | Can be useful to work around chipset bugs |
1300 | (in particular on some ATI chipsets). |
1301 | The kernel tries to set a reasonable default. |
1302 | |
1303 | enforcing [SELINUX] Set initial enforcing status. |
1304 | Format: {"0" | "1"} |
1305 | See security/selinux/Kconfig help text. |
1306 | 0 -- permissive (log only, no denials). |
1307 | 1 -- enforcing (deny and log). |
1308 | Default value is 0. |
1309 | Value can be changed at runtime via /selinux/enforce. |
1310 | |
1311 | erst_disable [ACPI] |
1312 | Disable Error Record Serialization Table (ERST) |
1313 | support. |
1314 | |
1315 | ether= [HW,NET] Ethernet cards parameters |
1316 | This option is obsoleted by the "netdev=" option, which |
1317 | has equivalent usage. See its documentation for details. |
1318 | |
1319 | evm= [EVM] |
1320 | Format: { "fix" } |
1321 | Permit 'security.evm' to be updated regardless of |
1322 | current integrity status. |
1323 | |
1324 | failslab= |
1325 | fail_page_alloc= |
1326 | fail_make_request=[KNL] |
1327 | General fault injection mechanism. |
1328 | Format: <interval>,<probability>,<space>,<times> |
1329 | See also Documentation/fault-injection/. |
1330 | |
1331 | floppy= [HW] |
1332 | See Documentation/blockdev/floppy.txt. |
1333 | |
1334 | force_pal_cache_flush |
1335 | [IA-64] Avoid check_sal_cache_flush which may hang on |
1336 | buggy SAL_CACHE_FLUSH implementations. Using this |
1337 | parameter will force ia64_sal_cache_flush to call |
1338 | ia64_pal_cache_flush instead of SAL_CACHE_FLUSH. |
1339 | |
1340 | forcepae [X86-32] |
1341 | Forcefully enable Physical Address Extension (PAE). |
1342 | Many Pentium M systems disable PAE but may have a |
1343 | functionally usable PAE implementation. |
1344 | Warning: use of this parameter will taint the kernel |
1345 | and may cause unknown problems. |
1346 | |
1347 | ftrace=[tracer] |
1348 | [FTRACE] will set and start the specified tracer |
1349 | as early as possible in order to facilitate early |
1350 | boot debugging. |
1351 | |
1352 | ftrace_dump_on_oops[=orig_cpu] |
1353 | [FTRACE] will dump the trace buffers on oops. |
1354 | If no parameter is passed, ftrace will dump |
1355 | buffers of all CPUs, but if you pass orig_cpu, it will |
1356 | dump only the buffer of the CPU that triggered the |
1357 | oops. |
1358 | |
1359 | ftrace_filter=[function-list] |
1360 | [FTRACE] Limit the functions traced by the function |
1361 | tracer at boot up. function-list is a comma separated |
1362 | list of functions. This list can be changed at run |
1363 | time by the set_ftrace_filter file in the debugfs |
1364 | tracing directory. |
1365 | |
1366 | ftrace_notrace=[function-list] |
1367 | [FTRACE] Do not trace the functions specified in |
1368 | function-list. This list can be changed at run time |
1369 | by the set_ftrace_notrace file in the debugfs |
1370 | tracing directory. |
1371 | |
1372 | ftrace_graph_filter=[function-list] |
1373 | [FTRACE] Limit the top level callers functions traced |
1374 | by the function graph tracer at boot up. |
1375 | function-list is a comma separated list of functions |
1376 | that can be changed at run time by the |
1377 | set_graph_function file in the debugfs tracing directory. |
1378 | |
1379 | ftrace_graph_notrace=[function-list] |
1380 | [FTRACE] Do not trace from the functions specified in |
1381 | function-list. This list is a comma separated list of |
1382 | functions that can be changed at run time by the |
1383 | set_graph_notrace file in the debugfs tracing directory. |
1384 | |
1385 | gamecon.map[2|3]= |
1386 | [HW,JOY] Multisystem joystick and NES/SNES/PSX pad |
1387 | support via parallel port (up to 5 devices per port) |
1388 | Format: <port#>,<pad1>,<pad2>,<pad3>,<pad4>,<pad5> |
1389 | See also Documentation/input/joystick-parport.txt |
1390 | |
1391 | gamma= [HW,DRM] |
1392 | |
1393 | gart_fix_e820= [X86_64] disable the fix e820 for K8 GART |
1394 | Format: off | on |
1395 | default: on |
1396 | |
1397 | gcov_persist= [GCOV] When non-zero (default), profiling data for |
1398 | kernel modules is saved and remains accessible via |
1399 | debugfs, even when the module is unloaded/reloaded. |
1400 | When zero, profiling data is discarded and associated |
1401 | debugfs files are removed at module unload time. |
1402 | |
1403 | goldfish [X86] Enable the goldfish android emulator platform. |
1404 | Don't use this when you are not running on the |
1405 | android emulator |
1406 | |
1407 | gpt [EFI] Forces disk with valid GPT signature but |
1408 | invalid Protective MBR to be treated as GPT. If the |
1409 | primary GPT is corrupted, it enables the backup/alternate |
1410 | GPT to be used instead. |
1411 | |
1412 | grcan.enable0= [HW] Configuration of physical interface 0. Determines |
1413 | the "Enable 0" bit of the configuration register. |
1414 | Format: 0 | 1 |
1415 | Default: 0 |
1416 | grcan.enable1= [HW] Configuration of physical interface 1. Determines |
1417 | the "Enable 0" bit of the configuration register. |
1418 | Format: 0 | 1 |
1419 | Default: 0 |
1420 | grcan.select= [HW] Select which physical interface to use. |
1421 | Format: 0 | 1 |
1422 | Default: 0 |
1423 | grcan.txsize= [HW] Sets the size of the tx buffer. |
1424 | Format: <unsigned int> such that (txsize & ~0x1fffc0) == 0. |
1425 | Default: 1024 |
1426 | grcan.rxsize= [HW] Sets the size of the rx buffer. |
1427 | Format: <unsigned int> such that (rxsize & ~0x1fffc0) == 0. |
1428 | Default: 1024 |
1429 | |
1430 | gpio-mockup.gpio_mockup_ranges |
1431 | [HW] Sets the ranges of gpiochip of for this device. |
1432 | Format: <start1>,<end1>,<start2>,<end2>... |
1433 | |
1434 | hardlockup_all_cpu_backtrace= |
1435 | [KNL] Should the hard-lockup detector generate |
1436 | backtraces on all cpus. |
1437 | Format: <integer> |
1438 | |
1439 | hashdist= [KNL,NUMA] Large hashes allocated during boot |
1440 | are distributed across NUMA nodes. Defaults on |
1441 | for 64-bit NUMA, off otherwise. |
1442 | Format: 0 | 1 (for off | on) |
1443 | |
1444 | hcl= [IA-64] SGI's Hardware Graph compatibility layer |
1445 | |
1446 | hd= [EIDE] (E)IDE hard drive subsystem geometry |
1447 | Format: <cyl>,<head>,<sect> |
1448 | |
1449 | hest_disable [ACPI] |
1450 | Disable Hardware Error Source Table (HEST) support; |
1451 | corresponding firmware-first mode error processing |
1452 | logic will be disabled. |
1453 | |
1454 | highmem=nn[KMG] [KNL,BOOT] forces the highmem zone to have an exact |
1455 | size of <nn>. This works even on boxes that have no |
1456 | highmem otherwise. This also works to reduce highmem |
1457 | size on bigger boxes. |
1458 | |
1459 | highres= [KNL] Enable/disable high resolution timer mode. |
1460 | Valid parameters: "on", "off" |
1461 | Default: "on" |
1462 | |
1463 | hisax= [HW,ISDN] |
1464 | See Documentation/isdn/README.HiSax. |
1465 | |
1466 | hlt [BUGS=ARM,SH] |
1467 | |
1468 | hpet= [X86-32,HPET] option to control HPET usage |
1469 | Format: { enable (default) | disable | force | |
1470 | verbose } |
1471 | disable: disable HPET and use PIT instead |
1472 | force: allow force enabled of undocumented chips (ICH4, |
1473 | VIA, nVidia) |
1474 | verbose: show contents of HPET registers during setup |
1475 | |
1476 | hpet_mmap= [X86, HPET_MMAP] Allow userspace to mmap HPET |
1477 | registers. Default set by CONFIG_HPET_MMAP_DEFAULT. |
1478 | |
1479 | hugepages= [HW,X86-32,IA-64] HugeTLB pages to allocate at boot. |
1480 | hugepagesz= [HW,IA-64,PPC,X86-64] The size of the HugeTLB pages. |
1481 | On x86-64 and powerpc, this option can be specified |
1482 | multiple times interleaved with hugepages= to reserve |
1483 | huge pages of different sizes. Valid pages sizes on |
1484 | x86-64 are 2M (when the CPU supports "pse") and 1G |
1485 | (when the CPU supports the "pdpe1gb" cpuinfo flag). |
1486 | |
1487 | hvc_iucv= [S390] Number of z/VM IUCV hypervisor console (HVC) |
1488 | terminal devices. Valid values: 0..8 |
1489 | hvc_iucv_allow= [S390] Comma-separated list of z/VM user IDs. |
1490 | If specified, z/VM IUCV HVC accepts connections |
1491 | from listed z/VM user IDs only. |
1492 | |
1493 | hwthread_map= [METAG] Comma-separated list of Linux cpu id to |
1494 | hardware thread id mappings. |
1495 | Format: <cpu>:<hwthread> |
1496 | |
1497 | keep_bootcon [KNL] |
1498 | Do not unregister boot console at start. This is only |
1499 | useful for debugging when something happens in the window |
1500 | between unregistering the boot console and initializing |
1501 | the real console. |
1502 | |
1503 | i2c_bus= [HW] Override the default board specific I2C bus speed |
1504 | or register an additional I2C bus that is not |
1505 | registered from board initialization code. |
1506 | Format: |
1507 | <bus_id>,<clkrate> |
1508 | |
1509 | i8042.debug [HW] Toggle i8042 debug mode |
1510 | i8042.unmask_kbd_data |
1511 | [HW] Enable printing of interrupt data from the KBD port |
1512 | (disabled by default, and as a pre-condition |
1513 | requires that i8042.debug=1 be enabled) |
1514 | i8042.direct [HW] Put keyboard port into non-translated mode |
1515 | i8042.dumbkbd [HW] Pretend that controller can only read data from |
1516 | keyboard and cannot control its state |
1517 | (Don't attempt to blink the leds) |
1518 | i8042.noaux [HW] Don't check for auxiliary (== mouse) port |
1519 | i8042.nokbd [HW] Don't check/create keyboard port |
1520 | i8042.noloop [HW] Disable the AUX Loopback command while probing |
1521 | for the AUX port |
1522 | i8042.nomux [HW] Don't check presence of an active multiplexing |
1523 | controller |
1524 | i8042.nopnp [HW] Don't use ACPIPnP / PnPBIOS to discover KBD/AUX |
1525 | controllers |
1526 | i8042.notimeout [HW] Ignore timeout condition signalled by controller |
1527 | i8042.reset [HW] Reset the controller during init, cleanup and |
1528 | suspend-to-ram transitions, only during s2r |
1529 | transitions, or never reset |
1530 | Format: { 1 | Y | y | 0 | N | n } |
1531 | 1, Y, y: always reset controller |
1532 | 0, N, n: don't ever reset controller |
1533 | Default: only on s2r transitions on x86; most other |
1534 | architectures force reset to be always executed |
1535 | i8042.unlock [HW] Unlock (ignore) the keylock |
1536 | i8042.kbdreset [HW] Reset device connected to KBD port |
1537 | |
1538 | i810= [HW,DRM] |
1539 | |
1540 | i8k.ignore_dmi [HW] Continue probing hardware even if DMI data |
1541 | indicates that the driver is running on unsupported |
1542 | hardware. |
1543 | i8k.force [HW] Activate i8k driver even if SMM BIOS signature |
1544 | does not match list of supported models. |
1545 | i8k.power_status |
1546 | [HW] Report power status in /proc/i8k |
1547 | (disabled by default) |
1548 | i8k.restricted [HW] Allow controlling fans only if SYS_ADMIN |
1549 | capability is set. |
1550 | |
1551 | i915.invert_brightness= |
1552 | [DRM] Invert the sense of the variable that is used to |
1553 | set the brightness of the panel backlight. Normally a |
1554 | brightness value of 0 indicates backlight switched off, |
1555 | and the maximum of the brightness value sets the backlight |
1556 | to maximum brightness. If this parameter is set to 0 |
1557 | (default) and the machine requires it, or this parameter |
1558 | is set to 1, a brightness value of 0 sets the backlight |
1559 | to maximum brightness, and the maximum of the brightness |
1560 | value switches the backlight off. |
1561 | -1 -- never invert brightness |
1562 | 0 -- machine default |
1563 | 1 -- force brightness inversion |
1564 | |
1565 | icn= [HW,ISDN] |
1566 | Format: <io>[,<membase>[,<icn_id>[,<icn_id2>]]] |
1567 | |
1568 | ide-core.nodma= [HW] (E)IDE subsystem |
1569 | Format: =0.0 to prevent dma on hda, =0.1 hdb =1.0 hdc |
1570 | .vlb_clock .pci_clock .noflush .nohpa .noprobe .nowerr |
1571 | .cdrom .chs .ignore_cable are additional options |
1572 | See Documentation/ide/ide.txt. |
1573 | |
1574 | ide-generic.probe-mask= [HW] (E)IDE subsystem |
1575 | Format: <int> |
1576 | Probe mask for legacy ISA IDE ports. Depending on |
1577 | platform up to 6 ports are supported, enabled by |
1578 | setting corresponding bits in the mask to 1. The |
1579 | default value is 0x0, which has a special meaning. |
1580 | On systems that have PCI, it triggers scanning the |
1581 | PCI bus for the first and the second port, which |
1582 | are then probed. On systems without PCI the value |
1583 | of 0x0 enables probing the two first ports as if it |
1584 | was 0x3. |
1585 | |
1586 | ide-pci-generic.all-generic-ide [HW] (E)IDE subsystem |
1587 | Claim all unknown PCI IDE storage controllers. |
1588 | |
1589 | idle= [X86] |
1590 | Format: idle=poll, idle=halt, idle=nomwait |
1591 | Poll forces a polling idle loop that can slightly |
1592 | improve the performance of waking up a idle CPU, but |
1593 | will use a lot of power and make the system run hot. |
1594 | Not recommended. |
1595 | idle=halt: Halt is forced to be used for CPU idle. |
1596 | In such case C2/C3 won't be used again. |
1597 | idle=nomwait: Disable mwait for CPU C-states |
1598 | |
1599 | ieee754= [MIPS] Select IEEE Std 754 conformance mode |
1600 | Format: { strict | legacy | 2008 | relaxed } |
1601 | Default: strict |
1602 | |
1603 | Choose which programs will be accepted for execution |
1604 | based on the IEEE 754 NaN encoding(s) supported by |
1605 | the FPU and the NaN encoding requested with the value |
1606 | of an ELF file header flag individually set by each |
1607 | binary. Hardware implementations are permitted to |
1608 | support either or both of the legacy and the 2008 NaN |
1609 | encoding mode. |
1610 | |
1611 | Available settings are as follows: |
1612 | strict accept binaries that request a NaN encoding |
1613 | supported by the FPU |
1614 | legacy only accept legacy-NaN binaries, if supported |
1615 | by the FPU |
1616 | 2008 only accept 2008-NaN binaries, if supported |
1617 | by the FPU |
1618 | relaxed accept any binaries regardless of whether |
1619 | supported by the FPU |
1620 | |
1621 | The FPU emulator is always able to support both NaN |
1622 | encodings, so if no FPU hardware is present or it has |
1623 | been disabled with 'nofpu', then the settings of |
1624 | 'legacy' and '2008' strap the emulator accordingly, |
1625 | 'relaxed' straps the emulator for both legacy-NaN and |
1626 | 2008-NaN, whereas 'strict' enables legacy-NaN only on |
1627 | legacy processors and both NaN encodings on MIPS32 or |
1628 | MIPS64 CPUs. |
1629 | |
1630 | The setting for ABS.fmt/NEG.fmt instruction execution |
1631 | mode generally follows that for the NaN encoding, |
1632 | except where unsupported by hardware. |
1633 | |
1634 | ignore_loglevel [KNL] |
1635 | Ignore loglevel setting - this will print /all/ |
1636 | kernel messages to the console. Useful for debugging. |
1637 | We also add it as printk module parameter, so users |
1638 | could change it dynamically, usually by |
1639 | /sys/module/printk/parameters/ignore_loglevel. |
1640 | |
1641 | ignore_rlimit_data |
1642 | Ignore RLIMIT_DATA setting for data mappings, |
1643 | print warning at first misuse. Can be changed via |
1644 | /sys/module/kernel/parameters/ignore_rlimit_data. |
1645 | |
1646 | ihash_entries= [KNL] |
1647 | Set number of hash buckets for inode cache. |
1648 | |
1649 | ima_appraise= [IMA] appraise integrity measurements |
1650 | Format: { "off" | "enforce" | "fix" | "log" } |
1651 | default: "enforce" |
1652 | |
1653 | ima_appraise_tcb [IMA] |
1654 | The builtin appraise policy appraises all files |
1655 | owned by uid=0. |
1656 | |
1657 | ima_hash= [IMA] |
1658 | Format: { md5 | sha1 | rmd160 | sha256 | sha384 |
1659 | | sha512 | ... } |
1660 | default: "sha1" |
1661 | |
1662 | The list of supported hash algorithms is defined |
1663 | in crypto/hash_info.h. |
1664 | |
1665 | ima_policy= [IMA] |
1666 | The builtin measurement policy to load during IMA |
1667 | setup. Specyfing "tcb" as the value, measures all |
1668 | programs exec'd, files mmap'd for exec, and all files |
1669 | opened with the read mode bit set by either the |
1670 | effective uid (euid=0) or uid=0. |
1671 | Format: "tcb" |
1672 | |
1673 | ima_tcb [IMA] Deprecated. Use ima_policy= instead. |
1674 | Load a policy which meets the needs of the Trusted |
1675 | Computing Base. This means IMA will measure all |
1676 | programs exec'd, files mmap'd for exec, and all files |
1677 | opened for read by uid=0. |
1678 | |
1679 | ima_template= [IMA] |
1680 | Select one of defined IMA measurements template formats. |
1681 | Formats: { "ima" | "ima-ng" | "ima-sig" } |
1682 | Default: "ima-ng" |
1683 | |
1684 | ima_template_fmt= |
1685 | [IMA] Define a custom template format. |
1686 | Format: { "field1|...|fieldN" } |
1687 | |
1688 | ima.ahash_minsize= [IMA] Minimum file size for asynchronous hash usage |
1689 | Format: <min_file_size> |
1690 | Set the minimal file size for using asynchronous hash. |
1691 | If left unspecified, ahash usage is disabled. |
1692 | |
1693 | ahash performance varies for different data sizes on |
1694 | different crypto accelerators. This option can be used |
1695 | to achieve the best performance for a particular HW. |
1696 | |
1697 | ima.ahash_bufsize= [IMA] Asynchronous hash buffer size |
1698 | Format: <bufsize> |
1699 | Set hashing buffer size. Default: 4k. |
1700 | |
1701 | ahash performance varies for different chunk sizes on |
1702 | different crypto accelerators. This option can be used |
1703 | to achieve best performance for particular HW. |
1704 | |
1705 | init= [KNL] |
1706 | Format: <full_path> |
1707 | Run specified binary instead of /sbin/init as init |
1708 | process. |
1709 | |
1710 | initcall_debug [KNL] Trace initcalls as they are executed. Useful |
1711 | for working out where the kernel is dying during |
1712 | startup. |
1713 | |
1714 | initcall_blacklist= [KNL] Do not execute a comma-separated list of |
1715 | initcall functions. Useful for debugging built-in |
1716 | modules and initcalls. |
1717 | |
1718 | initrd= [BOOT] Specify the location of the initial ramdisk |
1719 | |
1720 | init_pkru= [x86] Specify the default memory protection keys rights |
1721 | register contents for all processes. 0x55555554 by |
1722 | default (disallow access to all but pkey 0). Can |
1723 | override in debugfs after boot. |
1724 | |
1725 | inport.irq= [HW] Inport (ATI XL and Microsoft) busmouse driver |
1726 | Format: <irq> |
1727 | |
1728 | int_pln_enable [x86] Enable power limit notification interrupt |
1729 | |
1730 | integrity_audit=[IMA] |
1731 | Format: { "0" | "1" } |
1732 | 0 -- basic integrity auditing messages. (Default) |
1733 | 1 -- additional integrity auditing messages. |
1734 | |
1735 | intel_iommu= [DMAR] Intel IOMMU driver (DMAR) option |
1736 | on |
1737 | Enable intel iommu driver. |
1738 | off |
1739 | Disable intel iommu driver. |
1740 | igfx_off [Default Off] |
1741 | By default, gfx is mapped as normal device. If a gfx |
1742 | device has a dedicated DMAR unit, the DMAR unit is |
1743 | bypassed by not enabling DMAR with this option. In |
1744 | this case, gfx device will use physical address for |
1745 | DMA. |
1746 | forcedac [x86_64] |
1747 | With this option iommu will not optimize to look |
1748 | for io virtual address below 32-bit forcing dual |
1749 | address cycle on pci bus for cards supporting greater |
1750 | than 32-bit addressing. The default is to look |
1751 | for translation below 32-bit and if not available |
1752 | then look in the higher range. |
1753 | strict [Default Off] |
1754 | With this option on every unmap_single operation will |
1755 | result in a hardware IOTLB flush operation as opposed |
1756 | to batching them for performance. |
1757 | sp_off [Default Off] |
1758 | By default, super page will be supported if Intel IOMMU |
1759 | has the capability. With this option, super page will |
1760 | not be supported. |
1761 | ecs_off [Default Off] |
1762 | By default, extended context tables will be supported if |
1763 | the hardware advertises that it has support both for the |
1764 | extended tables themselves, and also PASID support. With |
1765 | this option set, extended tables will not be used even |
1766 | on hardware which claims to support them. |
1767 | |
1768 | intel_idle.max_cstate= [KNL,HW,ACPI,X86] |
1769 | 0 disables intel_idle and fall back on acpi_idle. |
1770 | 1 to 9 specify maximum depth of C-state. |
1771 | |
1772 | intel_pstate= [X86] |
1773 | disable |
1774 | Do not enable intel_pstate as the default |
1775 | scaling driver for the supported processors |
1776 | force |
1777 | Enable intel_pstate on systems that prohibit it by default |
1778 | in favor of acpi-cpufreq. Forcing the intel_pstate driver |
1779 | instead of acpi-cpufreq may disable platform features, such |
1780 | as thermal controls and power capping, that rely on ACPI |
1781 | P-States information being indicated to OSPM and therefore |
1782 | should be used with caution. This option does not work with |
1783 | processors that aren't supported by the intel_pstate driver |
1784 | or on platforms that use pcc-cpufreq instead of acpi-cpufreq. |
1785 | no_hwp |
1786 | Do not enable hardware P state control (HWP) |
1787 | if available. |
1788 | hwp_only |
1789 | Only load intel_pstate on systems which support |
1790 | hardware P state control (HWP) if available. |
1791 | support_acpi_ppc |
1792 | Enforce ACPI _PPC performance limits. If the Fixed ACPI |
1793 | Description Table, specifies preferred power management |
1794 | profile as "Enterprise Server" or "Performance Server", |
1795 | then this feature is turned on by default. |
1796 | |
1797 | intremap= [X86-64, Intel-IOMMU] |
1798 | on enable Interrupt Remapping (default) |
1799 | off disable Interrupt Remapping |
1800 | nosid disable Source ID checking |
1801 | no_x2apic_optout |
1802 | BIOS x2APIC opt-out request will be ignored |
1803 | nopost disable Interrupt Posting |
1804 | |
1805 | iomem= Disable strict checking of access to MMIO memory |
1806 | strict regions from userspace. |
1807 | relaxed |
1808 | |
1809 | iommu= [x86] |
1810 | off |
1811 | force |
1812 | noforce |
1813 | biomerge |
1814 | panic |
1815 | nopanic |
1816 | merge |
1817 | nomerge |
1818 | forcesac |
1819 | soft |
1820 | pt [x86, IA-64] |
1821 | nobypass [PPC/POWERNV] |
1822 | Disable IOMMU bypass, using IOMMU for PCI devices. |
1823 | |
1824 | |
1825 | io7= [HW] IO7 for Marvel based alpha systems |
1826 | See comment before marvel_specify_io7 in |
1827 | arch/alpha/kernel/core_marvel.c. |
1828 | |
1829 | io_delay= [X86] I/O delay method |
1830 | 0x80 |
1831 | Standard port 0x80 based delay |
1832 | 0xed |
1833 | Alternate port 0xed based delay (needed on some systems) |
1834 | udelay |
1835 | Simple two microseconds delay |
1836 | none |
1837 | No delay |
1838 | |
1839 | ip= [IP_PNP] |
1840 | See Documentation/filesystems/nfs/nfsroot.txt. |
1841 | |
1842 | irqaffinity= [SMP] Set the default irq affinity mask |
1843 | The argument is a cpu list, as described above. |
1844 | |
1845 | irqfixup [HW] |
1846 | When an interrupt is not handled search all handlers |
1847 | for it. Intended to get systems with badly broken |
1848 | firmware running. |
1849 | |
1850 | irqpoll [HW] |
1851 | When an interrupt is not handled search all handlers |
1852 | for it. Also check all handlers each timer |
1853 | interrupt. Intended to get systems with badly broken |
1854 | firmware running. |
1855 | |
1856 | isapnp= [ISAPNP] |
1857 | Format: <RDP>,<reset>,<pci_scan>,<verbosity> |
1858 | |
1859 | isolcpus= [KNL,SMP] Isolate CPUs from the general scheduler. |
1860 | The argument is a cpu list, as described above. |
1861 | |
1862 | This option can be used to specify one or more CPUs |
1863 | to isolate from the general SMP balancing and scheduling |
1864 | algorithms. You can move a process onto or off an |
1865 | "isolated" CPU via the CPU affinity syscalls or cpuset. |
1866 | <cpu number> begins at 0 and the maximum value is |
1867 | "number of CPUs in system - 1". |
1868 | |
1869 | This option is the preferred way to isolate CPUs. The |
1870 | alternative -- manually setting the CPU mask of all |
1871 | tasks in the system -- can cause problems and |
1872 | suboptimal load balancer performance. |
1873 | |
1874 | iucv= [HW,NET] |
1875 | |
1876 | ivrs_ioapic [HW,X86_64] |
1877 | Provide an override to the IOAPIC-ID<->DEVICE-ID |
1878 | mapping provided in the IVRS ACPI table. For |
1879 | example, to map IOAPIC-ID decimal 10 to |
1880 | PCI device 00:14.0 write the parameter as: |
1881 | ivrs_ioapic[10]=00:14.0 |
1882 | |
1883 | ivrs_hpet [HW,X86_64] |
1884 | Provide an override to the HPET-ID<->DEVICE-ID |
1885 | mapping provided in the IVRS ACPI table. For |
1886 | example, to map HPET-ID decimal 0 to |
1887 | PCI device 00:14.0 write the parameter as: |
1888 | ivrs_hpet[0]=00:14.0 |
1889 | |
1890 | ivrs_acpihid [HW,X86_64] |
1891 | Provide an override to the ACPI-HID:UID<->DEVICE-ID |
1892 | mapping provided in the IVRS ACPI table. For |
1893 | example, to map UART-HID:UID AMD0020:0 to |
1894 | PCI device 00:14.5 write the parameter as: |
1895 | ivrs_acpihid[00:14.5]=AMD0020:0 |
1896 | |
1897 | js= [HW,JOY] Analog joystick |
1898 | See Documentation/input/joystick.txt. |
1899 | |
1900 | nokaslr [KNL] |
1901 | When CONFIG_RANDOMIZE_BASE is set, this disables |
1902 | kernel and module base offset ASLR (Address Space |
1903 | Layout Randomization). |
1904 | |
1905 | kasan_multi_shot |
1906 | [KNL] Enforce KASAN (Kernel Address Sanitizer) to print |
1907 | report on every invalid memory access. Without this |
1908 | parameter KASAN will print report only for the first |
1909 | invalid access. |
1910 | |
1911 | keepinitrd [HW,ARM] |
1912 | |
1913 | kernelcore= [KNL,X86,IA-64,PPC] |
1914 | Format: nn[KMGTPE] | "mirror" |
1915 | This parameter |
1916 | specifies the amount of memory usable by the kernel |
1917 | for non-movable allocations. The requested amount is |
1918 | spread evenly throughout all nodes in the system. The |
1919 | remaining memory in each node is used for Movable |
1920 | pages. In the event, a node is too small to have both |
1921 | kernelcore and Movable pages, kernelcore pages will |
1922 | take priority and other nodes will have a larger number |
1923 | of Movable pages. The Movable zone is used for the |
1924 | allocation of pages that may be reclaimed or moved |
1925 | by the page migration subsystem. This means that |
1926 | HugeTLB pages may not be allocated from this zone. |
1927 | Note that allocations like PTEs-from-HighMem still |
1928 | use the HighMem zone if it exists, and the Normal |
1929 | zone if it does not. |
1930 | |
1931 | Instead of specifying the amount of memory (nn[KMGTPE]), |
1932 | you can specify "mirror" option. In case "mirror" |
1933 | option is specified, mirrored (reliable) memory is used |
1934 | for non-movable allocations and remaining memory is used |
1935 | for Movable pages. nn[KMGTPE] and "mirror" are exclusive, |
1936 | so you can NOT specify nn[KMGTPE] and "mirror" at the same |
1937 | time. |
1938 | |
1939 | kgdbdbgp= [KGDB,HW] kgdb over EHCI usb debug port. |
1940 | Format: <Controller#>[,poll interval] |
1941 | The controller # is the number of the ehci usb debug |
1942 | port as it is probed via PCI. The poll interval is |
1943 | optional and is the number seconds in between |
1944 | each poll cycle to the debug port in case you need |
1945 | the functionality for interrupting the kernel with |
1946 | gdb or control-c on the dbgp connection. When |
1947 | not using this parameter you use sysrq-g to break into |
1948 | the kernel debugger. |
1949 | |
1950 | kgdboc= [KGDB,HW] kgdb over consoles. |
1951 | Requires a tty driver that supports console polling, |
1952 | or a supported polling keyboard driver (non-usb). |
1953 | Serial only format: <serial_device>[,baud] |
1954 | keyboard only format: kbd |
1955 | keyboard and serial format: kbd,<serial_device>[,baud] |
1956 | Optional Kernel mode setting: |
1957 | kms, kbd format: kms,kbd |
1958 | kms, kbd and serial format: kms,kbd,<ser_dev>[,baud] |
1959 | |
1960 | kgdbwait [KGDB] Stop kernel execution and enter the |
1961 | kernel debugger at the earliest opportunity. |
1962 | |
1963 | kmac= [MIPS] korina ethernet MAC address. |
1964 | Configure the RouterBoard 532 series on-chip |
1965 | Ethernet adapter MAC address. |
1966 | |
1967 | kmemleak= [KNL] Boot-time kmemleak enable/disable |
1968 | Valid arguments: on, off |
1969 | Default: on |
1970 | Built with CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y, |
1971 | the default is off. |
1972 | |
1973 | kmemcheck= [X86] Boot-time kmemcheck enable/disable/one-shot mode |
1974 | Valid arguments: 0, 1, 2 |
1975 | kmemcheck=0 (disabled) |
1976 | kmemcheck=1 (enabled) |
1977 | kmemcheck=2 (one-shot mode) |
1978 | Default: 2 (one-shot mode) |
1979 | |
1980 | kstack=N [X86] Print N words from the kernel stack |
1981 | in oops dumps. |
1982 | |
1983 | kvm.ignore_msrs=[KVM] Ignore guest accesses to unhandled MSRs. |
1984 | Default is 0 (don't ignore, but inject #GP) |
1985 | |
1986 | kvm.mmu_audit= [KVM] This is a R/W parameter which allows audit |
1987 | KVM MMU at runtime. |
1988 | Default is 0 (off) |
1989 | |
1990 | kvm-amd.nested= [KVM,AMD] Allow nested virtualization in KVM/SVM. |
1991 | Default is 1 (enabled) |
1992 | |
1993 | kvm-amd.npt= [KVM,AMD] Disable nested paging (virtualized MMU) |
1994 | for all guests. |
1995 | Default is 1 (enabled) if in 64-bit or 32-bit PAE mode. |
1996 | |
1997 | kvm-intel.ept= [KVM,Intel] Disable extended page tables |
1998 | (virtualized MMU) support on capable Intel chips. |
1999 | Default is 1 (enabled) |
2000 | |
2001 | kvm-intel.emulate_invalid_guest_state= |
2002 | [KVM,Intel] Enable emulation of invalid guest states |
2003 | Default is 0 (disabled) |
2004 | |
2005 | kvm-intel.flexpriority= |
2006 | [KVM,Intel] Disable FlexPriority feature (TPR shadow). |
2007 | Default is 1 (enabled) |
2008 | |
2009 | kvm-intel.nested= |
2010 | [KVM,Intel] Enable VMX nesting (nVMX). |
2011 | Default is 0 (disabled) |
2012 | |
2013 | kvm-intel.unrestricted_guest= |
2014 | [KVM,Intel] Disable unrestricted guest feature |
2015 | (virtualized real and unpaged mode) on capable |
2016 | Intel chips. Default is 1 (enabled) |
2017 | |
2018 | kvm-intel.vmentry_l1d_flush=[KVM,Intel] Mitigation for L1 Terminal Fault |
2019 | CVE-2018-3620. |
2020 | |
2021 | Valid arguments: never, cond, always |
2022 | |
2023 | always: L1D cache flush on every VMENTER. |
2024 | cond: Flush L1D on VMENTER only when the code between |
2025 | VMEXIT and VMENTER can leak host memory. |
2026 | never: Disables the mitigation |
2027 | |
2028 | Default is cond (do L1 cache flush in specific instances) |
2029 | |
2030 | kvm-intel.vpid= [KVM,Intel] Disable Virtual Processor Identification |
2031 | feature (tagged TLBs) on capable Intel chips. |
2032 | Default is 1 (enabled) |
2033 | |
2034 | l1tf= [X86] Control mitigation of the L1TF vulnerability on |
2035 | affected CPUs |
2036 | |
2037 | The kernel PTE inversion protection is unconditionally |
2038 | enabled and cannot be disabled. |
2039 | |
2040 | full |
2041 | Provides all available mitigations for the |
2042 | L1TF vulnerability. Disables SMT and |
2043 | enables all mitigations in the |
2044 | hypervisors, i.e. unconditional L1D flush. |
2045 | |
2046 | SMT control and L1D flush control via the |
2047 | sysfs interface is still possible after |
2048 | boot. Hypervisors will issue a warning |
2049 | when the first VM is started in a |
2050 | potentially insecure configuration, |
2051 | i.e. SMT enabled or L1D flush disabled. |
2052 | |
2053 | full,force |
2054 | Same as 'full', but disables SMT and L1D |
2055 | flush runtime control. Implies the |
2056 | 'nosmt=force' command line option. |
2057 | (i.e. sysfs control of SMT is disabled.) |
2058 | |
2059 | flush |
2060 | Leaves SMT enabled and enables the default |
2061 | hypervisor mitigation, i.e. conditional |
2062 | L1D flush. |
2063 | |
2064 | SMT control and L1D flush control via the |
2065 | sysfs interface is still possible after |
2066 | boot. Hypervisors will issue a warning |
2067 | when the first VM is started in a |
2068 | potentially insecure configuration, |
2069 | i.e. SMT enabled or L1D flush disabled. |
2070 | |
2071 | flush,nosmt |
2072 | |
2073 | Disables SMT and enables the default |
2074 | hypervisor mitigation. |
2075 | |
2076 | SMT control and L1D flush control via the |
2077 | sysfs interface is still possible after |
2078 | boot. Hypervisors will issue a warning |
2079 | when the first VM is started in a |
2080 | potentially insecure configuration, |
2081 | i.e. SMT enabled or L1D flush disabled. |
2082 | |
2083 | flush,nowarn |
2084 | Same as 'flush', but hypervisors will not |
2085 | warn when a VM is started in a potentially |
2086 | insecure configuration. |
2087 | |
2088 | off |
2089 | Disables hypervisor mitigations and doesn't |
2090 | emit any warnings. |
2091 | It also drops the swap size and available |
2092 | RAM limit restriction on both hypervisor and |
2093 | bare metal. |
2094 | |
2095 | Default is 'flush'. |
2096 | |
2097 | For details see: Documentation/hw-vuln/l1tf.rst |
2098 | |
2099 | l2cr= [PPC] |
2100 | |
2101 | l3cr= [PPC] |
2102 | |
2103 | lapic [X86-32,APIC] Enable the local APIC even if BIOS |
2104 | disabled it. |
2105 | |
2106 | lapic= [x86,APIC] "notscdeadline" Do not use TSC deadline |
2107 | value for LAPIC timer one-shot implementation. Default |
2108 | back to the programmable timer unit in the LAPIC. |
2109 | |
2110 | lapic_timer_c2_ok [X86,APIC] trust the local apic timer |
2111 | in C2 power state. |
2112 | |
2113 | libata.dma= [LIBATA] DMA control |
2114 | libata.dma=0 Disable all PATA and SATA DMA |
2115 | libata.dma=1 PATA and SATA Disk DMA only |
2116 | libata.dma=2 ATAPI (CDROM) DMA only |
2117 | libata.dma=4 Compact Flash DMA only |
2118 | Combinations also work, so libata.dma=3 enables DMA |
2119 | for disks and CDROMs, but not CFs. |
2120 | |
2121 | libata.ignore_hpa= [LIBATA] Ignore HPA limit |
2122 | libata.ignore_hpa=0 keep BIOS limits (default) |
2123 | libata.ignore_hpa=1 ignore limits, using full disk |
2124 | |
2125 | libata.noacpi [LIBATA] Disables use of ACPI in libata suspend/resume |
2126 | when set. |
2127 | Format: <int> |
2128 | |
2129 | libata.force= [LIBATA] Force configurations. The format is comma |
2130 | separated list of "[ID:]VAL" where ID is |
2131 | PORT[.DEVICE]. PORT and DEVICE are decimal numbers |
2132 | matching port, link or device. Basically, it matches |
2133 | the ATA ID string printed on console by libata. If |
2134 | the whole ID part is omitted, the last PORT and DEVICE |
2135 | values are used. If ID hasn't been specified yet, the |
2136 | configuration applies to all ports, links and devices. |
2137 | |
2138 | If only DEVICE is omitted, the parameter applies to |
2139 | the port and all links and devices behind it. DEVICE |
2140 | number of 0 either selects the first device or the |
2141 | first fan-out link behind PMP device. It does not |
2142 | select the host link. DEVICE number of 15 selects the |
2143 | host link and device attached to it. |
2144 | |
2145 | The VAL specifies the configuration to force. As long |
2146 | as there's no ambiguity shortcut notation is allowed. |
2147 | For example, both 1.5 and 1.5G would work for 1.5Gbps. |
2148 | The following configurations can be forced. |
2149 | |
2150 | * Cable type: 40c, 80c, short40c, unk, ign or sata. |
2151 | Any ID with matching PORT is used. |
2152 | |
2153 | * SATA link speed limit: 1.5Gbps or 3.0Gbps. |
2154 | |
2155 | * Transfer mode: pio[0-7], mwdma[0-4] and udma[0-7]. |
2156 | udma[/][16,25,33,44,66,100,133] notation is also |
2157 | allowed. |
2158 | |
2159 | * [no]ncq: Turn on or off NCQ. |
2160 | |
2161 | * [no]ncqtrim: Turn off queued DSM TRIM. |
2162 | |
2163 | * nohrst, nosrst, norst: suppress hard, soft |
2164 | and both resets. |
2165 | |
2166 | * rstonce: only attempt one reset during |
2167 | hot-unplug link recovery |
2168 | |
2169 | * dump_id: dump IDENTIFY data. |
2170 | |
2171 | * atapi_dmadir: Enable ATAPI DMADIR bridge support |
2172 | |
2173 | * disable: Disable this device. |
2174 | |
2175 | If there are multiple matching configurations changing |
2176 | the same attribute, the last one is used. |
2177 | |
2178 | memblock=debug [KNL] Enable memblock debug messages. |
2179 | |
2180 | load_ramdisk= [RAM] List of ramdisks to load from floppy |
2181 | See Documentation/blockdev/ramdisk.txt. |
2182 | |
2183 | lockd.nlm_grace_period=P [NFS] Assign grace period. |
2184 | Format: <integer> |
2185 | |
2186 | lockd.nlm_tcpport=N [NFS] Assign TCP port. |
2187 | Format: <integer> |
2188 | |
2189 | lockd.nlm_timeout=T [NFS] Assign timeout value. |
2190 | Format: <integer> |
2191 | |
2192 | lockd.nlm_udpport=M [NFS] Assign UDP port. |
2193 | Format: <integer> |
2194 | |
2195 | locktorture.nreaders_stress= [KNL] |
2196 | Set the number of locking read-acquisition kthreads. |
2197 | Defaults to being automatically set based on the |
2198 | number of online CPUs. |
2199 | |
2200 | locktorture.nwriters_stress= [KNL] |
2201 | Set the number of locking write-acquisition kthreads. |
2202 | |
2203 | locktorture.onoff_holdoff= [KNL] |
2204 | Set time (s) after boot for CPU-hotplug testing. |
2205 | |
2206 | locktorture.onoff_interval= [KNL] |
2207 | Set time (s) between CPU-hotplug operations, or |
2208 | zero to disable CPU-hotplug testing. |
2209 | |
2210 | locktorture.shuffle_interval= [KNL] |
2211 | Set task-shuffle interval (jiffies). Shuffling |
2212 | tasks allows some CPUs to go into dyntick-idle |
2213 | mode during the locktorture test. |
2214 | |
2215 | locktorture.shutdown_secs= [KNL] |
2216 | Set time (s) after boot system shutdown. This |
2217 | is useful for hands-off automated testing. |
2218 | |
2219 | locktorture.stat_interval= [KNL] |
2220 | Time (s) between statistics printk()s. |
2221 | |
2222 | locktorture.stutter= [KNL] |
2223 | Time (s) to stutter testing, for example, |
2224 | specifying five seconds causes the test to run for |
2225 | five seconds, wait for five seconds, and so on. |
2226 | This tests the locking primitive's ability to |
2227 | transition abruptly to and from idle. |
2228 | |
2229 | locktorture.torture_runnable= [BOOT] |
2230 | Start locktorture running at boot time. |
2231 | |
2232 | locktorture.torture_type= [KNL] |
2233 | Specify the locking implementation to test. |
2234 | |
2235 | locktorture.verbose= [KNL] |
2236 | Enable additional printk() statements. |
2237 | |
2238 | logibm.irq= [HW,MOUSE] Logitech Bus Mouse Driver |
2239 | Format: <irq> |
2240 | |
2241 | loglevel= All Kernel Messages with a loglevel smaller than the |
2242 | console loglevel will be printed to the console. It can |
2243 | also be changed with klogd or other programs. The |
2244 | loglevels are defined as follows: |
2245 | |
2246 | 0 (KERN_EMERG) system is unusable |
2247 | 1 (KERN_ALERT) action must be taken immediately |
2248 | 2 (KERN_CRIT) critical conditions |
2249 | 3 (KERN_ERR) error conditions |
2250 | 4 (KERN_WARNING) warning conditions |
2251 | 5 (KERN_NOTICE) normal but significant condition |
2252 | 6 (KERN_INFO) informational |
2253 | 7 (KERN_DEBUG) debug-level messages |
2254 | |
2255 | log_buf_len=n[KMG] Sets the size of the printk ring buffer, |
2256 | in bytes. n must be a power of two and greater |
2257 | than the minimal size. The minimal size is defined |
2258 | by LOG_BUF_SHIFT kernel config parameter. There is |
2259 | also CONFIG_LOG_CPU_MAX_BUF_SHIFT config parameter |
2260 | that allows to increase the default size depending on |
2261 | the number of CPUs. See init/Kconfig for more details. |
2262 | |
2263 | logo.nologo [FB] Disables display of the built-in Linux logo. |
2264 | This may be used to provide more screen space for |
2265 | kernel log messages and is useful when debugging |
2266 | kernel boot problems. |
2267 | |
2268 | lp=0 [LP] Specify parallel ports to use, e.g, |
2269 | lp=port[,port...] lp=none,parport0 (lp0 not configured, lp1 uses |
2270 | lp=reset first parallel port). 'lp=0' disables the |
2271 | lp=auto printer driver. 'lp=reset' (which can be |
2272 | specified in addition to the ports) causes |
2273 | attached printers to be reset. Using |
2274 | lp=port1,port2,... specifies the parallel ports |
2275 | to associate lp devices with, starting with |
2276 | lp0. A port specification may be 'none' to skip |
2277 | that lp device, or a parport name such as |
2278 | 'parport0'. Specifying 'lp=auto' instead of a |
2279 | port specification list means that device IDs |
2280 | from each port should be examined, to see if |
2281 | an IEEE 1284-compliant printer is attached; if |
2282 | so, the driver will manage that printer. |
2283 | See also header of drivers/char/lp.c. |
2284 | |
2285 | lpj=n [KNL] |
2286 | Sets loops_per_jiffy to given constant, thus avoiding |
2287 | time-consuming boot-time autodetection (up to 250 ms per |
2288 | CPU). 0 enables autodetection (default). To determine |
2289 | the correct value for your kernel, boot with normal |
2290 | autodetection and see what value is printed. Note that |
2291 | on SMP systems the preset will be applied to all CPUs, |
2292 | which is likely to cause problems if your CPUs need |
2293 | significantly divergent settings. An incorrect value |
2294 | will cause delays in the kernel to be wrong, leading to |
2295 | unpredictable I/O errors and other breakage. Although |
2296 | unlikely, in the extreme case this might damage your |
2297 | hardware. |
2298 | |
2299 | ltpc= [NET] |
2300 | Format: <io>,<irq>,<dma> |
2301 | |
2302 | machvec= [IA-64] Force the use of a particular machine-vector |
2303 | (machvec) in a generic kernel. |
2304 | Example: machvec=hpzx1_swiotlb |
2305 | |
2306 | machtype= [Loongson] Share the same kernel image file between different |
2307 | yeeloong laptop. |
2308 | Example: machtype=lemote-yeeloong-2f-7inch |
2309 | |
2310 | max_addr=nn[KMG] [KNL,BOOT,ia64] All physical memory greater |
2311 | than or equal to this physical address is ignored. |
2312 | |
2313 | maxcpus= [SMP] Maximum number of processors that an SMP kernel |
2314 | will bring up during bootup. maxcpus=n : n >= 0 limits |
2315 | the kernel to bring up 'n' processors. Surely after |
2316 | bootup you can bring up the other plugged cpu by executing |
2317 | "echo 1 > /sys/devices/system/cpu/cpuX/online". So maxcpus |
2318 | only takes effect during system bootup. |
2319 | While n=0 is a special case, it is equivalent to "nosmp", |
2320 | which also disables the IO APIC. |
2321 | |
2322 | max_loop= [LOOP] The number of loop block devices that get |
2323 | (loop.max_loop) unconditionally pre-created at init time. The default |
2324 | number is configured by BLK_DEV_LOOP_MIN_COUNT. Instead |
2325 | of statically allocating a predefined number, loop |
2326 | devices can be requested on-demand with the |
2327 | /dev/loop-control interface. |
2328 | |
2329 | mce [X86-32] Machine Check Exception |
2330 | |
2331 | mce=option [X86-64] See Documentation/x86/x86_64/boot-options.txt |
2332 | |
2333 | md= [HW] RAID subsystems devices and level |
2334 | See Documentation/md.txt. |
2335 | |
2336 | mdacon= [MDA] |
2337 | Format: <first>,<last> |
2338 | Specifies range of consoles to be captured by the MDA. |
2339 | |
2340 | mds= [X86,INTEL] |
2341 | Control mitigation for the Micro-architectural Data |
2342 | Sampling (MDS) vulnerability. |
2343 | |
2344 | Certain CPUs are vulnerable to an exploit against CPU |
2345 | internal buffers which can forward information to a |
2346 | disclosure gadget under certain conditions. |
2347 | |
2348 | In vulnerable processors, the speculatively |
2349 | forwarded data can be used in a cache side channel |
2350 | attack, to access data to which the attacker does |
2351 | not have direct access. |
2352 | |
2353 | This parameter controls the MDS mitigation. The |
2354 | options are: |
2355 | |
2356 | full - Enable MDS mitigation on vulnerable CPUs |
2357 | full,nosmt - Enable MDS mitigation and disable |
2358 | SMT on vulnerable CPUs |
2359 | off - Unconditionally disable MDS mitigation |
2360 | |
2361 | Not specifying this option is equivalent to |
2362 | mds=full. |
2363 | |
2364 | For details see: Documentation/hw-vuln/mds.rst |
2365 | |
2366 | mem=nn[KMG] [KNL,BOOT] Force usage of a specific amount of memory |
2367 | Amount of memory to be used when the kernel is not able |
2368 | to see the whole system memory or for test. |
2369 | [X86] Work as limiting max address. Use together |
2370 | with memmap= to avoid physical address space collisions. |
2371 | Without memmap= PCI devices could be placed at addresses |
2372 | belonging to unused RAM. |
2373 | |
2374 | mem=nopentium [BUGS=X86-32] Disable usage of 4MB pages for kernel |
2375 | memory. |
2376 | |
2377 | memchunk=nn[KMG] |
2378 | [KNL,SH] Allow user to override the default size for |
2379 | per-device physically contiguous DMA buffers. |
2380 | |
2381 | memhp_default_state=online/offline |
2382 | [KNL] Set the initial state for the memory hotplug |
2383 | onlining policy. If not specified, the default value is |
2384 | set according to the |
2385 | CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE kernel config |
2386 | option. |
2387 | See Documentation/memory-hotplug.txt. |
2388 | |
2389 | memmap=exactmap [KNL,X86] Enable setting of an exact |
2390 | E820 memory map, as specified by the user. |
2391 | Such memmap=exactmap lines can be constructed based on |
2392 | BIOS output or other requirements. See the memmap=nn@ss |
2393 | option description. |
2394 | |
2395 | memmap=nn[KMG]@ss[KMG] |
2396 | [KNL] Force usage of a specific region of memory. |
2397 | Region of memory to be used is from ss to ss+nn. |
2398 | |
2399 | memmap=nn[KMG]#ss[KMG] |
2400 | [KNL,ACPI] Mark specific memory as ACPI data. |
2401 | Region of memory to be marked is from ss to ss+nn. |
2402 | |
2403 | memmap=nn[KMG]$ss[KMG] |
2404 | [KNL,ACPI] Mark specific memory as reserved. |
2405 | Region of memory to be reserved is from ss to ss+nn. |
2406 | Example: Exclude memory from 0x18690000-0x1869ffff |
2407 | memmap=64K$0x18690000 |
2408 | or |
2409 | memmap=0x10000$0x18690000 |
2410 | |
2411 | memmap=nn[KMG]!ss[KMG] |
2412 | [KNL,X86] Mark specific memory as protected. |
2413 | Region of memory to be used, from ss to ss+nn. |
2414 | The memory region may be marked as e820 type 12 (0xc) |
2415 | and is NVDIMM or ADR memory. |
2416 | |
2417 | memory_corruption_check=0/1 [X86] |
2418 | Some BIOSes seem to corrupt the first 64k of |
2419 | memory when doing things like suspend/resume. |
2420 | Setting this option will scan the memory |
2421 | looking for corruption. Enabling this will |
2422 | both detect corruption and prevent the kernel |
2423 | from using the memory being corrupted. |
2424 | However, its intended as a diagnostic tool; if |
2425 | repeatable BIOS-originated corruption always |
2426 | affects the same memory, you can use memmap= |
2427 | to prevent the kernel from using that memory. |
2428 | |
2429 | memory_corruption_check_size=size [X86] |
2430 | By default it checks for corruption in the low |
2431 | 64k, making this memory unavailable for normal |
2432 | use. Use this parameter to scan for |
2433 | corruption in more or less memory. |
2434 | |
2435 | memory_corruption_check_period=seconds [X86] |
2436 | By default it checks for corruption every 60 |
2437 | seconds. Use this parameter to check at some |
2438 | other rate. 0 disables periodic checking. |
2439 | |
2440 | memtest= [KNL,X86,ARM] Enable memtest |
2441 | Format: <integer> |
2442 | default : 0 <disable> |
2443 | Specifies the number of memtest passes to be |
2444 | performed. Each pass selects another test |
2445 | pattern from a given set of patterns. Memtest |
2446 | fills the memory with this pattern, validates |
2447 | memory contents and reserves bad memory |
2448 | regions that are detected. |
2449 | |
2450 | meye.*= [HW] Set MotionEye Camera parameters |
2451 | See Documentation/video4linux/meye.txt. |
2452 | |
2453 | mfgpt_irq= [IA-32] Specify the IRQ to use for the |
2454 | Multi-Function General Purpose Timers on AMD Geode |
2455 | platforms. |
2456 | |
2457 | mfgptfix [X86-32] Fix MFGPT timers on AMD Geode platforms when |
2458 | the BIOS has incorrectly applied a workaround. TinyBIOS |
2459 | version 0.98 is known to be affected, 0.99 fixes the |
2460 | problem by letting the user disable the workaround. |
2461 | |
2462 | mga= [HW,DRM] |
2463 | |
2464 | min_addr=nn[KMG] [KNL,BOOT,ia64] All physical memory below this |
2465 | physical address is ignored. |
2466 | |
2467 | mini2440= [ARM,HW,KNL] |
2468 | Format:[0..2][b][c][t] |
2469 | Default: "0tb" |
2470 | MINI2440 configuration specification: |
2471 | 0 - The attached screen is the 3.5" TFT |
2472 | 1 - The attached screen is the 7" TFT |
2473 | 2 - The VGA Shield is attached (1024x768) |
2474 | Leaving out the screen size parameter will not load |
2475 | the TFT driver, and the framebuffer will be left |
2476 | unconfigured. |
2477 | b - Enable backlight. The TFT backlight pin will be |
2478 | linked to the kernel VESA blanking code and a GPIO |
2479 | LED. This parameter is not necessary when using the |
2480 | VGA shield. |
2481 | c - Enable the s3c camera interface. |
2482 | t - Reserved for enabling touchscreen support. The |
2483 | touchscreen support is not enabled in the mainstream |
2484 | kernel as of 2.6.30, a preliminary port can be found |
2485 | in the "bleeding edge" mini2440 support kernel at |
2486 | http://repo.or.cz/w/linux-2.6/mini2440.git |
2487 | |
2488 | mitigations= |
2489 | [X86] Control optional mitigations for CPU |
2490 | vulnerabilities. This is a set of curated, |
2491 | arch-independent options, each of which is an |
2492 | aggregation of existing arch-specific options. |
2493 | |
2494 | off |
2495 | Disable all optional CPU mitigations. This |
2496 | improves system performance, but it may also |
2497 | expose users to several CPU vulnerabilities. |
2498 | Equivalent to: nopti [X86] |
2499 | nospectre_v2 [X86] |
2500 | spectre_v2_user=off [X86] |
2501 | spec_store_bypass_disable=off [X86] |
2502 | l1tf=off [X86] |
2503 | mds=off [X86] |
2504 | |
2505 | auto (default) |
2506 | Mitigate all CPU vulnerabilities, but leave SMT |
2507 | enabled, even if it's vulnerable. This is for |
2508 | users who don't want to be surprised by SMT |
2509 | getting disabled across kernel upgrades, or who |
2510 | have other ways of avoiding SMT-based attacks. |
2511 | Equivalent to: (default behavior) |
2512 | |
2513 | auto,nosmt |
2514 | Mitigate all CPU vulnerabilities, disabling SMT |
2515 | if needed. This is for users who always want to |
2516 | be fully mitigated, even if it means losing SMT. |
2517 | Equivalent to: l1tf=flush,nosmt [X86] |
2518 | mds=full,nosmt [X86] |
2519 | |
2520 | mminit_loglevel= |
2521 | [KNL] When CONFIG_DEBUG_MEMORY_INIT is set, this |
2522 | parameter allows control of the logging verbosity for |
2523 | the additional memory initialisation checks. A value |
2524 | of 0 disables mminit logging and a level of 4 will |
2525 | log everything. Information is printed at KERN_DEBUG |
2526 | so loglevel=8 may also need to be specified. |
2527 | |
2528 | module.sig_enforce |
2529 | [KNL] When CONFIG_MODULE_SIG is set, this means that |
2530 | modules without (valid) signatures will fail to load. |
2531 | Note that if CONFIG_MODULE_SIG_FORCE is set, that |
2532 | is always true, so this option does nothing. |
2533 | |
2534 | module_blacklist= [KNL] Do not load a comma-separated list of |
2535 | modules. Useful for debugging problem modules. |
2536 | |
2537 | mousedev.tap_time= |
2538 | [MOUSE] Maximum time between finger touching and |
2539 | leaving touchpad surface for touch to be considered |
2540 | a tap and be reported as a left button click (for |
2541 | touchpads working in absolute mode only). |
2542 | Format: <msecs> |
2543 | mousedev.xres= [MOUSE] Horizontal screen resolution, used for devices |
2544 | reporting absolute coordinates, such as tablets |
2545 | mousedev.yres= [MOUSE] Vertical screen resolution, used for devices |
2546 | reporting absolute coordinates, such as tablets |
2547 | |
2548 | movablecore=nn[KMG] [KNL,X86,IA-64,PPC] This parameter |
2549 | is similar to kernelcore except it specifies the |
2550 | amount of memory used for migratable allocations. |
2551 | If both kernelcore and movablecore is specified, |
2552 | then kernelcore will be at *least* the specified |
2553 | value but may be more. If movablecore on its own |
2554 | is specified, the administrator must be careful |
2555 | that the amount of memory usable for all allocations |
2556 | is not too small. |
2557 | |
2558 | movable_node [KNL,X86] Boot-time switch to enable the effects |
2559 | of CONFIG_MOVABLE_NODE=y. See mm/Kconfig for details. |
2560 | |
2561 | MTD_Partition= [MTD] |
2562 | Format: <name>,<region-number>,<size>,<offset> |
2563 | |
2564 | MTD_Region= [MTD] Format: |
2565 | <name>,<region-number>[,<base>,<size>,<buswidth>,<altbuswidth>] |
2566 | |
2567 | mtdparts= [MTD] |
2568 | See drivers/mtd/cmdlinepart.c. |
2569 | |
2570 | multitce=off [PPC] This parameter disables the use of the pSeries |
2571 | firmware feature for updating multiple TCE entries |
2572 | at a time. |
2573 | |
2574 | onenand.bdry= [HW,MTD] Flex-OneNAND Boundary Configuration |
2575 | |
2576 | Format: [die0_boundary][,die0_lock][,die1_boundary][,die1_lock] |
2577 | |
2578 | boundary - index of last SLC block on Flex-OneNAND. |
2579 | The remaining blocks are configured as MLC blocks. |
2580 | lock - Configure if Flex-OneNAND boundary should be locked. |
2581 | Once locked, the boundary cannot be changed. |
2582 | 1 indicates lock status, 0 indicates unlock status. |
2583 | |
2584 | mtdset= [ARM] |
2585 | ARM/S3C2412 JIVE boot control |
2586 | |
2587 | See arch/arm/mach-s3c2412/mach-jive.c |
2588 | |
2589 | mtouchusb.raw_coordinates= |
2590 | [HW] Make the MicroTouch USB driver use raw coordinates |
2591 | ('y', default) or cooked coordinates ('n') |
2592 | |
2593 | mtrr_chunk_size=nn[KMG] [X86] |
2594 | used for mtrr cleanup. It is largest continuous chunk |
2595 | that could hold holes aka. UC entries. |
2596 | |
2597 | mtrr_gran_size=nn[KMG] [X86] |
2598 | Used for mtrr cleanup. It is granularity of mtrr block. |
2599 | Default is 1. |
2600 | Large value could prevent small alignment from |
2601 | using up MTRRs. |
2602 | |
2603 | mtrr_spare_reg_nr=n [X86] |
2604 | Format: <integer> |
2605 | Range: 0,7 : spare reg number |
2606 | Default : 1 |
2607 | Used for mtrr cleanup. It is spare mtrr entries number. |
2608 | Set to 2 or more if your graphical card needs more. |
2609 | |
2610 | n2= [NET] SDL Inc. RISCom/N2 synchronous serial card |
2611 | |
2612 | netdev= [NET] Network devices parameters |
2613 | Format: <irq>,<io>,<mem_start>,<mem_end>,<name> |
2614 | Note that mem_start is often overloaded to mean |
2615 | something different and driver-specific. |
2616 | This usage is only documented in each driver source |
2617 | file if at all. |
2618 | |
2619 | nf_conntrack.acct= |
2620 | [NETFILTER] Enable connection tracking flow accounting |
2621 | 0 to disable accounting |
2622 | 1 to enable accounting |
2623 | Default value is 0. |
2624 | |
2625 | nfsaddrs= [NFS] Deprecated. Use ip= instead. |
2626 | See Documentation/filesystems/nfs/nfsroot.txt. |
2627 | |
2628 | nfsroot= [NFS] nfs root filesystem for disk-less boxes. |
2629 | See Documentation/filesystems/nfs/nfsroot.txt. |
2630 | |
2631 | nfsrootdebug [NFS] enable nfsroot debugging messages. |
2632 | See Documentation/filesystems/nfs/nfsroot.txt. |
2633 | |
2634 | nfs.callback_nr_threads= |
2635 | [NFSv4] set the total number of threads that the |
2636 | NFS client will assign to service NFSv4 callback |
2637 | requests. |
2638 | |
2639 | nfs.callback_tcpport= |
2640 | [NFS] set the TCP port on which the NFSv4 callback |
2641 | channel should listen. |
2642 | |
2643 | nfs.cache_getent= |
2644 | [NFS] sets the pathname to the program which is used |
2645 | to update the NFS client cache entries. |
2646 | |
2647 | nfs.cache_getent_timeout= |
2648 | [NFS] sets the timeout after which an attempt to |
2649 | update a cache entry is deemed to have failed. |
2650 | |
2651 | nfs.idmap_cache_timeout= |
2652 | [NFS] set the maximum lifetime for idmapper cache |
2653 | entries. |
2654 | |
2655 | nfs.enable_ino64= |
2656 | [NFS] enable 64-bit inode numbers. |
2657 | If zero, the NFS client will fake up a 32-bit inode |
2658 | number for the readdir() and stat() syscalls instead |
2659 | of returning the full 64-bit number. |
2660 | The default is to return 64-bit inode numbers. |
2661 | |
2662 | nfs.max_session_cb_slots= |
2663 | [NFSv4.1] Sets the maximum number of session |
2664 | slots the client will assign to the callback |
2665 | channel. This determines the maximum number of |
2666 | callbacks the client will process in parallel for |
2667 | a particular server. |
2668 | |
2669 | nfs.max_session_slots= |
2670 | [NFSv4.1] Sets the maximum number of session slots |
2671 | the client will attempt to negotiate with the server. |
2672 | This limits the number of simultaneous RPC requests |
2673 | that the client can send to the NFSv4.1 server. |
2674 | Note that there is little point in setting this |
2675 | value higher than the max_tcp_slot_table_limit. |
2676 | |
2677 | nfs.nfs4_disable_idmapping= |
2678 | [NFSv4] When set to the default of '1', this option |
2679 | ensures that both the RPC level authentication |
2680 | scheme and the NFS level operations agree to use |
2681 | numeric uids/gids if the mount is using the |
2682 | 'sec=sys' security flavour. In effect it is |
2683 | disabling idmapping, which can make migration from |
2684 | legacy NFSv2/v3 systems to NFSv4 easier. |
2685 | Servers that do not support this mode of operation |
2686 | will be autodetected by the client, and it will fall |
2687 | back to using the idmapper. |
2688 | To turn off this behaviour, set the value to '0'. |
2689 | nfs.nfs4_unique_id= |
2690 | [NFS4] Specify an additional fixed unique ident- |
2691 | ification string that NFSv4 clients can insert into |
2692 | their nfs_client_id4 string. This is typically a |
2693 | UUID that is generated at system install time. |
2694 | |
2695 | nfs.send_implementation_id = |
2696 | [NFSv4.1] Send client implementation identification |
2697 | information in exchange_id requests. |
2698 | If zero, no implementation identification information |
2699 | will be sent. |
2700 | The default is to send the implementation identification |
2701 | information. |
2702 | |
2703 | nfs.recover_lost_locks = |
2704 | [NFSv4] Attempt to recover locks that were lost due |
2705 | to a lease timeout on the server. Please note that |
2706 | doing this risks data corruption, since there are |
2707 | no guarantees that the file will remain unchanged |
2708 | after the locks are lost. |
2709 | If you want to enable the kernel legacy behaviour of |
2710 | attempting to recover these locks, then set this |
2711 | parameter to '1'. |
2712 | The default parameter value of '0' causes the kernel |
2713 | not to attempt recovery of lost locks. |
2714 | |
2715 | nfs4.layoutstats_timer = |
2716 | [NFSv4.2] Change the rate at which the kernel sends |
2717 | layoutstats to the pNFS metadata server. |
2718 | |
2719 | Setting this to value to 0 causes the kernel to use |
2720 | whatever value is the default set by the layout |
2721 | driver. A non-zero value sets the minimum interval |
2722 | in seconds between layoutstats transmissions. |
2723 | |
2724 | nfsd.nfs4_disable_idmapping= |
2725 | [NFSv4] When set to the default of '1', the NFSv4 |
2726 | server will return only numeric uids and gids to |
2727 | clients using auth_sys, and will accept numeric uids |
2728 | and gids from such clients. This is intended to ease |
2729 | migration from NFSv2/v3. |
2730 | |
2731 | objlayoutdriver.osd_login_prog= |
2732 | [NFS] [OBJLAYOUT] sets the pathname to the program which |
2733 | is used to automatically discover and login into new |
2734 | osd-targets. Please see: |
2735 | Documentation/filesystems/pnfs.txt for more explanations |
2736 | |
2737 | nmi_debug= [KNL,AVR32,SH] Specify one or more actions to take |
2738 | when a NMI is triggered. |
2739 | Format: [state][,regs][,debounce][,die] |
2740 | |
2741 | nmi_watchdog= [KNL,BUGS=X86] Debugging features for SMP kernels |
2742 | Format: [panic,][nopanic,][num] |
2743 | Valid num: 0 or 1 |
2744 | 0 - turn hardlockup detector in nmi_watchdog off |
2745 | 1 - turn hardlockup detector in nmi_watchdog on |
2746 | When panic is specified, panic when an NMI watchdog |
2747 | timeout occurs (or 'nopanic' to override the opposite |
2748 | default). To disable both hard and soft lockup detectors, |
2749 | please see 'nowatchdog'. |
2750 | This is useful when you use a panic=... timeout and |
2751 | need the box quickly up again. |
2752 | |
2753 | netpoll.carrier_timeout= |
2754 | [NET] Specifies amount of time (in seconds) that |
2755 | netpoll should wait for a carrier. By default netpoll |
2756 | waits 4 seconds. |
2757 | |
2758 | no387 [BUGS=X86-32] Tells the kernel to use the 387 maths |
2759 | emulation library even if a 387 maths coprocessor |
2760 | is present. |
2761 | |
2762 | no_console_suspend |
2763 | [HW] Never suspend the console |
2764 | Disable suspending of consoles during suspend and |
2765 | hibernate operations. Once disabled, debugging |
2766 | messages can reach various consoles while the rest |
2767 | of the system is being put to sleep (ie, while |
2768 | debugging driver suspend/resume hooks). This may |
2769 | not work reliably with all consoles, but is known |
2770 | to work with serial and VGA consoles. |
2771 | To facilitate more flexible debugging, we also add |
2772 | console_suspend, a printk module parameter to control |
2773 | it. Users could use console_suspend (usually |
2774 | /sys/module/printk/parameters/console_suspend) to |
2775 | turn on/off it dynamically. |
2776 | |
2777 | noaliencache [MM, NUMA, SLAB] Disables the allocation of alien |
2778 | caches in the slab allocator. Saves per-node memory, |
2779 | but will impact performance. |
2780 | |
2781 | noalign [KNL,ARM] |
2782 | |
2783 | noaltinstr [S390] Disables alternative instructions patching |
2784 | (CPU alternatives feature). |
2785 | |
2786 | noapic [SMP,APIC] Tells the kernel to not make use of any |
2787 | IOAPICs that may be present in the system. |
2788 | |
2789 | noautogroup Disable scheduler automatic task group creation. |
2790 | |
2791 | nobats [PPC] Do not use BATs for mapping kernel lowmem |
2792 | on "Classic" PPC cores. |
2793 | |
2794 | nocache [ARM] |
2795 | |
2796 | noclflush [BUGS=X86] Don't use the CLFLUSH instruction |
2797 | |
2798 | nodelayacct [KNL] Disable per-task delay accounting |
2799 | |
2800 | nodsp [SH] Disable hardware DSP at boot time. |
2801 | |
2802 | noefi Disable EFI runtime services support. |
2803 | |
2804 | noexec [IA-64] |
2805 | |
2806 | noexec [X86] |
2807 | On X86-32 available only on PAE configured kernels. |
2808 | noexec=on: enable non-executable mappings (default) |
2809 | noexec=off: disable non-executable mappings |
2810 | |
2811 | nosmap [X86] |
2812 | Disable SMAP (Supervisor Mode Access Prevention) |
2813 | even if it is supported by processor. |
2814 | |
2815 | nosmep [X86] |
2816 | Disable SMEP (Supervisor Mode Execution Prevention) |
2817 | even if it is supported by processor. |
2818 | |
2819 | noexec32 [X86-64] |
2820 | This affects only 32-bit executables. |
2821 | noexec32=on: enable non-executable mappings (default) |
2822 | read doesn't imply executable mappings |
2823 | noexec32=off: disable non-executable mappings |
2824 | read implies executable mappings |
2825 | |
2826 | nofpu [MIPS,SH] Disable hardware FPU at boot time. |
2827 | |
2828 | nofxsr [BUGS=X86-32] Disables x86 floating point extended |
2829 | register save and restore. The kernel will only save |
2830 | legacy floating-point registers on task switch. |
2831 | |
2832 | nohugeiomap [KNL,x86] Disable kernel huge I/O mappings. |
2833 | |
2834 | nospectre_v1 [PPC] Disable mitigations for Spectre Variant 1 (bounds |
2835 | check bypass). With this option data leaks are possible |
2836 | in the system. |
2837 | |
2838 | nosmt [KNL,S390] Disable symmetric multithreading (SMT). |
2839 | Equivalent to smt=1. |
2840 | |
2841 | [KNL,x86] Disable symmetric multithreading (SMT). |
2842 | nosmt=force: Force disable SMT, cannot be undone |
2843 | via the sysfs control file. |
2844 | |
2845 | nospectre_v2 [X86,PPC_FSL_BOOK3E] Disable all mitigations for the Spectre variant 2 |
2846 | (indirect branch prediction) vulnerability. System may |
2847 | allow data leaks with this option, which is equivalent |
2848 | to spectre_v2=off. |
2849 | |
2850 | nospec_store_bypass_disable |
2851 | [HW] Disable all mitigations for the Speculative Store Bypass vulnerability |
2852 | |
2853 | noxsave [BUGS=X86] Disables x86 extended register state save |
2854 | and restore using xsave. The kernel will fallback to |
2855 | enabling legacy floating-point and sse state. |
2856 | |
2857 | noxsaveopt [X86] Disables xsaveopt used in saving x86 extended |
2858 | register states. The kernel will fall back to use |
2859 | xsave to save the states. By using this parameter, |
2860 | performance of saving the states is degraded because |
2861 | xsave doesn't support modified optimization while |
2862 | xsaveopt supports it on xsaveopt enabled systems. |
2863 | |
2864 | noxsaves [X86] Disables xsaves and xrstors used in saving and |
2865 | restoring x86 extended register state in compacted |
2866 | form of xsave area. The kernel will fall back to use |
2867 | xsaveopt and xrstor to save and restore the states |
2868 | in standard form of xsave area. By using this |
2869 | parameter, xsave area per process might occupy more |
2870 | memory on xsaves enabled systems. |
2871 | |
2872 | nohlt [BUGS=ARM,SH] Tells the kernel that the sleep(SH) or |
2873 | wfi(ARM) instruction doesn't work correctly and not to |
2874 | use it. This is also useful when using JTAG debugger. |
2875 | |
2876 | no_file_caps Tells the kernel not to honor file capabilities. The |
2877 | only way then for a file to be executed with privilege |
2878 | is to be setuid root or executed by root. |
2879 | |
2880 | nohalt [IA-64] Tells the kernel not to use the power saving |
2881 | function PAL_HALT_LIGHT when idle. This increases |
2882 | power-consumption. On the positive side, it reduces |
2883 | interrupt wake-up latency, which may improve performance |
2884 | in certain environments such as networked servers or |
2885 | real-time systems. |
2886 | |
2887 | nohibernate [HIBERNATION] Disable hibernation and resume. |
2888 | |
2889 | nohz= [KNL] Boottime enable/disable dynamic ticks |
2890 | Valid arguments: on, off |
2891 | Default: on |
2892 | |
2893 | nohz_full= [KNL,BOOT] |
2894 | The argument is a cpu list, as described above. |
2895 | In kernels built with CONFIG_NO_HZ_FULL=y, set |
2896 | the specified list of CPUs whose tick will be stopped |
2897 | whenever possible. The boot CPU will be forced outside |
2898 | the range to maintain the timekeeping. |
2899 | The CPUs in this range must also be included in the |
2900 | rcu_nocbs= set. |
2901 | |
2902 | noiotrap [SH] Disables trapped I/O port accesses. |
2903 | |
2904 | noirqdebug [X86-32] Disables the code which attempts to detect and |
2905 | disable unhandled interrupt sources. |
2906 | |
2907 | no_timer_check [X86,APIC] Disables the code which tests for |
2908 | broken timer IRQ sources. |
2909 | |
2910 | noisapnp [ISAPNP] Disables ISA PnP code. |
2911 | |
2912 | noinitrd [RAM] Tells the kernel not to load any configured |
2913 | initial RAM disk. |
2914 | |
2915 | nointremap [X86-64, Intel-IOMMU] Do not enable interrupt |
2916 | remapping. |
2917 | [Deprecated - use intremap=off] |
2918 | |
2919 | nointroute [IA-64] |
2920 | |
2921 | noinvpcid [X86] Disable the INVPCID cpu feature. |
2922 | |
2923 | nojitter [IA-64] Disables jitter checking for ITC timers. |
2924 | |
2925 | no-kvmclock [X86,KVM] Disable paravirtualized KVM clock driver |
2926 | |
2927 | no-kvmapf [X86,KVM] Disable paravirtualized asynchronous page |
2928 | fault handling. |
2929 | |
2930 | no-steal-acc [X86,KVM] Disable paravirtualized steal time accounting. |
2931 | steal time is computed, but won't influence scheduler |
2932 | behaviour |
2933 | |
2934 | nolapic [X86-32,APIC] Do not enable or use the local APIC. |
2935 | |
2936 | nolapic_timer [X86-32,APIC] Do not use the local APIC timer. |
2937 | |
2938 | noltlbs [PPC] Do not use large page/tlb entries for kernel |
2939 | lowmem mapping on PPC40x and PPC8xx |
2940 | |
2941 | nomca [IA-64] Disable machine check abort handling |
2942 | |
2943 | nomce [X86-32] Disable Machine Check Exception |
2944 | |
2945 | nomfgpt [X86-32] Disable Multi-Function General Purpose |
2946 | Timer usage (for AMD Geode machines). |
2947 | |
2948 | nonmi_ipi [X86] Disable using NMI IPIs during panic/reboot to |
2949 | shutdown the other cpus. Instead use the REBOOT_VECTOR |
2950 | irq. |
2951 | |
2952 | nomodule Disable module load |
2953 | |
2954 | nopat [X86] Disable PAT (page attribute table extension of |
2955 | pagetables) support. |
2956 | |
2957 | nopcid [X86-64] Disable the PCID cpu feature. |
2958 | |
2959 | norandmaps Don't use address space randomization. Equivalent to |
2960 | echo 0 > /proc/sys/kernel/randomize_va_space |
2961 | |
2962 | noreplace-smp [X86-32,SMP] Don't replace SMP instructions |
2963 | with UP alternatives |
2964 | |
2965 | nordrand [X86] Disable kernel use of the RDRAND and |
2966 | RDSEED instructions even if they are supported |
2967 | by the processor. RDRAND and RDSEED are still |
2968 | available to user space applications. |
2969 | |
2970 | noresume [SWSUSP] Disables resume and restores original swap |
2971 | space. |
2972 | |
2973 | no-scroll [VGA] Disables scrollback. |
2974 | This is required for the Braillex ib80-piezo Braille |
2975 | reader made by F.H. Papenmeier (Germany). |
2976 | |
2977 | nosbagart [IA-64] |
2978 | |
2979 | nosep [BUGS=X86-32] Disables x86 SYSENTER/SYSEXIT support. |
2980 | |
2981 | nosmp [SMP] Tells an SMP kernel to act as a UP kernel, |
2982 | and disable the IO APIC. legacy for "maxcpus=0". |
2983 | |
2984 | nosoftlockup [KNL] Disable the soft-lockup detector. |
2985 | |
2986 | nosync [HW,M68K] Disables sync negotiation for all devices. |
2987 | |
2988 | notsc [BUGS=X86-32] Disable Time Stamp Counter |
2989 | |
2990 | nowatchdog [KNL] Disable both lockup detectors, i.e. |
2991 | soft-lockup and NMI watchdog (hard-lockup). |
2992 | |
2993 | nowb [ARM] |
2994 | |
2995 | nox2apic [X86-64,APIC] Do not enable x2APIC mode. |
2996 | |
2997 | cpu0_hotplug [X86] Turn on CPU0 hotplug feature when |
2998 | CONFIG_BOOTPARAM_HOTPLUG_CPU0 is off. |
2999 | Some features depend on CPU0. Known dependencies are: |
3000 | 1. Resume from suspend/hibernate depends on CPU0. |
3001 | Suspend/hibernate will fail if CPU0 is offline and you |
3002 | need to online CPU0 before suspend/hibernate. |
3003 | 2. PIC interrupts also depend on CPU0. CPU0 can't be |
3004 | removed if a PIC interrupt is detected. |
3005 | It's said poweroff/reboot may depend on CPU0 on some |
3006 | machines although I haven't seen such issues so far |
3007 | after CPU0 is offline on a few tested machines. |
3008 | If the dependencies are under your control, you can |
3009 | turn on cpu0_hotplug. |
3010 | |
3011 | nptcg= [IA-64] Override max number of concurrent global TLB |
3012 | purges which is reported from either PAL_VM_SUMMARY or |
3013 | SAL PALO. |
3014 | |
3015 | nr_cpus= [SMP] Maximum number of processors that an SMP kernel |
3016 | could support. nr_cpus=n : n >= 1 limits the kernel to |
3017 | support 'n' processors. It could be larger than the |
3018 | number of already plugged CPU during bootup, later in |
3019 | runtime you can physically add extra cpu until it reaches |
3020 | n. So during boot up some boot time memory for per-cpu |
3021 | variables need be pre-allocated for later physical cpu |
3022 | hot plugging. |
3023 | |
3024 | nr_uarts= [SERIAL] maximum number of UARTs to be registered. |
3025 | |
3026 | numa_balancing= [KNL,X86] Enable or disable automatic NUMA balancing. |
3027 | Allowed values are enable and disable |
3028 | |
3029 | numa_zonelist_order= [KNL, BOOT] Select zonelist order for NUMA. |
3030 | one of ['zone', 'node', 'default'] can be specified |
3031 | This can be set from sysctl after boot. |
3032 | See Documentation/sysctl/vm.txt for details. |
3033 | |
3034 | ohci1394_dma=early [HW] enable debugging via the ohci1394 driver. |
3035 | See Documentation/debugging-via-ohci1394.txt for more |
3036 | info. |
3037 | |
3038 | olpc_ec_timeout= [OLPC] ms delay when issuing EC commands |
3039 | Rather than timing out after 20 ms if an EC |
3040 | command is not properly ACKed, override the length |
3041 | of the timeout. We have interrupts disabled while |
3042 | waiting for the ACK, so if this is set too high |
3043 | interrupts *may* be lost! |
3044 | |
3045 | omap_mux= [OMAP] Override bootloader pin multiplexing. |
3046 | Format: <mux_mode0.mode_name=value>... |
3047 | For example, to override I2C bus2: |
3048 | omap_mux=i2c2_scl.i2c2_scl=0x100,i2c2_sda.i2c2_sda=0x100 |
3049 | |
3050 | oprofile.timer= [HW] |
3051 | Use timer interrupt instead of performance counters |
3052 | |
3053 | oprofile.cpu_type= Force an oprofile cpu type |
3054 | This might be useful if you have an older oprofile |
3055 | userland or if you want common events. |
3056 | Format: { arch_perfmon } |
3057 | arch_perfmon: [X86] Force use of architectural |
3058 | perfmon on Intel CPUs instead of the |
3059 | CPU specific event set. |
3060 | timer: [X86] Force use of architectural NMI |
3061 | timer mode (see also oprofile.timer |
3062 | for generic hr timer mode) |
3063 | |
3064 | oops=panic Always panic on oopses. Default is to just kill the |
3065 | process, but there is a small probability of |
3066 | deadlocking the machine. |
3067 | This will also cause panics on machine check exceptions. |
3068 | Useful together with panic=30 to trigger a reboot. |
3069 | |
3070 | OSS [HW,OSS] |
3071 | See Documentation/sound/oss/oss-parameters.txt |
3072 | |
3073 | page_owner= [KNL] Boot-time page_owner enabling option. |
3074 | Storage of the information about who allocated |
3075 | each page is disabled in default. With this switch, |
3076 | we can turn it on. |
3077 | on: enable the feature |
3078 | |
3079 | page_poison= [KNL] Boot-time parameter changing the state of |
3080 | poisoning on the buddy allocator. |
3081 | off: turn off poisoning |
3082 | on: turn on poisoning |
3083 | |
3084 | panic= [KNL] Kernel behaviour on panic: delay <timeout> |
3085 | timeout > 0: seconds before rebooting |
3086 | timeout = 0: wait forever |
3087 | timeout < 0: reboot immediately |
3088 | Format: <timeout> |
3089 | |
3090 | panic_on_warn panic() instead of WARN(). Useful to cause kdump |
3091 | on a WARN(). |
3092 | |
3093 | crash_kexec_post_notifiers |
3094 | Run kdump after running panic-notifiers and dumping |
3095 | kmsg. This only for the users who doubt kdump always |
3096 | succeeds in any situation. |
3097 | Note that this also increases risks of kdump failure, |
3098 | because some panic notifiers can make the crashed |
3099 | kernel more unstable. |
3100 | |
3101 | parkbd.port= [HW] Parallel port number the keyboard adapter is |
3102 | connected to, default is 0. |
3103 | Format: <parport#> |
3104 | parkbd.mode= [HW] Parallel port keyboard adapter mode of operation, |
3105 | 0 for XT, 1 for AT (default is AT). |
3106 | Format: <mode> |
3107 | |
3108 | parport= [HW,PPT] Specify parallel ports. 0 disables. |
3109 | Format: { 0 | auto | 0xBBB[,IRQ[,DMA]] } |
3110 | Use 'auto' to force the driver to use any |
3111 | IRQ/DMA settings detected (the default is to |
3112 | ignore detected IRQ/DMA settings because of |
3113 | possible conflicts). You can specify the base |
3114 | address, IRQ, and DMA settings; IRQ and DMA |
3115 | should be numbers, or 'auto' (for using detected |
3116 | settings on that particular port), or 'nofifo' |
3117 | (to avoid using a FIFO even if it is detected). |
3118 | Parallel ports are assigned in the order they |
3119 | are specified on the command line, starting |
3120 | with parport0. |
3121 | |
3122 | parport_init_mode= [HW,PPT] |
3123 | Configure VIA parallel port to operate in |
3124 | a specific mode. This is necessary on Pegasos |
3125 | computer where firmware has no options for setting |
3126 | up parallel port mode and sets it to spp. |
3127 | Currently this function knows 686a and 8231 chips. |
3128 | Format: [spp|ps2|epp|ecp|ecpepp] |
3129 | |
3130 | pause_on_oops= |
3131 | Halt all CPUs after the first oops has been printed for |
3132 | the specified number of seconds. This is to be used if |
3133 | your oopses keep scrolling off the screen. |
3134 | |
3135 | pcbit= [HW,ISDN] |
3136 | |
3137 | pcd. [PARIDE] |
3138 | See header of drivers/block/paride/pcd.c. |
3139 | See also Documentation/blockdev/paride.txt. |
3140 | |
3141 | pci=option[,option...] [PCI] various PCI subsystem options: |
3142 | earlydump [X86] dump PCI config space before the kernel |
3143 | changes anything |
3144 | off [X86] don't probe for the PCI bus |
3145 | bios [X86-32] force use of PCI BIOS, don't access |
3146 | the hardware directly. Use this if your machine |
3147 | has a non-standard PCI host bridge. |
3148 | nobios [X86-32] disallow use of PCI BIOS, only direct |
3149 | hardware access methods are allowed. Use this |
3150 | if you experience crashes upon bootup and you |
3151 | suspect they are caused by the BIOS. |
3152 | conf1 [X86] Force use of PCI Configuration Access |
3153 | Mechanism 1 (config address in IO port 0xCF8, |
3154 | data in IO port 0xCFC, both 32-bit). |
3155 | conf2 [X86] Force use of PCI Configuration Access |
3156 | Mechanism 2 (IO port 0xCF8 is an 8-bit port for |
3157 | the function, IO port 0xCFA, also 8-bit, sets |
3158 | bus number. The config space is then accessed |
3159 | through ports 0xC000-0xCFFF). |
3160 | See http://wiki.osdev.org/PCI for more info |
3161 | on the configuration access mechanisms. |
3162 | noaer [PCIE] If the PCIEAER kernel config parameter is |
3163 | enabled, this kernel boot option can be used to |
3164 | disable the use of PCIE advanced error reporting. |
3165 | nodomains [PCI] Disable support for multiple PCI |
3166 | root domains (aka PCI segments, in ACPI-speak). |
3167 | nommconf [X86] Disable use of MMCONFIG for PCI |
3168 | Configuration |
3169 | check_enable_amd_mmconf [X86] check for and enable |
3170 | properly configured MMIO access to PCI |
3171 | config space on AMD family 10h CPU |
3172 | nomsi [MSI] If the PCI_MSI kernel config parameter is |
3173 | enabled, this kernel boot option can be used to |
3174 | disable the use of MSI interrupts system-wide. |
3175 | noioapicquirk [APIC] Disable all boot interrupt quirks. |
3176 | Safety option to keep boot IRQs enabled. This |
3177 | should never be necessary. |
3178 | ioapicreroute [APIC] Enable rerouting of boot IRQs to the |
3179 | primary IO-APIC for bridges that cannot disable |
3180 | boot IRQs. This fixes a source of spurious IRQs |
3181 | when the system masks IRQs. |
3182 | noioapicreroute [APIC] Disable workaround that uses the |
3183 | boot IRQ equivalent of an IRQ that connects to |
3184 | a chipset where boot IRQs cannot be disabled. |
3185 | The opposite of ioapicreroute. |
3186 | biosirq [X86-32] Use PCI BIOS calls to get the interrupt |
3187 | routing table. These calls are known to be buggy |
3188 | on several machines and they hang the machine |
3189 | when used, but on other computers it's the only |
3190 | way to get the interrupt routing table. Try |
3191 | this option if the kernel is unable to allocate |
3192 | IRQs or discover secondary PCI buses on your |
3193 | motherboard. |
3194 | rom [X86] Assign address space to expansion ROMs. |
3195 | Use with caution as certain devices share |
3196 | address decoders between ROMs and other |
3197 | resources. |
3198 | norom [X86] Do not assign address space to |
3199 | expansion ROMs that do not already have |
3200 | BIOS assigned address ranges. |
3201 | nobar [X86] Do not assign address space to the |
3202 | BARs that weren't assigned by the BIOS. |
3203 | irqmask=0xMMMM [X86] Set a bit mask of IRQs allowed to be |
3204 | assigned automatically to PCI devices. You can |
3205 | make the kernel exclude IRQs of your ISA cards |
3206 | this way. |
3207 | pirqaddr=0xAAAAA [X86] Specify the physical address |
3208 | of the PIRQ table (normally generated |
3209 | by the BIOS) if it is outside the |
3210 | F0000h-100000h range. |
3211 | lastbus=N [X86] Scan all buses thru bus #N. Can be |
3212 | useful if the kernel is unable to find your |
3213 | secondary buses and you want to tell it |
3214 | explicitly which ones they are. |
3215 | assign-busses [X86] Always assign all PCI bus |
3216 | numbers ourselves, overriding |
3217 | whatever the firmware may have done. |
3218 | usepirqmask [X86] Honor the possible IRQ mask stored |
3219 | in the BIOS $PIR table. This is needed on |
3220 | some systems with broken BIOSes, notably |
3221 | some HP Pavilion N5400 and Omnibook XE3 |
3222 | notebooks. This will have no effect if ACPI |
3223 | IRQ routing is enabled. |
3224 | noacpi [X86] Do not use ACPI for IRQ routing |
3225 | or for PCI scanning. |
3226 | use_crs [X86] Use PCI host bridge window information |
3227 | from ACPI. On BIOSes from 2008 or later, this |
3228 | is enabled by default. If you need to use this, |
3229 | please report a bug. |
3230 | nocrs [X86] Ignore PCI host bridge windows from ACPI. |
3231 | If you need to use this, please report a bug. |
3232 | routeirq Do IRQ routing for all PCI devices. |
3233 | This is normally done in pci_enable_device(), |
3234 | so this option is a temporary workaround |
3235 | for broken drivers that don't call it. |
3236 | skip_isa_align [X86] do not align io start addr, so can |
3237 | handle more pci cards |
3238 | noearly [X86] Don't do any early type 1 scanning. |
3239 | This might help on some broken boards which |
3240 | machine check when some devices' config space |
3241 | is read. But various workarounds are disabled |
3242 | and some IOMMU drivers will not work. |
3243 | bfsort Sort PCI devices into breadth-first order. |
3244 | This sorting is done to get a device |
3245 | order compatible with older (<= 2.4) kernels. |
3246 | nobfsort Don't sort PCI devices into breadth-first order. |
3247 | pcie_bus_tune_off Disable PCIe MPS (Max Payload Size) |
3248 | tuning and use the BIOS-configured MPS defaults. |
3249 | pcie_bus_safe Set every device's MPS to the largest value |
3250 | supported by all devices below the root complex. |
3251 | pcie_bus_perf Set device MPS to the largest allowable MPS |
3252 | based on its parent bus. Also set MRRS (Max |
3253 | Read Request Size) to the largest supported |
3254 | value (no larger than the MPS that the device |
3255 | or bus can support) for best performance. |
3256 | pcie_bus_peer2peer Set every device's MPS to 128B, which |
3257 | every device is guaranteed to support. This |
3258 | configuration allows peer-to-peer DMA between |
3259 | any pair of devices, possibly at the cost of |
3260 | reduced performance. This also guarantees |
3261 | that hot-added devices will work. |
3262 | cbiosize=nn[KMG] The fixed amount of bus space which is |
3263 | reserved for the CardBus bridge's IO window. |
3264 | The default value is 256 bytes. |
3265 | cbmemsize=nn[KMG] The fixed amount of bus space which is |
3266 | reserved for the CardBus bridge's memory |
3267 | window. The default value is 64 megabytes. |
3268 | resource_alignment= |
3269 | Format: |
3270 | [<order of align>@][<domain>:]<bus>:<slot>.<func>[; ...] |
3271 | [<order of align>@]pci:<vendor>:<device>\ |
3272 | [:<subvendor>:<subdevice>][; ...] |
3273 | Specifies alignment and device to reassign |
3274 | aligned memory resources. |
3275 | If <order of align> is not specified, |
3276 | PAGE_SIZE is used as alignment. |
3277 | PCI-PCI bridge can be specified, if resource |
3278 | windows need to be expanded. |
3279 | To specify the alignment for several |
3280 | instances of a device, the PCI vendor, |
3281 | device, subvendor, and subdevice may be |
3282 | specified, e.g., 4096@pci:8086:9c22:103c:198f |
3283 | ecrc= Enable/disable PCIe ECRC (transaction layer |
3284 | end-to-end CRC checking). |
3285 | bios: Use BIOS/firmware settings. This is the |
3286 | the default. |
3287 | off: Turn ECRC off |
3288 | on: Turn ECRC on. |
3289 | hpiosize=nn[KMG] The fixed amount of bus space which is |
3290 | reserved for hotplug bridge's IO window. |
3291 | Default size is 256 bytes. |
3292 | hpmemsize=nn[KMG] The fixed amount of bus space which is |
3293 | reserved for hotplug bridge's memory window. |
3294 | Default size is 2 megabytes. |
3295 | hpbussize=nn The minimum amount of additional bus numbers |
3296 | reserved for buses below a hotplug bridge. |
3297 | Default is 1. |
3298 | realloc= Enable/disable reallocating PCI bridge resources |
3299 | if allocations done by BIOS are too small to |
3300 | accommodate resources required by all child |
3301 | devices. |
3302 | off: Turn realloc off |
3303 | on: Turn realloc on |
3304 | realloc same as realloc=on |
3305 | noari do not use PCIe ARI. |
3306 | pcie_scan_all Scan all possible PCIe devices. Otherwise we |
3307 | only look for one device below a PCIe downstream |
3308 | port. |
3309 | |
3310 | pcie_aspm= [PCIE] Forcibly enable or disable PCIe Active State Power |
3311 | Management. |
3312 | off Disable ASPM. |
3313 | force Enable ASPM even on devices that claim not to support it. |
3314 | WARNING: Forcing ASPM on may cause system lockups. |
3315 | |
3316 | pcie_hp= [PCIE] PCI Express Hotplug driver options: |
3317 | nomsi Do not use MSI for PCI Express Native Hotplug (this |
3318 | makes all PCIe ports use INTx for hotplug services). |
3319 | |
3320 | pcie_ports= [PCIE] PCIe ports handling: |
3321 | auto Ask the BIOS whether or not to use native PCIe services |
3322 | associated with PCIe ports (PME, hot-plug, AER). Use |
3323 | them only if that is allowed by the BIOS. |
3324 | native Use native PCIe services associated with PCIe ports |
3325 | unconditionally. |
3326 | compat Treat PCIe ports as PCI-to-PCI bridges, disable the PCIe |
3327 | ports driver. |
3328 | |
3329 | pcie_port_pm= [PCIE] PCIe port power management handling: |
3330 | off Disable power management of all PCIe ports |
3331 | force Forcibly enable power management of all PCIe ports |
3332 | |
3333 | pcie_pme= [PCIE,PM] Native PCIe PME signaling options: |
3334 | nomsi Do not use MSI for native PCIe PME signaling (this makes |
3335 | all PCIe root ports use INTx for all services). |
3336 | |
3337 | pcmv= [HW,PCMCIA] BadgePAD 4 |
3338 | |
3339 | pd_ignore_unused |
3340 | [PM] |
3341 | Keep all power-domains already enabled by bootloader on, |
3342 | even if no driver has claimed them. This is useful |
3343 | for debug and development, but should not be |
3344 | needed on a platform with proper driver support. |
3345 | |
3346 | pd. [PARIDE] |
3347 | See Documentation/blockdev/paride.txt. |
3348 | |
3349 | pdcchassis= [PARISC,HW] Disable/Enable PDC Chassis Status codes at |
3350 | boot time. |
3351 | Format: { 0 | 1 } |
3352 | See arch/parisc/kernel/pdc_chassis.c |
3353 | |
3354 | percpu_alloc= Select which percpu first chunk allocator to use. |
3355 | Currently supported values are "embed" and "page". |
3356 | Archs may support subset or none of the selections. |
3357 | See comments in mm/percpu.c for details on each |
3358 | allocator. This parameter is primarily for debugging |
3359 | and performance comparison. |
3360 | |
3361 | pf. [PARIDE] |
3362 | See Documentation/blockdev/paride.txt. |
3363 | |
3364 | pg. [PARIDE] |
3365 | See Documentation/blockdev/paride.txt. |
3366 | |
3367 | pirq= [SMP,APIC] Manual mp-table setup |
3368 | See Documentation/x86/i386/IO-APIC.txt. |
3369 | |
3370 | plip= [PPT,NET] Parallel port network link |
3371 | Format: { parport<nr> | timid | 0 } |
3372 | See also Documentation/parport.txt. |
3373 | |
3374 | pmtmr= [X86] Manual setup of pmtmr I/O Port. |
3375 | Override pmtimer IOPort with a hex value. |
3376 | e.g. pmtmr=0x508 |
3377 | |
3378 | pnp.debug=1 [PNP] |
3379 | Enable PNP debug messages (depends on the |
3380 | CONFIG_PNP_DEBUG_MESSAGES option). Change at run-time |
3381 | via /sys/module/pnp/parameters/debug. We always show |
3382 | current resource usage; turning this on also shows |
3383 | possible settings and some assignment information. |
3384 | |
3385 | pnpacpi= [ACPI] |
3386 | { off } |
3387 | |
3388 | pnpbios= [ISAPNP] |
3389 | { on | off | curr | res | no-curr | no-res } |
3390 | |
3391 | pnp_reserve_irq= |
3392 | [ISAPNP] Exclude IRQs for the autoconfiguration |
3393 | |
3394 | pnp_reserve_dma= |
3395 | [ISAPNP] Exclude DMAs for the autoconfiguration |
3396 | |
3397 | pnp_reserve_io= [ISAPNP] Exclude I/O ports for the autoconfiguration |
3398 | Ranges are in pairs (I/O port base and size). |
3399 | |
3400 | pnp_reserve_mem= |
3401 | [ISAPNP] Exclude memory regions for the |
3402 | autoconfiguration. |
3403 | Ranges are in pairs (memory base and size). |
3404 | |
3405 | ports= [IP_VS_FTP] IPVS ftp helper module |
3406 | Default is 21. |
3407 | Up to 8 (IP_VS_APP_MAX_PORTS) ports |
3408 | may be specified. |
3409 | Format: <port>,<port>.... |
3410 | |
3411 | ppc_strict_facility_enable |
3412 | [PPC] This option catches any kernel floating point, |
3413 | Altivec, VSX and SPE outside of regions specifically |
3414 | allowed (eg kernel_enable_fpu()/kernel_disable_fpu()). |
3415 | There is some performance impact when enabling this. |
3416 | |
3417 | print-fatal-signals= |
3418 | [KNL] debug: print fatal signals |
3419 | |
3420 | If enabled, warn about various signal handling |
3421 | related application anomalies: too many signals, |
3422 | too many POSIX.1 timers, fatal signals causing a |
3423 | coredump - etc. |
3424 | |
3425 | If you hit the warning due to signal overflow, |
3426 | you might want to try "ulimit -i unlimited". |
3427 | |
3428 | default: off. |
3429 | |
3430 | printk.always_kmsg_dump= |
3431 | Trigger kmsg_dump for cases other than kernel oops or |
3432 | panics |
3433 | Format: <bool> (1/Y/y=enable, 0/N/n=disable) |
3434 | default: disabled |
3435 | |
3436 | printk.devkmsg={on,off,ratelimit} |
3437 | Control writing to /dev/kmsg. |
3438 | on - unlimited logging to /dev/kmsg from userspace |
3439 | off - logging to /dev/kmsg disabled |
3440 | ratelimit - ratelimit the logging |
3441 | Default: ratelimit |
3442 | |
3443 | printk.time= Show timing data prefixed to each printk message line |
3444 | Format: <bool> (1/Y/y=enable, 0/N/n=disable) |
3445 | |
3446 | processor.max_cstate= [HW,ACPI] |
3447 | Limit processor to maximum C-state |
3448 | max_cstate=9 overrides any DMI blacklist limit. |
3449 | |
3450 | processor.nocst [HW,ACPI] |
3451 | Ignore the _CST method to determine C-states, |
3452 | instead using the legacy FADT method |
3453 | |
3454 | profile= [KNL] Enable kernel profiling via /proc/profile |
3455 | Format: [schedule,]<number> |
3456 | Param: "schedule" - profile schedule points. |
3457 | Param: <number> - step/bucket size as a power of 2 for |
3458 | statistical time based profiling. |
3459 | Param: "sleep" - profile D-state sleeping (millisecs). |
3460 | Requires CONFIG_SCHEDSTATS |
3461 | Param: "kvm" - profile VM exits. |
3462 | |
3463 | prompt_ramdisk= [RAM] List of RAM disks to prompt for floppy disk |
3464 | before loading. |
3465 | See Documentation/blockdev/ramdisk.txt. |
3466 | |
3467 | psi= [KNL] Enable or disable pressure stall information |
3468 | tracking. |
3469 | Format: <bool> |
3470 | |
3471 | psmouse.proto= [HW,MOUSE] Highest PS2 mouse protocol extension to |
3472 | probe for; one of (bare|imps|exps|lifebook|any). |
3473 | psmouse.rate= [HW,MOUSE] Set desired mouse report rate, in reports |
3474 | per second. |
3475 | psmouse.resetafter= [HW,MOUSE] |
3476 | Try to reset the device after so many bad packets |
3477 | (0 = never). |
3478 | psmouse.resolution= |
3479 | [HW,MOUSE] Set desired mouse resolution, in dpi. |
3480 | psmouse.smartscroll= |
3481 | [HW,MOUSE] Controls Logitech smartscroll autorepeat. |
3482 | 0 = disabled, 1 = enabled (default). |
3483 | |
3484 | pstore.backend= Specify the name of the pstore backend to use |
3485 | |
3486 | pt. [PARIDE] |
3487 | See Documentation/blockdev/paride.txt. |
3488 | |
3489 | pti= [X86_64] Control Page Table Isolation of user and |
3490 | kernel address spaces. Disabling this feature |
3491 | removes hardening, but improves performance of |
3492 | system calls and interrupts. |
3493 | |
3494 | on - unconditionally enable |
3495 | off - unconditionally disable |
3496 | auto - kernel detects whether your CPU model is |
3497 | vulnerable to issues that PTI mitigates |
3498 | |
3499 | Not specifying this option is equivalent to pti=auto. |
3500 | |
3501 | nopti [X86_64] |
3502 | Equivalent to pti=off |
3503 | |
3504 | pty.legacy_count= |
3505 | [KNL] Number of legacy pty's. Overwrites compiled-in |
3506 | default number. |
3507 | |
3508 | quiet [KNL] Disable most log messages |
3509 | |
3510 | r128= [HW,DRM] |
3511 | |
3512 | raid= [HW,RAID] |
3513 | See Documentation/md.txt. |
3514 | |
3515 | ramdisk_size= [RAM] Sizes of RAM disks in kilobytes |
3516 | See Documentation/blockdev/ramdisk.txt. |
3517 | |
3518 | rcu_nocbs= [KNL] |
3519 | The argument is a cpu list, as described above. |
3520 | |
3521 | In kernels built with CONFIG_RCU_NOCB_CPU=y, set |
3522 | the specified list of CPUs to be no-callback CPUs. |
3523 | Invocation of these CPUs' RCU callbacks will |
3524 | be offloaded to "rcuox/N" kthreads created for |
3525 | that purpose, where "x" is "b" for RCU-bh, "p" |
3526 | for RCU-preempt, and "s" for RCU-sched, and "N" |
3527 | is the CPU number. This reduces OS jitter on the |
3528 | offloaded CPUs, which can be useful for HPC and |
3529 | real-time workloads. It can also improve energy |
3530 | efficiency for asymmetric multiprocessors. |
3531 | |
3532 | rcu_nocb_poll [KNL] |
3533 | Rather than requiring that offloaded CPUs |
3534 | (specified by rcu_nocbs= above) explicitly |
3535 | awaken the corresponding "rcuoN" kthreads, |
3536 | make these kthreads poll for callbacks. |
3537 | This improves the real-time response for the |
3538 | offloaded CPUs by relieving them of the need to |
3539 | wake up the corresponding kthread, but degrades |
3540 | energy efficiency by requiring that the kthreads |
3541 | periodically wake up to do the polling. |
3542 | |
3543 | rcutree.blimit= [KNL] |
3544 | Set maximum number of finished RCU callbacks to |
3545 | process in one batch. |
3546 | |
3547 | rcutree.dump_tree= [KNL] |
3548 | Dump the structure of the rcu_node combining tree |
3549 | out at early boot. This is used for diagnostic |
3550 | purposes, to verify correct tree setup. |
3551 | |
3552 | rcutree.gp_cleanup_delay= [KNL] |
3553 | Set the number of jiffies to delay each step of |
3554 | RCU grace-period cleanup. This only has effect |
3555 | when CONFIG_RCU_TORTURE_TEST_SLOW_CLEANUP is set. |
3556 | |
3557 | rcutree.gp_init_delay= [KNL] |
3558 | Set the number of jiffies to delay each step of |
3559 | RCU grace-period initialization. This only has |
3560 | effect when CONFIG_RCU_TORTURE_TEST_SLOW_INIT |
3561 | is set. |
3562 | |
3563 | rcutree.gp_preinit_delay= [KNL] |
3564 | Set the number of jiffies to delay each step of |
3565 | RCU grace-period pre-initialization, that is, |
3566 | the propagation of recent CPU-hotplug changes up |
3567 | the rcu_node combining tree. This only has effect |
3568 | when CONFIG_RCU_TORTURE_TEST_SLOW_PREINIT is set. |
3569 | |
3570 | rcutree.rcu_fanout_exact= [KNL] |
3571 | Disable autobalancing of the rcu_node combining |
3572 | tree. This is used by rcutorture, and might |
3573 | possibly be useful for architectures having high |
3574 | cache-to-cache transfer latencies. |
3575 | |
3576 | rcutree.rcu_fanout_leaf= [KNL] |
3577 | Change the number of CPUs assigned to each |
3578 | leaf rcu_node structure. Useful for very |
3579 | large systems, which will choose the value 64, |
3580 | and for NUMA systems with large remote-access |
3581 | latencies, which will choose a value aligned |
3582 | with the appropriate hardware boundaries. |
3583 | |
3584 | rcutree.jiffies_till_sched_qs= [KNL] |
3585 | Set required age in jiffies for a |
3586 | given grace period before RCU starts |
3587 | soliciting quiescent-state help from |
3588 | rcu_note_context_switch(). |
3589 | |
3590 | rcutree.jiffies_till_first_fqs= [KNL] |
3591 | Set delay from grace-period initialization to |
3592 | first attempt to force quiescent states. |
3593 | Units are jiffies, minimum value is zero, |
3594 | and maximum value is HZ. |
3595 | |
3596 | rcutree.jiffies_till_next_fqs= [KNL] |
3597 | Set delay between subsequent attempts to force |
3598 | quiescent states. Units are jiffies, minimum |
3599 | value is one, and maximum value is HZ. |
3600 | |
3601 | rcutree.kthread_prio= [KNL,BOOT] |
3602 | Set the SCHED_FIFO priority of the RCU per-CPU |
3603 | kthreads (rcuc/N). This value is also used for |
3604 | the priority of the RCU boost threads (rcub/N) |
3605 | and for the RCU grace-period kthreads (rcu_bh, |
3606 | rcu_preempt, and rcu_sched). If RCU_BOOST is |
3607 | set, valid values are 1-99 and the default is 1 |
3608 | (the least-favored priority). Otherwise, when |
3609 | RCU_BOOST is not set, valid values are 0-99 and |
3610 | the default is zero (non-realtime operation). |
3611 | |
3612 | rcutree.rcu_nocb_leader_stride= [KNL] |
3613 | Set the number of NOCB kthread groups, which |
3614 | defaults to the square root of the number of |
3615 | CPUs. Larger numbers reduces the wakeup overhead |
3616 | on the per-CPU grace-period kthreads, but increases |
3617 | that same overhead on each group's leader. |
3618 | |
3619 | rcutree.qhimark= [KNL] |
3620 | Set threshold of queued RCU callbacks beyond which |
3621 | batch limiting is disabled. |
3622 | |
3623 | rcutree.qlowmark= [KNL] |
3624 | Set threshold of queued RCU callbacks below which |
3625 | batch limiting is re-enabled. |
3626 | |
3627 | rcutree.rcu_idle_gp_delay= [KNL] |
3628 | Set wakeup interval for idle CPUs that have |
3629 | RCU callbacks (RCU_FAST_NO_HZ=y). |
3630 | |
3631 | rcutree.rcu_idle_lazy_gp_delay= [KNL] |
3632 | Set wakeup interval for idle CPUs that have |
3633 | only "lazy" RCU callbacks (RCU_FAST_NO_HZ=y). |
3634 | Lazy RCU callbacks are those which RCU can |
3635 | prove do nothing more than free memory. |
3636 | |
3637 | rcuperf.gp_exp= [KNL] |
3638 | Measure performance of expedited synchronous |
3639 | grace-period primitives. |
3640 | |
3641 | rcuperf.holdoff= [KNL] |
3642 | Set test-start holdoff period. The purpose of |
3643 | this parameter is to delay the start of the |
3644 | test until boot completes in order to avoid |
3645 | interference. |
3646 | |
3647 | rcuperf.nreaders= [KNL] |
3648 | Set number of RCU readers. The value -1 selects |
3649 | N, where N is the number of CPUs. A value |
3650 | "n" less than -1 selects N-n+1, where N is again |
3651 | the number of CPUs. For example, -2 selects N |
3652 | (the number of CPUs), -3 selects N+1, and so on. |
3653 | A value of "n" less than or equal to -N selects |
3654 | a single reader. |
3655 | |
3656 | rcuperf.nwriters= [KNL] |
3657 | Set number of RCU writers. The values operate |
3658 | the same as for rcuperf.nreaders. |
3659 | N, where N is the number of CPUs |
3660 | |
3661 | rcuperf.perf_runnable= [BOOT] |
3662 | Start rcuperf running at boot time. |
3663 | |
3664 | rcuperf.shutdown= [KNL] |
3665 | Shut the system down after performance tests |
3666 | complete. This is useful for hands-off automated |
3667 | testing. |
3668 | |
3669 | rcuperf.perf_type= [KNL] |
3670 | Specify the RCU implementation to test. |
3671 | |
3672 | rcuperf.verbose= [KNL] |
3673 | Enable additional printk() statements. |
3674 | |
3675 | rcutorture.cbflood_inter_holdoff= [KNL] |
3676 | Set holdoff time (jiffies) between successive |
3677 | callback-flood tests. |
3678 | |
3679 | rcutorture.cbflood_intra_holdoff= [KNL] |
3680 | Set holdoff time (jiffies) between successive |
3681 | bursts of callbacks within a given callback-flood |
3682 | test. |
3683 | |
3684 | rcutorture.cbflood_n_burst= [KNL] |
3685 | Set the number of bursts making up a given |
3686 | callback-flood test. Set this to zero to |
3687 | disable callback-flood testing. |
3688 | |
3689 | rcutorture.cbflood_n_per_burst= [KNL] |
3690 | Set the number of callbacks to be registered |
3691 | in a given burst of a callback-flood test. |
3692 | |
3693 | rcutorture.fqs_duration= [KNL] |
3694 | Set duration of force_quiescent_state bursts |
3695 | in microseconds. |
3696 | |
3697 | rcutorture.fqs_holdoff= [KNL] |
3698 | Set holdoff time within force_quiescent_state bursts |
3699 | in microseconds. |
3700 | |
3701 | rcutorture.fqs_stutter= [KNL] |
3702 | Set wait time between force_quiescent_state bursts |
3703 | in seconds. |
3704 | |
3705 | rcutorture.gp_cond= [KNL] |
3706 | Use conditional/asynchronous update-side |
3707 | primitives, if available. |
3708 | |
3709 | rcutorture.gp_exp= [KNL] |
3710 | Use expedited update-side primitives, if available. |
3711 | |
3712 | rcutorture.gp_normal= [KNL] |
3713 | Use normal (non-expedited) asynchronous |
3714 | update-side primitives, if available. |
3715 | |
3716 | rcutorture.gp_sync= [KNL] |
3717 | Use normal (non-expedited) synchronous |
3718 | update-side primitives, if available. If all |
3719 | of rcutorture.gp_cond=, rcutorture.gp_exp=, |
3720 | rcutorture.gp_normal=, and rcutorture.gp_sync= |
3721 | are zero, rcutorture acts as if is interpreted |
3722 | they are all non-zero. |
3723 | |
3724 | rcutorture.n_barrier_cbs= [KNL] |
3725 | Set callbacks/threads for rcu_barrier() testing. |
3726 | |
3727 | rcutorture.nfakewriters= [KNL] |
3728 | Set number of concurrent RCU writers. These just |
3729 | stress RCU, they don't participate in the actual |
3730 | test, hence the "fake". |
3731 | |
3732 | rcutorture.nreaders= [KNL] |
3733 | Set number of RCU readers. The value -1 selects |
3734 | N-1, where N is the number of CPUs. A value |
3735 | "n" less than -1 selects N-n-2, where N is again |
3736 | the number of CPUs. For example, -2 selects N |
3737 | (the number of CPUs), -3 selects N+1, and so on. |
3738 | |
3739 | rcutorture.object_debug= [KNL] |
3740 | Enable debug-object double-call_rcu() testing. |
3741 | |
3742 | rcutorture.onoff_holdoff= [KNL] |
3743 | Set time (s) after boot for CPU-hotplug testing. |
3744 | |
3745 | rcutorture.onoff_interval= [KNL] |
3746 | Set time (s) between CPU-hotplug operations, or |
3747 | zero to disable CPU-hotplug testing. |
3748 | |
3749 | rcutorture.shuffle_interval= [KNL] |
3750 | Set task-shuffle interval (s). Shuffling tasks |
3751 | allows some CPUs to go into dyntick-idle mode |
3752 | during the rcutorture test. |
3753 | |
3754 | rcutorture.shutdown_secs= [KNL] |
3755 | Set time (s) after boot system shutdown. This |
3756 | is useful for hands-off automated testing. |
3757 | |
3758 | rcutorture.stall_cpu= [KNL] |
3759 | Duration of CPU stall (s) to test RCU CPU stall |
3760 | warnings, zero to disable. |
3761 | |
3762 | rcutorture.stall_cpu_holdoff= [KNL] |
3763 | Time to wait (s) after boot before inducing stall. |
3764 | |
3765 | rcutorture.stat_interval= [KNL] |
3766 | Time (s) between statistics printk()s. |
3767 | |
3768 | rcutorture.stutter= [KNL] |
3769 | Time (s) to stutter testing, for example, specifying |
3770 | five seconds causes the test to run for five seconds, |
3771 | wait for five seconds, and so on. This tests RCU's |
3772 | ability to transition abruptly to and from idle. |
3773 | |
3774 | rcutorture.test_boost= [KNL] |
3775 | Test RCU priority boosting? 0=no, 1=maybe, 2=yes. |
3776 | "Maybe" means test if the RCU implementation |
3777 | under test support RCU priority boosting. |
3778 | |
3779 | rcutorture.test_boost_duration= [KNL] |
3780 | Duration (s) of each individual boost test. |
3781 | |
3782 | rcutorture.test_boost_interval= [KNL] |
3783 | Interval (s) between each boost test. |
3784 | |
3785 | rcutorture.test_no_idle_hz= [KNL] |
3786 | Test RCU's dyntick-idle handling. See also the |
3787 | rcutorture.shuffle_interval parameter. |
3788 | |
3789 | rcutorture.torture_runnable= [BOOT] |
3790 | Start rcutorture running at boot time. |
3791 | |
3792 | rcutorture.torture_type= [KNL] |
3793 | Specify the RCU implementation to test. |
3794 | |
3795 | rcutorture.verbose= [KNL] |
3796 | Enable additional printk() statements. |
3797 | |
3798 | rcupdate.rcu_cpu_stall_suppress= [KNL] |
3799 | Suppress RCU CPU stall warning messages. |
3800 | |
3801 | rcupdate.rcu_cpu_stall_timeout= [KNL] |
3802 | Set timeout for RCU CPU stall warning messages. |
3803 | |
3804 | rcupdate.rcu_expedited= [KNL] |
3805 | Use expedited grace-period primitives, for |
3806 | example, synchronize_rcu_expedited() instead |
3807 | of synchronize_rcu(). This reduces latency, |
3808 | but can increase CPU utilization, degrade |
3809 | real-time latency, and degrade energy efficiency. |
3810 | No effect on CONFIG_TINY_RCU kernels. |
3811 | |
3812 | rcupdate.rcu_normal= [KNL] |
3813 | Use only normal grace-period primitives, |
3814 | for example, synchronize_rcu() instead of |
3815 | synchronize_rcu_expedited(). This improves |
3816 | real-time latency, CPU utilization, and |
3817 | energy efficiency, but can expose users to |
3818 | increased grace-period latency. This parameter |
3819 | overrides rcupdate.rcu_expedited. No effect on |
3820 | CONFIG_TINY_RCU kernels. |
3821 | |
3822 | rcupdate.rcu_normal_after_boot= [KNL] |
3823 | Once boot has completed (that is, after |
3824 | rcu_end_inkernel_boot() has been invoked), use |
3825 | only normal grace-period primitives. No effect |
3826 | on CONFIG_TINY_RCU kernels. |
3827 | |
3828 | rcupdate.rcu_task_stall_timeout= [KNL] |
3829 | Set timeout in jiffies for RCU task stall warning |
3830 | messages. Disable with a value less than or equal |
3831 | to zero. |
3832 | |
3833 | rcupdate.rcu_self_test= [KNL] |
3834 | Run the RCU early boot self tests |
3835 | |
3836 | rcupdate.rcu_self_test_bh= [KNL] |
3837 | Run the RCU bh early boot self tests |
3838 | |
3839 | rcupdate.rcu_self_test_sched= [KNL] |
3840 | Run the RCU sched early boot self tests |
3841 | |
3842 | rdinit= [KNL] |
3843 | Format: <full_path> |
3844 | Run specified binary instead of /init from the ramdisk, |
3845 | used for early userspace startup. See initrd. |
3846 | |
3847 | reboot= [KNL] |
3848 | Format (x86 or x86_64): |
3849 | [w[arm] | c[old] | h[ard] | s[oft] | g[pio]] \ |
3850 | [[,]s[mp]#### \ |
3851 | [[,]b[ios] | a[cpi] | k[bd] | t[riple] | e[fi] | p[ci]] \ |
3852 | [[,]f[orce] |
3853 | Where reboot_mode is one of warm (soft) or cold (hard) or gpio, |
3854 | reboot_type is one of bios, acpi, kbd, triple, efi, or pci, |
3855 | reboot_force is either force or not specified, |
3856 | reboot_cpu is s[mp]#### with #### being the processor |
3857 | to be used for rebooting. |
3858 | |
3859 | relax_domain_level= |
3860 | [KNL, SMP] Set scheduler's default relax_domain_level. |
3861 | See Documentation/cgroup-v1/cpusets.txt. |
3862 | |
3863 | relative_sleep_states= |
3864 | [SUSPEND] Use sleep state labeling where the deepest |
3865 | state available other than hibernation is always "mem". |
3866 | Format: { "0" | "1" } |
3867 | 0 -- Traditional sleep state labels. |
3868 | 1 -- Relative sleep state labels. |
3869 | |
3870 | reserve= [KNL,BUGS] Force the kernel to ignore some iomem area |
3871 | |
3872 | reservetop= [X86-32] |
3873 | Format: nn[KMG] |
3874 | Reserves a hole at the top of the kernel virtual |
3875 | address space. |
3876 | |
3877 | reservelow= [X86] |
3878 | Format: nn[K] |
3879 | Set the amount of memory to reserve for BIOS at |
3880 | the bottom of the address space. |
3881 | |
3882 | reset_devices [KNL] Force drivers to reset the underlying device |
3883 | during initialization. |
3884 | |
3885 | resume= [SWSUSP] |
3886 | Specify the partition device for software suspend |
3887 | Format: |
3888 | {/dev/<dev> | PARTUUID=<uuid> | <int>:<int> | <hex>} |
3889 | |
3890 | resume_offset= [SWSUSP] |
3891 | Specify the offset from the beginning of the partition |
3892 | given by "resume=" at which the swap header is located, |
3893 | in <PAGE_SIZE> units (needed only for swap files). |
3894 | See Documentation/power/swsusp-and-swap-files.txt |
3895 | |
3896 | resumedelay= [HIBERNATION] Delay (in seconds) to pause before attempting to |
3897 | read the resume files |
3898 | |
3899 | resumewait [HIBERNATION] Wait (indefinitely) for resume device to show up. |
3900 | Useful for devices that are detected asynchronously |
3901 | (e.g. USB and MMC devices). |
3902 | |
3903 | hibernate= [HIBERNATION] |
3904 | noresume Don't check if there's a hibernation image |
3905 | present during boot. |
3906 | nocompress Don't compress/decompress hibernation images. |
3907 | no Disable hibernation and resume. |
3908 | protect_image Turn on image protection during restoration |
3909 | (that will set all pages holding image data |
3910 | during restoration read-only). |
3911 | |
3912 | retain_initrd [RAM] Keep initrd memory after extraction |
3913 | |
3914 | rfkill.default_state= |
3915 | 0 "airplane mode". All wifi, bluetooth, wimax, gps, fm, |
3916 | etc. communication is blocked by default. |
3917 | 1 Unblocked. |
3918 | |
3919 | rfkill.master_switch_mode= |
3920 | 0 The "airplane mode" button does nothing. |
3921 | 1 The "airplane mode" button toggles between everything |
3922 | blocked and the previous configuration. |
3923 | 2 The "airplane mode" button toggles between everything |
3924 | blocked and everything unblocked. |
3925 | |
3926 | rhash_entries= [KNL,NET] |
3927 | Set number of hash buckets for route cache |
3928 | |
3929 | ro [KNL] Mount root device read-only on boot |
3930 | |
3931 | rodata= [KNL] |
3932 | on Mark read-only kernel memory as read-only (default). |
3933 | off Leave read-only kernel memory writable for debugging. |
3934 | |
3935 | rockchip.usb_uart |
3936 | Enable the uart passthrough on the designated usb port |
3937 | on Rockchip SoCs. When active, the signals of the |
3938 | debug-uart get routed to the D+ and D- pins of the usb |
3939 | port and the regular usb controller gets disabled. |
3940 | |
3941 | root= [KNL] Root filesystem |
3942 | See name_to_dev_t comment in init/do_mounts.c. |
3943 | |
3944 | rootdelay= [KNL] Delay (in seconds) to pause before attempting to |
3945 | mount the root filesystem |
3946 | |
3947 | rootflags= [KNL] Set root filesystem mount option string |
3948 | |
3949 | rootfstype= [KNL] Set root filesystem type |
3950 | |
3951 | rootwait [KNL] Wait (indefinitely) for root device to show up. |
3952 | Useful for devices that are detected asynchronously |
3953 | (e.g. USB and MMC devices). |
3954 | |
3955 | rproc_mem=nn[KMG][@address] |
3956 | [KNL,ARM,CMA] Remoteproc physical memory block. |
3957 | Memory area to be used by remote processor image, |
3958 | managed by CMA. |
3959 | |
3960 | rw [KNL] Mount root device read-write on boot |
3961 | |
3962 | S [KNL] Run init in single mode |
3963 | |
3964 | s390_iommu= [HW,S390] |
3965 | Set s390 IOTLB flushing mode |
3966 | strict |
3967 | With strict flushing every unmap operation will result in |
3968 | an IOTLB flush. Default is lazy flushing before reuse, |
3969 | which is faster. |
3970 | |
3971 | sa1100ir [NET] |
3972 | See drivers/net/irda/sa1100_ir.c. |
3973 | |
3974 | sbni= [NET] Granch SBNI12 leased line adapter |
3975 | |
3976 | sched_debug [KNL] Enables verbose scheduler debug messages. |
3977 | |
3978 | schedstats= [KNL,X86] Enable or disable scheduled statistics. |
3979 | Allowed values are enable and disable. This feature |
3980 | incurs a small amount of overhead in the scheduler |
3981 | but is useful for debugging and performance tuning. |
3982 | |
3983 | skew_tick= [KNL] Offset the periodic timer tick per cpu to mitigate |
3984 | xtime_lock contention on larger systems, and/or RCU lock |
3985 | contention on all systems with CONFIG_MAXSMP set. |
3986 | Format: { "0" | "1" } |
3987 | 0 -- disable. (may be 1 via CONFIG_CMDLINE="skew_tick=1" |
3988 | 1 -- enable. |
3989 | Note: increases power consumption, thus should only be |
3990 | enabled if running jitter sensitive (HPC/RT) workloads. |
3991 | |
3992 | security= [SECURITY] Choose a security module to enable at boot. |
3993 | If this boot parameter is not specified, only the first |
3994 | security module asking for security registration will be |
3995 | loaded. An invalid security module name will be treated |
3996 | as if no module has been chosen. |
3997 | |
3998 | selinux= [SELINUX] Disable or enable SELinux at boot time. |
3999 | Format: { "0" | "1" } |
4000 | See security/selinux/Kconfig help text. |
4001 | 0 -- disable. |
4002 | 1 -- enable. |
4003 | Default value is set via kernel config option. |
4004 | If enabled at boot time, /selinux/disable can be used |
4005 | later to disable prior to initial policy load. |
4006 | |
4007 | apparmor= [APPARMOR] Disable or enable AppArmor at boot time |
4008 | Format: { "0" | "1" } |
4009 | See security/apparmor/Kconfig help text |
4010 | 0 -- disable. |
4011 | 1 -- enable. |
4012 | Default value is set via kernel config option. |
4013 | |
4014 | serialnumber [BUGS=X86-32] |
4015 | |
4016 | shapers= [NET] |
4017 | Maximal number of shapers. |
4018 | |
4019 | show_msr= [x86] show boot-time MSR settings |
4020 | Format: { <integer> } |
4021 | Show boot-time (BIOS-initialized) MSR settings. |
4022 | The parameter means the number of CPUs to show, |
4023 | for example 1 means boot CPU only. |
4024 | |
4025 | simeth= [IA-64] |
4026 | simscsi= |
4027 | |
4028 | slram= [HW,MTD] |
4029 | |
4030 | slab_nomerge [MM] |
4031 | Disable merging of slabs with similar size. May be |
4032 | necessary if there is some reason to distinguish |
4033 | allocs to different slabs. Debug options disable |
4034 | merging on their own. |
4035 | For more information see Documentation/vm/slub.txt. |
4036 | |
4037 | slab_max_order= [MM, SLAB] |
4038 | Determines the maximum allowed order for slabs. |
4039 | A high setting may cause OOMs due to memory |
4040 | fragmentation. Defaults to 1 for systems with |
4041 | more than 32MB of RAM, 0 otherwise. |
4042 | |
4043 | slub_debug[=options[,slabs]] [MM, SLUB] |
4044 | Enabling slub_debug allows one to determine the |
4045 | culprit if slab objects become corrupted. Enabling |
4046 | slub_debug can create guard zones around objects and |
4047 | may poison objects when not in use. Also tracks the |
4048 | last alloc / free. For more information see |
4049 | Documentation/vm/slub.txt. |
4050 | |
4051 | slub_memcg_sysfs= [MM, SLUB] |
4052 | Determines whether to enable sysfs directories for |
4053 | memory cgroup sub-caches. 1 to enable, 0 to disable. |
4054 | The default is determined by CONFIG_SLUB_MEMCG_SYSFS_ON. |
4055 | Enabling this can lead to a very high number of debug |
4056 | directories and files being created under |
4057 | /sys/kernel/slub. |
4058 | |
4059 | slub_max_order= [MM, SLUB] |
4060 | Determines the maximum allowed order for slabs. |
4061 | A high setting may cause OOMs due to memory |
4062 | fragmentation. For more information see |
4063 | Documentation/vm/slub.txt. |
4064 | |
4065 | slub_min_objects= [MM, SLUB] |
4066 | The minimum number of objects per slab. SLUB will |
4067 | increase the slab order up to slub_max_order to |
4068 | generate a sufficiently large slab able to contain |
4069 | the number of objects indicated. The higher the number |
4070 | of objects the smaller the overhead of tracking slabs |
4071 | and the less frequently locks need to be acquired. |
4072 | For more information see Documentation/vm/slub.txt. |
4073 | |
4074 | slub_min_order= [MM, SLUB] |
4075 | Determines the minimum page order for slabs. Must be |
4076 | lower than slub_max_order. |
4077 | For more information see Documentation/vm/slub.txt. |
4078 | |
4079 | slub_nomerge [MM, SLUB] |
4080 | Same with slab_nomerge. This is supported for legacy. |
4081 | See slab_nomerge for more information. |
4082 | |
4083 | smart2= [HW] |
4084 | Format: <io1>[,<io2>[,...,<io8>]] |
4085 | |
4086 | smsc-ircc2.nopnp [HW] Don't use PNP to discover SMC devices |
4087 | smsc-ircc2.ircc_cfg= [HW] Device configuration I/O port |
4088 | smsc-ircc2.ircc_sir= [HW] SIR base I/O port |
4089 | smsc-ircc2.ircc_fir= [HW] FIR base I/O port |
4090 | smsc-ircc2.ircc_irq= [HW] IRQ line |
4091 | smsc-ircc2.ircc_dma= [HW] DMA channel |
4092 | smsc-ircc2.ircc_transceiver= [HW] Transceiver type: |
4093 | 0: Toshiba Satellite 1800 (GP data pin select) |
4094 | 1: Fast pin select (default) |
4095 | 2: ATC IRMode |
4096 | |
4097 | smt [KNL,S390] Set the maximum number of threads (logical |
4098 | CPUs) to use per physical CPU on systems capable of |
4099 | symmetric multithreading (SMT). Will be capped to the |
4100 | actual hardware limit. |
4101 | Format: <integer> |
4102 | Default: -1 (no limit) |
4103 | |
4104 | softlockup_panic= |
4105 | [KNL] Should the soft-lockup detector generate panics. |
4106 | Format: <integer> |
4107 | |
4108 | softlockup_all_cpu_backtrace= |
4109 | [KNL] Should the soft-lockup detector generate |
4110 | backtraces on all cpus. |
4111 | Format: <integer> |
4112 | |
4113 | sonypi.*= [HW] Sony Programmable I/O Control Device driver |
4114 | See Documentation/laptops/sonypi.txt |
4115 | |
4116 | spectre_v2= [X86] Control mitigation of Spectre variant 2 |
4117 | (indirect branch speculation) vulnerability. |
4118 | The default operation protects the kernel from |
4119 | user space attacks. |
4120 | |
4121 | on - unconditionally enable, implies |
4122 | spectre_v2_user=on |
4123 | off - unconditionally disable, implies |
4124 | spectre_v2_user=off |
4125 | auto - kernel detects whether your CPU model is |
4126 | vulnerable |
4127 | |
4128 | Selecting 'on' will, and 'auto' may, choose a |
4129 | mitigation method at run time according to the |
4130 | CPU, the available microcode, the setting of the |
4131 | CONFIG_RETPOLINE configuration option, and the |
4132 | compiler with which the kernel was built. |
4133 | |
4134 | Selecting 'on' will also enable the mitigation |
4135 | against user space to user space task attacks. |
4136 | |
4137 | Selecting 'off' will disable both the kernel and |
4138 | the user space protections. |
4139 | |
4140 | Specific mitigations can also be selected manually: |
4141 | |
4142 | retpoline - replace indirect branches |
4143 | retpoline,generic - google's original retpoline |
4144 | retpoline,amd - AMD-specific minimal thunk |
4145 | |
4146 | Not specifying this option is equivalent to |
4147 | spectre_v2=auto. |
4148 | |
4149 | spectre_v2_user= |
4150 | [X86] Control mitigation of Spectre variant 2 |
4151 | (indirect branch speculation) vulnerability between |
4152 | user space tasks |
4153 | |
4154 | on - Unconditionally enable mitigations. Is |
4155 | enforced by spectre_v2=on |
4156 | |
4157 | off - Unconditionally disable mitigations. Is |
4158 | enforced by spectre_v2=off |
4159 | |
4160 | prctl - Indirect branch speculation is enabled, |
4161 | but mitigation can be enabled via prctl |
4162 | per thread. The mitigation control state |
4163 | is inherited on fork. |
4164 | |
4165 | prctl,ibpb |
4166 | - Like "prctl" above, but only STIBP is |
4167 | controlled per thread. IBPB is issued |
4168 | always when switching between different user |
4169 | space processes. |
4170 | |
4171 | seccomp |
4172 | - Same as "prctl" above, but all seccomp |
4173 | threads will enable the mitigation unless |
4174 | they explicitly opt out. |
4175 | |
4176 | seccomp,ibpb |
4177 | - Like "seccomp" above, but only STIBP is |
4178 | controlled per thread. IBPB is issued |
4179 | always when switching between different |
4180 | user space processes. |
4181 | |
4182 | auto - Kernel selects the mitigation depending on |
4183 | the available CPU features and vulnerability. |
4184 | |
4185 | Default mitigation: |
4186 | If CONFIG_SECCOMP=y then "seccomp", otherwise "prctl" |
4187 | |
4188 | Not specifying this option is equivalent to |
4189 | spectre_v2_user=auto. |
4190 | |
4191 | spec_store_bypass_disable= |
4192 | [HW] Control Speculative Store Bypass (SSB) Disable mitigation |
4193 | (Speculative Store Bypass vulnerability) |
4194 | |
4195 | Certain CPUs are vulnerable to an exploit against a |
4196 | a common industry wide performance optimization known |
4197 | as "Speculative Store Bypass" in which recent stores |
4198 | to the same memory location may not be observed by |
4199 | later loads during speculative execution. The idea |
4200 | is that such stores are unlikely and that they can |
4201 | be detected prior to instruction retirement at the |
4202 | end of a particular speculation execution window. |
4203 | |
4204 | In vulnerable processors, the speculatively forwarded |
4205 | store can be used in a cache side channel attack, for |
4206 | example to read memory to which the attacker does not |
4207 | directly have access (e.g. inside sandboxed code). |
4208 | |
4209 | This parameter controls whether the Speculative Store |
4210 | Bypass optimization is used. |
4211 | |
4212 | on - Unconditionally disable Speculative Store Bypass |
4213 | off - Unconditionally enable Speculative Store Bypass |
4214 | auto - Kernel detects whether the CPU model contains an |
4215 | implementation of Speculative Store Bypass and |
4216 | picks the most appropriate mitigation. If the |
4217 | CPU is not vulnerable, "off" is selected. If the |
4218 | CPU is vulnerable the default mitigation is |
4219 | architecture and Kconfig dependent. See below. |
4220 | prctl - Control Speculative Store Bypass per thread |
4221 | via prctl. Speculative Store Bypass is enabled |
4222 | for a process by default. The state of the control |
4223 | is inherited on fork. |
4224 | seccomp - Same as "prctl" above, but all seccomp threads |
4225 | will disable SSB unless they explicitly opt out. |
4226 | |
4227 | Not specifying this option is equivalent to |
4228 | spec_store_bypass_disable=auto. |
4229 | |
4230 | Default mitigations: |
4231 | X86: If CONFIG_SECCOMP=y "seccomp", otherwise "prctl" |
4232 | |
4233 | spia_io_base= [HW,MTD] |
4234 | spia_fio_base= |
4235 | spia_pedr= |
4236 | spia_peddr= |
4237 | |
4238 | ssbd= [ARM64,HW] |
4239 | Speculative Store Bypass Disable control |
4240 | |
4241 | On CPUs that are vulnerable to the Speculative |
4242 | Store Bypass vulnerability and offer a |
4243 | firmware based mitigation, this parameter |
4244 | indicates how the mitigation should be used: |
4245 | |
4246 | force-on: Unconditionally enable mitigation for |
4247 | for both kernel and userspace |
4248 | force-off: Unconditionally disable mitigation for |
4249 | for both kernel and userspace |
4250 | kernel: Always enable mitigation in the |
4251 | kernel, and offer a prctl interface |
4252 | to allow userspace to register its |
4253 | interest in being mitigated too. |
4254 | |
4255 | stack_guard_gap= [MM] |
4256 | override the default stack gap protection. The value |
4257 | is in page units and it defines how many pages prior |
4258 | to (for stacks growing down) resp. after (for stacks |
4259 | growing up) the main stack are reserved for no other |
4260 | mapping. Default value is 256 pages. |
4261 | |
4262 | stacktrace [FTRACE] |
4263 | Enabled the stack tracer on boot up. |
4264 | |
4265 | stacktrace_filter=[function-list] |
4266 | [FTRACE] Limit the functions that the stack tracer |
4267 | will trace at boot up. function-list is a comma separated |
4268 | list of functions. This list can be changed at run |
4269 | time by the stack_trace_filter file in the debugfs |
4270 | tracing directory. Note, this enables stack tracing |
4271 | and the stacktrace above is not needed. |
4272 | |
4273 | sti= [PARISC,HW] |
4274 | Format: <num> |
4275 | Set the STI (builtin display/keyboard on the HP-PARISC |
4276 | machines) console (graphic card) which should be used |
4277 | as the initial boot-console. |
4278 | See also comment in drivers/video/console/sticore.c. |
4279 | |
4280 | sti_font= [HW] |
4281 | See comment in drivers/video/console/sticore.c. |
4282 | |
4283 | stifb= [HW] |
4284 | Format: bpp:<bpp1>[:<bpp2>[:<bpp3>...]] |
4285 | |
4286 | sunrpc.min_resvport= |
4287 | sunrpc.max_resvport= |
4288 | [NFS,SUNRPC] |
4289 | SunRPC servers often require that client requests |
4290 | originate from a privileged port (i.e. a port in the |
4291 | range 0 < portnr < 1024). |
4292 | An administrator who wishes to reserve some of these |
4293 | ports for other uses may adjust the range that the |
4294 | kernel's sunrpc client considers to be privileged |
4295 | using these two parameters to set the minimum and |
4296 | maximum port values. |
4297 | |
4298 | sunrpc.svc_rpc_per_connection_limit= |
4299 | [NFS,SUNRPC] |
4300 | Limit the number of requests that the server will |
4301 | process in parallel from a single connection. |
4302 | The default value is 0 (no limit). |
4303 | |
4304 | sunrpc.pool_mode= |
4305 | [NFS] |
4306 | Control how the NFS server code allocates CPUs to |
4307 | service thread pools. Depending on how many NICs |
4308 | you have and where their interrupts are bound, this |
4309 | option will affect which CPUs will do NFS serving. |
4310 | Note: this parameter cannot be changed while the |
4311 | NFS server is running. |
4312 | |
4313 | auto the server chooses an appropriate mode |
4314 | automatically using heuristics |
4315 | global a single global pool contains all CPUs |
4316 | percpu one pool for each CPU |
4317 | pernode one pool for each NUMA node (equivalent |
4318 | to global on non-NUMA machines) |
4319 | |
4320 | sunrpc.tcp_slot_table_entries= |
4321 | sunrpc.udp_slot_table_entries= |
4322 | [NFS,SUNRPC] |
4323 | Sets the upper limit on the number of simultaneous |
4324 | RPC calls that can be sent from the client to a |
4325 | server. Increasing these values may allow you to |
4326 | improve throughput, but will also increase the |
4327 | amount of memory reserved for use by the client. |
4328 | |
4329 | suspend.pm_test_delay= |
4330 | [SUSPEND] |
4331 | Sets the number of seconds to remain in a suspend test |
4332 | mode before resuming the system (see |
4333 | /sys/power/pm_test). Only available when CONFIG_PM_DEBUG |
4334 | is set. Default value is 5. |
4335 | |
4336 | swapaccount=[0|1] |
4337 | [KNL] Enable accounting of swap in memory resource |
4338 | controller if no parameter or 1 is given or disable |
4339 | it if 0 is given (See Documentation/cgroup-v1/memory.txt) |
4340 | |
4341 | swiotlb= [ARM,IA-64,PPC,MIPS,X86] |
4342 | Format: { <int> | force | noforce } |
4343 | <int> -- Number of I/O TLB slabs |
4344 | force -- force using of bounce buffers even if they |
4345 | wouldn't be automatically used by the kernel |
4346 | noforce -- Never use bounce buffers (for debugging) |
4347 | |
4348 | switches= [HW,M68k] |
4349 | |
4350 | sysfs.deprecated=0|1 [KNL] |
4351 | Enable/disable old style sysfs layout for old udev |
4352 | on older distributions. When this option is enabled |
4353 | very new udev will not work anymore. When this option |
4354 | is disabled (or CONFIG_SYSFS_DEPRECATED not compiled) |
4355 | in older udev will not work anymore. |
4356 | Default depends on CONFIG_SYSFS_DEPRECATED_V2 set in |
4357 | the kernel configuration. |
4358 | |
4359 | sysrq_always_enabled |
4360 | [KNL] |
4361 | Ignore sysrq setting - this boot parameter will |
4362 | neutralize any effect of /proc/sys/kernel/sysrq. |
4363 | Useful for debugging. |
4364 | |
4365 | tcpmhash_entries= [KNL,NET] |
4366 | Set the number of tcp_metrics_hash slots. |
4367 | Default value is 8192 or 16384 depending on total |
4368 | ram pages. This is used to specify the TCP metrics |
4369 | cache size. See Documentation/networking/ip-sysctl.txt |
4370 | "tcp_no_metrics_save" section for more details. |
4371 | |
4372 | tdfx= [HW,DRM] |
4373 | |
4374 | test_suspend= [SUSPEND][,N] |
4375 | Specify "mem" (for Suspend-to-RAM) or "standby" (for |
4376 | standby suspend) or "freeze" (for suspend type freeze) |
4377 | as the system sleep state during system startup with |
4378 | the optional capability to repeat N number of times. |
4379 | The system is woken from this state using a |
4380 | wakeup-capable RTC alarm. |
4381 | |
4382 | thash_entries= [KNL,NET] |
4383 | Set number of hash buckets for TCP connection |
4384 | |
4385 | thermal.act= [HW,ACPI] |
4386 | -1: disable all active trip points in all thermal zones |
4387 | <degrees C>: override all lowest active trip points |
4388 | |
4389 | thermal.crt= [HW,ACPI] |
4390 | -1: disable all critical trip points in all thermal zones |
4391 | <degrees C>: override all critical trip points |
4392 | |
4393 | thermal.nocrt= [HW,ACPI] |
4394 | Set to disable actions on ACPI thermal zone |
4395 | critical and hot trip points. |
4396 | |
4397 | thermal.off= [HW,ACPI] |
4398 | 1: disable ACPI thermal control |
4399 | |
4400 | thermal.psv= [HW,ACPI] |
4401 | -1: disable all passive trip points |
4402 | <degrees C>: override all passive trip points to this |
4403 | value |
4404 | |
4405 | thermal.tzp= [HW,ACPI] |
4406 | Specify global default ACPI thermal zone polling rate |
4407 | <deci-seconds>: poll all this frequency |
4408 | 0: no polling (default) |
4409 | |
4410 | threadirqs [KNL] |
4411 | Force threading of all interrupt handlers except those |
4412 | marked explicitly IRQF_NO_THREAD. |
4413 | |
4414 | tmem [KNL,XEN] |
4415 | Enable the Transcendent memory driver if built-in. |
4416 | |
4417 | tmem.cleancache=0|1 [KNL, XEN] |
4418 | Default is on (1). Disable the usage of the cleancache |
4419 | API to send anonymous pages to the hypervisor. |
4420 | |
4421 | tmem.frontswap=0|1 [KNL, XEN] |
4422 | Default is on (1). Disable the usage of the frontswap |
4423 | API to send swap pages to the hypervisor. If disabled |
4424 | the selfballooning and selfshrinking are force disabled. |
4425 | |
4426 | tmem.selfballooning=0|1 [KNL, XEN] |
4427 | Default is on (1). Disable the driving of swap pages |
4428 | to the hypervisor. |
4429 | |
4430 | tmem.selfshrinking=0|1 [KNL, XEN] |
4431 | Default is on (1). Partial swapoff that immediately |
4432 | transfers pages from Xen hypervisor back to the |
4433 | kernel based on different criteria. |
4434 | |
4435 | topology= [S390] |
4436 | Format: {off | on} |
4437 | Specify if the kernel should make use of the cpu |
4438 | topology information if the hardware supports this. |
4439 | The scheduler will make use of this information and |
4440 | e.g. base its process migration decisions on it. |
4441 | Default is on. |
4442 | |
4443 | topology_updates= [KNL, PPC, NUMA] |
4444 | Format: {off} |
4445 | Specify if the kernel should ignore (off) |
4446 | topology updates sent by the hypervisor to this |
4447 | LPAR. |
4448 | |
4449 | tp720= [HW,PS2] |
4450 | |
4451 | tpm_suspend_pcr=[HW,TPM] |
4452 | Format: integer pcr id |
4453 | Specify that at suspend time, the tpm driver |
4454 | should extend the specified pcr with zeros, |
4455 | as a workaround for some chips which fail to |
4456 | flush the last written pcr on TPM_SaveState. |
4457 | This will guarantee that all the other pcrs |
4458 | are saved. |
4459 | |
4460 | trace_buf_size=nn[KMG] |
4461 | [FTRACE] will set tracing buffer size on each cpu. |
4462 | |
4463 | trace_event=[event-list] |
4464 | [FTRACE] Set and start specified trace events in order |
4465 | to facilitate early boot debugging. The event-list is a |
4466 | comma separated list of trace events to enable. See |
4467 | also Documentation/trace/events.txt |
4468 | |
4469 | trace_options=[option-list] |
4470 | [FTRACE] Enable or disable tracer options at boot. |
4471 | The option-list is a comma delimited list of options |
4472 | that can be enabled or disabled just as if you were |
4473 | to echo the option name into |
4474 | |
4475 | /sys/kernel/debug/tracing/trace_options |
4476 | |
4477 | For example, to enable stacktrace option (to dump the |
4478 | stack trace of each event), add to the command line: |
4479 | |
4480 | trace_options=stacktrace |
4481 | |
4482 | See also Documentation/trace/ftrace.txt "trace options" |
4483 | section. |
4484 | |
4485 | tp_printk[FTRACE] |
4486 | Have the tracepoints sent to printk as well as the |
4487 | tracing ring buffer. This is useful for early boot up |
4488 | where the system hangs or reboots and does not give the |
4489 | option for reading the tracing buffer or performing a |
4490 | ftrace_dump_on_oops. |
4491 | |
4492 | To turn off having tracepoints sent to printk, |
4493 | echo 0 > /proc/sys/kernel/tracepoint_printk |
4494 | Note, echoing 1 into this file without the |
4495 | tracepoint_printk kernel cmdline option has no effect. |
4496 | |
4497 | ** CAUTION ** |
4498 | |
4499 | Having tracepoints sent to printk() and activating high |
4500 | frequency tracepoints such as irq or sched, can cause |
4501 | the system to live lock. |
4502 | |
4503 | traceoff_on_warning |
4504 | [FTRACE] enable this option to disable tracing when a |
4505 | warning is hit. This turns off "tracing_on". Tracing can |
4506 | be enabled again by echoing '1' into the "tracing_on" |
4507 | file located in /sys/kernel/debug/tracing/ |
4508 | |
4509 | This option is useful, as it disables the trace before |
4510 | the WARNING dump is called, which prevents the trace to |
4511 | be filled with content caused by the warning output. |
4512 | |
4513 | This option can also be set at run time via the sysctl |
4514 | option: kernel/traceoff_on_warning |
4515 | |
4516 | transparent_hugepage= |
4517 | [KNL] |
4518 | Format: [always|madvise|never] |
4519 | Can be used to control the default behavior of the system |
4520 | with respect to transparent hugepages. |
4521 | See Documentation/vm/transhuge.txt for more details. |
4522 | |
4523 | tsc= Disable clocksource stability checks for TSC. |
4524 | Format: <string> |
4525 | [x86] reliable: mark tsc clocksource as reliable, this |
4526 | disables clocksource verification at runtime, as well |
4527 | as the stability checks done at bootup. Used to enable |
4528 | high-resolution timer mode on older hardware, and in |
4529 | virtualized environment. |
4530 | [x86] noirqtime: Do not use TSC to do irq accounting. |
4531 | Used to run time disable IRQ_TIME_ACCOUNTING on any |
4532 | platforms where RDTSC is slow and this accounting |
4533 | can add overhead. |
4534 | |
4535 | turbografx.map[2|3]= [HW,JOY] |
4536 | TurboGraFX parallel port interface |
4537 | Format: |
4538 | <port#>,<js1>,<js2>,<js3>,<js4>,<js5>,<js6>,<js7> |
4539 | See also Documentation/input/joystick-parport.txt |
4540 | |
4541 | udbg-immortal [PPC] When debugging early kernel crashes that |
4542 | happen after console_init() and before a proper |
4543 | console driver takes over, this boot options might |
4544 | help "seeing" what's going on. |
4545 | |
4546 | uhash_entries= [KNL,NET] |
4547 | Set number of hash buckets for UDP/UDP-Lite connections |
4548 | |
4549 | uhci-hcd.ignore_oc= |
4550 | [USB] Ignore overcurrent events (default N). |
4551 | Some badly-designed motherboards generate lots of |
4552 | bogus events, for ports that aren't wired to |
4553 | anything. Set this parameter to avoid log spamming. |
4554 | Note that genuine overcurrent events won't be |
4555 | reported either. |
4556 | |
4557 | unknown_nmi_panic |
4558 | [X86] Cause panic on unknown NMI. |
4559 | |
4560 | usbcore.authorized_default= |
4561 | [USB] Default USB device authorization: |
4562 | (default -1 = authorized except for wireless USB, |
4563 | 0 = not authorized, 1 = authorized) |
4564 | |
4565 | usbcore.autosuspend= |
4566 | [USB] The autosuspend time delay (in seconds) used |
4567 | for newly-detected USB devices (default 2). This |
4568 | is the time required before an idle device will be |
4569 | autosuspended. Devices for which the delay is set |
4570 | to a negative value won't be autosuspended at all. |
4571 | |
4572 | usbcore.usbfs_snoop= |
4573 | [USB] Set to log all usbfs traffic (default 0 = off). |
4574 | |
4575 | usbcore.usbfs_snoop_max= |
4576 | [USB] Maximum number of bytes to snoop in each URB |
4577 | (default = 65536). |
4578 | |
4579 | usbcore.blinkenlights= |
4580 | [USB] Set to cycle leds on hubs (default 0 = off). |
4581 | |
4582 | usbcore.old_scheme_first= |
4583 | [USB] Start with the old device initialization |
4584 | scheme (default 0 = off). |
4585 | |
4586 | usbcore.usbfs_memory_mb= |
4587 | [USB] Memory limit (in MB) for buffers allocated by |
4588 | usbfs (default = 16, 0 = max = 2047). |
4589 | |
4590 | usbcore.use_both_schemes= |
4591 | [USB] Try the other device initialization scheme |
4592 | if the first one fails (default 1 = enabled). |
4593 | |
4594 | usbcore.initial_descriptor_timeout= |
4595 | [USB] Specifies timeout for the initial 64-byte |
4596 | USB_REQ_GET_DESCRIPTOR request in milliseconds |
4597 | (default 5000 = 5.0 seconds). |
4598 | |
4599 | usbcore.nousb [USB] Disable the USB subsystem |
4600 | |
4601 | usbhid.mousepoll= |
4602 | [USBHID] The interval which mice are to be polled at. |
4603 | |
4604 | usb-storage.delay_use= |
4605 | [UMS] The delay in seconds before a new device is |
4606 | scanned for Logical Units (default 1). |
4607 | |
4608 | usb-storage.quirks= |
4609 | [UMS] A list of quirks entries to supplement or |
4610 | override the built-in unusual_devs list. List |
4611 | entries are separated by commas. Each entry has |
4612 | the form VID:PID:Flags where VID and PID are Vendor |
4613 | and Product ID values (4-digit hex numbers) and |
4614 | Flags is a set of characters, each corresponding |
4615 | to a common usb-storage quirk flag as follows: |
4616 | a = SANE_SENSE (collect more than 18 bytes |
4617 | of sense data); |
4618 | b = BAD_SENSE (don't collect more than 18 |
4619 | bytes of sense data); |
4620 | c = FIX_CAPACITY (decrease the reported |
4621 | device capacity by one sector); |
4622 | d = NO_READ_DISC_INFO (don't use |
4623 | READ_DISC_INFO command); |
4624 | e = NO_READ_CAPACITY_16 (don't use |
4625 | READ_CAPACITY_16 command); |
4626 | f = NO_REPORT_OPCODES (don't use report opcodes |
4627 | command, uas only); |
4628 | g = MAX_SECTORS_240 (don't transfer more than |
4629 | 240 sectors at a time, uas only); |
4630 | h = CAPACITY_HEURISTICS (decrease the |
4631 | reported device capacity by one |
4632 | sector if the number is odd); |
4633 | i = IGNORE_DEVICE (don't bind to this |
4634 | device); |
4635 | j = NO_REPORT_LUNS (don't use report luns |
4636 | command, uas only); |
4637 | l = NOT_LOCKABLE (don't try to lock and |
4638 | unlock ejectable media); |
4639 | m = MAX_SECTORS_64 (don't transfer more |
4640 | than 64 sectors = 32 KB at a time); |
4641 | n = INITIAL_READ10 (force a retry of the |
4642 | initial READ(10) command); |
4643 | o = CAPACITY_OK (accept the capacity |
4644 | reported by the device); |
4645 | p = WRITE_CACHE (the device cache is ON |
4646 | by default); |
4647 | r = IGNORE_RESIDUE (the device reports |
4648 | bogus residue values); |
4649 | s = SINGLE_LUN (the device has only one |
4650 | Logical Unit); |
4651 | t = NO_ATA_1X (don't allow ATA(12) and ATA(16) |
4652 | commands, uas only); |
4653 | u = IGNORE_UAS (don't bind to the uas driver); |
4654 | w = NO_WP_DETECT (don't test whether the |
4655 | medium is write-protected). |
4656 | y = ALWAYS_SYNC (issue a SYNCHRONIZE_CACHE |
4657 | even if the device claims no cache) |
4658 | Example: quirks=0419:aaf5:rl,0421:0433:rc |
4659 | |
4660 | user_debug= [KNL,ARM] |
4661 | Format: <int> |
4662 | See arch/arm/Kconfig.debug help text. |
4663 | 1 - undefined instruction events |
4664 | 2 - system calls |
4665 | 4 - invalid data aborts |
4666 | 8 - SIGSEGV faults |
4667 | 16 - SIGBUS faults |
4668 | Example: user_debug=31 |
4669 | |
4670 | userpte= |
4671 | [X86] Flags controlling user PTE allocations. |
4672 | |
4673 | nohigh = do not allocate PTE pages in |
4674 | HIGHMEM regardless of setting |
4675 | of CONFIG_HIGHPTE. |
4676 | |
4677 | vdso= [X86,SH] |
4678 | On X86_32, this is an alias for vdso32=. Otherwise: |
4679 | |
4680 | vdso=1: enable VDSO (the default) |
4681 | vdso=0: disable VDSO mapping |
4682 | |
4683 | vdso32= [X86] Control the 32-bit vDSO |
4684 | vdso32=1: enable 32-bit VDSO |
4685 | vdso32=0 or vdso32=2: disable 32-bit VDSO |
4686 | |
4687 | See the help text for CONFIG_COMPAT_VDSO for more |
4688 | details. If CONFIG_COMPAT_VDSO is set, the default is |
4689 | vdso32=0; otherwise, the default is vdso32=1. |
4690 | |
4691 | For compatibility with older kernels, vdso32=2 is an |
4692 | alias for vdso32=0. |
4693 | |
4694 | Try vdso32=0 if you encounter an error that says: |
4695 | dl_main: Assertion `(void *) ph->p_vaddr == _rtld_local._dl_sysinfo_dso' failed! |
4696 | |
4697 | vector= [IA-64,SMP] |
4698 | vector=percpu: enable percpu vector domain |
4699 | |
4700 | video= [FB] Frame buffer configuration |
4701 | See Documentation/fb/modedb.txt. |
4702 | |
4703 | video.brightness_switch_enabled= [0,1] |
4704 | If set to 1, on receiving an ACPI notify event |
4705 | generated by hotkey, video driver will adjust brightness |
4706 | level and then send out the event to user space through |
4707 | the allocated input device; If set to 0, video driver |
4708 | will only send out the event without touching backlight |
4709 | brightness level. |
4710 | default: 1 |
4711 | |
4712 | virtio_mmio.device= |
4713 | [VMMIO] Memory mapped virtio (platform) device. |
4714 | |
4715 | <size>@<baseaddr>:<irq>[:<id>] |
4716 | where: |
4717 | <size> := size (can use standard suffixes |
4718 | like K, M and G) |
4719 | <baseaddr> := physical base address |
4720 | <irq> := interrupt number (as passed to |
4721 | request_irq()) |
4722 | <id> := (optional) platform device id |
4723 | example: |
4724 | virtio_mmio.device=1K@0x100b0000:48:7 |
4725 | |
4726 | Can be used multiple times for multiple devices. |
4727 | |
4728 | vga= [BOOT,X86-32] Select a particular video mode |
4729 | See Documentation/x86/boot.txt and |
4730 | Documentation/svga.txt. |
4731 | Use vga=ask for menu. |
4732 | This is actually a boot loader parameter; the value is |
4733 | passed to the kernel using a special protocol. |
4734 | |
4735 | vmalloc=nn[KMG] [KNL,BOOT] Forces the vmalloc area to have an exact |
4736 | size of <nn>. This can be used to increase the |
4737 | minimum size (128MB on x86). It can also be used to |
4738 | decrease the size and leave more room for directly |
4739 | mapped kernel RAM. |
4740 | |
4741 | vmhalt= [KNL,S390] Perform z/VM CP command after system halt. |
4742 | Format: <command> |
4743 | |
4744 | vmpanic= [KNL,S390] Perform z/VM CP command after kernel panic. |
4745 | Format: <command> |
4746 | |
4747 | vmpoff= [KNL,S390] Perform z/VM CP command after power off. |
4748 | Format: <command> |
4749 | |
4750 | vsyscall= [X86-64] |
4751 | Controls the behavior of vsyscalls (i.e. calls to |
4752 | fixed addresses of 0xffffffffff600x00 from legacy |
4753 | code). Most statically-linked binaries and older |
4754 | versions of glibc use these calls. Because these |
4755 | functions are at fixed addresses, they make nice |
4756 | targets for exploits that can control RIP. |
4757 | |
4758 | emulate [default] Vsyscalls turn into traps and are |
4759 | emulated reasonably safely. |
4760 | |
4761 | native Vsyscalls are native syscall instructions. |
4762 | This is a little bit faster than trapping |
4763 | and makes a few dynamic recompilers work |
4764 | better than they would in emulation mode. |
4765 | It also makes exploits much easier to write. |
4766 | |
4767 | none Vsyscalls don't work at all. This makes |
4768 | them quite hard to use for exploits but |
4769 | might break your system. |
4770 | |
4771 | vt.color= [VT] Default text color. |
4772 | Format: 0xYX, X = foreground, Y = background. |
4773 | Default: 0x07 = light gray on black. |
4774 | |
4775 | vt.cur_default= [VT] Default cursor shape. |
4776 | Format: 0xCCBBAA, where AA, BB, and CC are the same as |
4777 | the parameters of the <Esc>[?A;B;Cc escape sequence; |
4778 | see VGA-softcursor.txt. Default: 2 = underline. |
4779 | |
4780 | vt.default_blu= [VT] |
4781 | Format: <blue0>,<blue1>,<blue2>,...,<blue15> |
4782 | Change the default blue palette of the console. |
4783 | This is a 16-member array composed of values |
4784 | ranging from 0-255. |
4785 | |
4786 | vt.default_grn= [VT] |
4787 | Format: <green0>,<green1>,<green2>,...,<green15> |
4788 | Change the default green palette of the console. |
4789 | This is a 16-member array composed of values |
4790 | ranging from 0-255. |
4791 | |
4792 | vt.default_red= [VT] |
4793 | Format: <red0>,<red1>,<red2>,...,<red15> |
4794 | Change the default red palette of the console. |
4795 | This is a 16-member array composed of values |
4796 | ranging from 0-255. |
4797 | |
4798 | vt.default_utf8= |
4799 | [VT] |
4800 | Format=<0|1> |
4801 | Set system-wide default UTF-8 mode for all tty's. |
4802 | Default is 1, i.e. UTF-8 mode is enabled for all |
4803 | newly opened terminals. |
4804 | |
4805 | vt.global_cursor_default= |
4806 | [VT] |
4807 | Format=<-1|0|1> |
4808 | Set system-wide default for whether a cursor |
4809 | is shown on new VTs. Default is -1, |
4810 | i.e. cursors will be created by default unless |
4811 | overridden by individual drivers. 0 will hide |
4812 | cursors, 1 will display them. |
4813 | |
4814 | vt.italic= [VT] Default color for italic text; 0-15. |
4815 | Default: 2 = green. |
4816 | |
4817 | vt.underline= [VT] Default color for underlined text; 0-15. |
4818 | Default: 3 = cyan. |
4819 | |
4820 | watchdog timers [HW,WDT] For information on watchdog timers, |
4821 | see Documentation/watchdog/watchdog-parameters.txt |
4822 | or other driver-specific files in the |
4823 | Documentation/watchdog/ directory. |
4824 | |
4825 | workqueue.watchdog_thresh= |
4826 | If CONFIG_WQ_WATCHDOG is configured, workqueue can |
4827 | warn stall conditions and dump internal state to |
4828 | help debugging. 0 disables workqueue stall |
4829 | detection; otherwise, it's the stall threshold |
4830 | duration in seconds. The default value is 30 and |
4831 | it can be updated at runtime by writing to the |
4832 | corresponding sysfs file. |
4833 | |
4834 | workqueue.disable_numa |
4835 | By default, all work items queued to unbound |
4836 | workqueues are affine to the NUMA nodes they're |
4837 | issued on, which results in better behavior in |
4838 | general. If NUMA affinity needs to be disabled for |
4839 | whatever reason, this option can be used. Note |
4840 | that this also can be controlled per-workqueue for |
4841 | workqueues visible under /sys/bus/workqueue/. |
4842 | |
4843 | workqueue.power_efficient |
4844 | Per-cpu workqueues are generally preferred because |
4845 | they show better performance thanks to cache |
4846 | locality; unfortunately, per-cpu workqueues tend to |
4847 | be more power hungry than unbound workqueues. |
4848 | |
4849 | Enabling this makes the per-cpu workqueues which |
4850 | were observed to contribute significantly to power |
4851 | consumption unbound, leading to measurably lower |
4852 | power usage at the cost of small performance |
4853 | overhead. |
4854 | |
4855 | The default value of this parameter is determined by |
4856 | the config option CONFIG_WQ_POWER_EFFICIENT_DEFAULT. |
4857 | |
4858 | workqueue.debug_force_rr_cpu |
4859 | Workqueue used to implicitly guarantee that work |
4860 | items queued without explicit CPU specified are put |
4861 | on the local CPU. This guarantee is no longer true |
4862 | and while local CPU is still preferred work items |
4863 | may be put on foreign CPUs. This debug option |
4864 | forces round-robin CPU selection to flush out |
4865 | usages which depend on the now broken guarantee. |
4866 | When enabled, memory and cache locality will be |
4867 | impacted. |
4868 | |
4869 | x2apic_phys [X86-64,APIC] Use x2apic physical mode instead of |
4870 | default x2apic cluster mode on platforms |
4871 | supporting x2apic. |
4872 | |
4873 | x86_intel_mid_timer= [X86-32,APBT] |
4874 | Choose timer option for x86 Intel MID platform. |
4875 | Two valid options are apbt timer only and lapic timer |
4876 | plus one apbt timer for broadcast timer. |
4877 | x86_intel_mid_timer=apbt_only | lapic_and_apbt |
4878 | |
4879 | xen_512gb_limit [KNL,X86-64,XEN] |
4880 | Restricts the kernel running paravirtualized under Xen |
4881 | to use only up to 512 GB of RAM. The reason to do so is |
4882 | crash analysis tools and Xen tools for doing domain |
4883 | save/restore/migration must be enabled to handle larger |
4884 | domains. |
4885 | |
4886 | xen_emul_unplug= [HW,X86,XEN] |
4887 | Unplug Xen emulated devices |
4888 | Format: [unplug0,][unplug1] |
4889 | ide-disks -- unplug primary master IDE devices |
4890 | aux-ide-disks -- unplug non-primary-master IDE devices |
4891 | nics -- unplug network devices |
4892 | all -- unplug all emulated devices (NICs and IDE disks) |
4893 | unnecessary -- unplugging emulated devices is |
4894 | unnecessary even if the host did not respond to |
4895 | the unplug protocol |
4896 | never -- do not unplug even if version check succeeds |
4897 | |
4898 | xen_nopvspin [X86,XEN] |
4899 | Disables the ticketlock slowpath using Xen PV |
4900 | optimizations. |
4901 | |
4902 | xen_nopv [X86] |
4903 | Disables the PV optimizations forcing the HVM guest to |
4904 | run as generic HVM guest with no PV drivers. |
4905 | |
4906 | xirc2ps_cs= [NET,PCMCIA] |
4907 | Format: |
4908 | <irq>,<irq_mask>,<io>,<full_duplex>,<do_sound>,<lockup_hack>[,<irq2>[,<irq3>[,<irq4>]]] |
4909 | |
4910 | ______________________________________________________________________ |
4911 | |
4912 | TODO: |
4913 | |
4914 | Add more DRM drivers. |
4915 |