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.
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.
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.:
19 (kernel command line) usbcore.blinkenlights=1
20 (modprobe command line) modprobe usbcore blinkenlights=1
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
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
33 Double-quotes can be used to protect spaces in values, e.g.:
34 param="spaces in here"
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:
42 <cpu number>,...,<cpu number>
46 <cpu number>-<cpu number>
47 (must be a positive range in ascending order)
51 <cpu number>,...,<cpu number>-<cpu number>
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
57 <cpu number>-cpu number>:<used size>/<group size>
59 For example one can add to the command line following parameter:
61 isolcpus=1,2,10-20,100-2000:2/25
63 where the final item represents CPUs 100,101,125,126,150,151,...
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}".
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:
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 DRM Direct Rendering Management support is enabled.
91 DYNAMIC_DEBUG Build in debug messages and enable them at runtime
92 EDD BIOS Enhanced Disk Drive Services (EDD) is enabled
93 EFI EFI Partitioning (GPT) is enabled
94 EIDE EIDE/ATAPI support is enabled.
95 EVM Extended Verification Module
96 FB The frame buffer device is enabled.
97 FTRACE Function tracing enabled.
98 GCOV GCOV profiling is enabled.
99 HW Appropriate hardware is enabled.
100 IA-64 IA-64 architecture is enabled.
101 IMA Integrity measurement architecture is enabled.
102 IOSCHED More than one I/O scheduler is enabled.
103 IP_PNP IP DHCP, BOOTP, or RARP is enabled.
104 IPV6 IPv6 support is enabled.
105 ISAPNP ISA PnP code is enabled.
106 ISDN Appropriate ISDN support is enabled.
107 JOY Appropriate joystick support is enabled.
108 KGDB Kernel debugger support is enabled.
109 KVM Kernel Virtual Machine support is enabled.
110 LIBATA Libata driver is enabled
111 LP Printer support is enabled.
112 LOOP Loopback device support is enabled.
113 M68k M68k architecture is enabled.
114 These options have more detailed description inside of
115 Documentation/m68k/kernel-options.txt.
116 MDA MDA console support is enabled.
117 MIPS MIPS architecture is enabled.
118 MOUSE Appropriate mouse support is enabled.
119 MSI Message Signaled Interrupts (PCI).
120 MTD MTD (Memory Technology Device) support is enabled.
121 NET Appropriate network support is enabled.
122 NUMA NUMA support is enabled.
123 NFS Appropriate NFS support is enabled.
124 OSS OSS sound support is enabled.
125 PV_OPS A paravirtualized kernel is enabled.
126 PARIDE The ParIDE (parallel port IDE) subsystem is enabled.
127 PARISC The PA-RISC architecture is enabled.
128 PCI PCI bus support is enabled.
129 PCIE PCI Express support is enabled.
130 PCMCIA The PCMCIA subsystem is enabled.
131 PNP Plug & Play support is enabled.
132 PPC PowerPC architecture is enabled.
133 PPT Parallel port support is enabled.
134 PS2 Appropriate PS/2 support is enabled.
135 RAM RAM disk support is enabled.
136 S390 S390 architecture is enabled.
137 SCSI Appropriate SCSI support is enabled.
138 A lot of drivers have their options described inside
139 the Documentation/scsi/ sub-directory.
140 SECURITY Different security models are enabled.
141 SELINUX SELinux support is enabled.
142 APPARMOR AppArmor support is enabled.
143 SERIAL Serial support is enabled.
144 SH SuperH architecture is enabled.
145 SMP The kernel is an SMP kernel.
146 SPARC Sparc architecture is enabled.
147 SWSUSP Software suspend (hibernation) is enabled.
148 SUSPEND System suspend states are enabled.
149 TPM TPM drivers are enabled.
150 TS Appropriate touchscreen support is enabled.
151 UMS USB Mass Storage support is enabled.
152 USB USB support is enabled.
153 USBHID USB Human Interface Device support is enabled.
154 V4L Video For Linux support is enabled.
155 VMMIO Driver for memory mapped virtio devices is enabled.
156 VGA The VGA console has been enabled.
157 VT Virtual terminal support is enabled.
158 WDT Watchdog support is enabled.
159 XT IBM PC/XT MFM hard disk support is enabled.
160 X86-32 X86-32, aka i386 architecture is enabled.
161 X86-64 X86-64 architecture is enabled.
162 More X86-64 boot options can be found in
163 Documentation/x86/x86_64/boot-options.txt .
164 X86 Either 32-bit or 64-bit x86 (same as X86-32+X86-64)
165 X86_UV SGI UV support is enabled.
166 XEN Xen support is enabled
168 In addition, the following text indicates that the option:
170 BUGS= Relates to possible processor bugs on the said processor.
171 KNL Is a kernel start-up parameter.
172 BOOT Is a boot loader parameter.
174 Parameters denoted with BOOT are actually interpreted by the boot
175 loader, and have no meaning to the kernel directly.
176 Do not modify the syntax of boot loader parameters without extreme
177 need or coordination with <Documentation/x86/boot.txt>.
179 There are also arch-specific kernel-parameters not documented here.
180 See for example <Documentation/x86/x86_64/boot-options.txt>.
182 Note that ALL kernel parameters listed below are CASE SENSITIVE, and that
183 a trailing = on the name of any parameter states that that parameter will
184 be entered as an environment variable, whereas its absence indicates that
185 it will appear as a kernel argument readable via /proc/cmdline by programs
186 running once the system is up.
188 The number of kernel parameters is not limited, but the length of the
189 complete command line (parameters including spaces etc.) is limited to
190 a fixed number of characters. This limit depends on the architecture
191 and is between 256 and 4096 characters. It is defined in the file
192 ./include/asm/setup.h as COMMAND_LINE_SIZE.
194 Finally, the [KMG] suffix is commonly described after a number of kernel
195 parameter values. These 'K', 'M', and 'G' letters represent the _binary_
196 multipliers 'Kilo', 'Mega', and 'Giga', equalling 2^10, 2^20, and 2^30
197 bytes respectively. Such letter suffixes can also be entirely omitted.
200 acpi= [HW,ACPI,X86,ARM64]
201 Advanced Configuration and Power Interface
202 Format: { force | on | off | strict | noirq | rsdt |
204 force -- enable ACPI if default was off
205 on -- enable ACPI but allow fallback to DT [arm64]
206 off -- disable ACPI if default was on
207 noirq -- do not use ACPI for IRQ routing
208 strict -- Be less tolerant of platforms that are not
209 strictly ACPI specification compliant.
210 rsdt -- prefer RSDT over (default) XSDT
211 copy_dsdt -- copy DSDT to memory
212 For ARM64, ONLY "acpi=off", "acpi=on" or "acpi=force"
215 See also Documentation/power/runtime_pm.txt, pci=noacpi
217 acpi_apic_instance= [ACPI, IOAPIC]
219 2: use 2nd APIC table, if available
220 1,0: use 1st APIC table
223 acpi_backlight= [HW,ACPI]
224 acpi_backlight=vendor
226 If set to vendor, prefer vendor specific driver
227 (e.g. thinkpad_acpi, sony_acpi, etc.) instead
228 of the ACPI video.ko driver.
230 acpi_force_32bit_fadt_addr
231 force FADT to use 32 bit addresses rather than the
232 64 bit X_* addresses. Some firmware have broken 64
233 bit addresses for force ACPI ignore these and use
234 the older legacy 32 bit addresses.
236 acpica_no_return_repair [HW, ACPI]
237 Disable AML predefined validation mechanism
238 This mechanism can repair the evaluation result to make
239 the return objects more ACPI specification compliant.
240 This option is useful for developers to identify the
241 root cause of an AML interpreter issue when the issue
242 has something to do with the repair mechanism.
244 acpi.debug_layer= [HW,ACPI,ACPI_DEBUG]
245 acpi.debug_level= [HW,ACPI,ACPI_DEBUG]
247 CONFIG_ACPI_DEBUG must be enabled to produce any ACPI
248 debug output. Bits in debug_layer correspond to a
249 _COMPONENT in an ACPI source file, e.g.,
250 #define _COMPONENT ACPI_PCI_COMPONENT
251 Bits in debug_level correspond to a level in
252 ACPI_DEBUG_PRINT statements, e.g.,
253 ACPI_DEBUG_PRINT((ACPI_DB_INFO, ...
254 The debug_level mask defaults to "info". See
255 Documentation/acpi/debug.txt for more information about
256 debug layers and levels.
258 Enable processor driver info messages:
259 acpi.debug_layer=0x20000000
260 Enable PCI/PCI interrupt routing info messages:
261 acpi.debug_layer=0x400000
262 Enable AML "Debug" output, i.e., stores to the Debug
263 object while interpreting AML:
264 acpi.debug_layer=0xffffffff acpi.debug_level=0x2
265 Enable all messages related to ACPI hardware:
266 acpi.debug_layer=0x2 acpi.debug_level=0xffffffff
268 Some values produce so much output that the system is
269 unusable. The "log_buf_len" parameter may be useful
270 if you need to capture more output.
272 acpi_enforce_resources= [ACPI]
273 { strict | lax | no }
274 Check for resource conflicts between native drivers
275 and ACPI OperationRegions (SystemIO and SystemMemory
276 only). IO ports and memory declared in ACPI might be
277 used by the ACPI subsystem in arbitrary AML code and
278 can interfere with legacy drivers.
279 strict (default): access to resources claimed by ACPI
280 is denied; legacy drivers trying to access reserved
281 resources will fail to bind to device using them.
282 lax: access to resources claimed by ACPI is allowed;
283 legacy drivers trying to access reserved resources
284 will bind successfully but a warning message is logged.
285 no: ACPI OperationRegions are not marked as reserved,
286 no further checks are performed.
288 acpi_force_table_verification [HW,ACPI]
289 Enable table checksum verification during early stage.
290 By default, this is disabled due to x86 early mapping
293 acpi_irq_balance [HW,ACPI]
294 ACPI will balance active IRQs
297 acpi_irq_nobalance [HW,ACPI]
298 ACPI will not move active IRQs (default)
301 acpi_irq_isa= [HW,ACPI] If irq_balance, mark listed IRQs used by ISA
302 Format: <irq>,<irq>...
304 acpi_irq_pci= [HW,ACPI] If irq_balance, clear listed IRQs for
306 Format: <irq>,<irq>...
308 acpi_mask_gpe= [HW,ACPI]
309 Due to the existence of _Lxx/_Exx, some GPEs triggered
310 by unsupported hardware/firmware features can result in
311 GPE floodings that cannot be automatically disabled by
313 This facility can be used to prevent such uncontrolled
316 Support masking of GPEs numbered from 0x00 to 0x7f.
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.
326 acpi_no_memhotplug [ACPI] Disable memory hotplug. Useful for kdump
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.
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.
344 acpi_os_name= [HW,ACPI] Tell ACPI BIOS the name of the OS
345 Format: To spoof as Windows 98: ="Microsoft Windows"
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).
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
359 acpi_osi=!! # enable all built-in OS vendor
361 acpi_osi= # disable all strings
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.
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.
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
385 1. 'acpi_osi=' can make 'CondRefOf(_OSI, Local1)'
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
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
406 'acpi_osi=!* acpi_osi=! acpi_osi="Windows 2000"'
408 'acpi_osi=!* acpi_osi="Windows 2000" acpi_osi=!',
409 they all will make '_OSI("Windows 2000")' TRUE.
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.
416 acpi_sci= [HW,ACPI] ACPI System Control Interrupt trigger mode
417 Format: { level | edge | high | low }
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.
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
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).
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
446 add_efi_memmap [EFI; X86] Include EFI memory map in
447 kernel's map of available physical RAM.
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)
456 See Documentation/sound/alsa/alsa-parameters.txt
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.
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.
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
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.
483 amd_iommu= [HW,X86-64]
484 Pass parameters to the AMD IOMMU driver in the system.
486 fullflush - enable flushing of IO/TLB entries when
487 they are unmapped. Otherwise they are
488 flushed before they will be reused, which
490 off - do not initialize any AMD IOMMU found in
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
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.
504 amd_iommu_intr= [HW,X86-64]
505 Specifies one of the following AMD IOMMU interrupt
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.)
513 amijoy.map= [HW,JOY] Amiga joystick support
514 Map of devices attached to JOY0DAT and JOY1DAT
516 See also Documentation/input/joystick.txt
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>
524 Power management functions (SPARCstation-4/5 + deriv.)
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.
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.
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
541 none: External NMI is masked for all CPUs. This is
542 useful so that a dump capture kernel won't be
546 See Documentation/networking/ipv6.txt.
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
557 apm= [APM] Advanced Power Management
558 See header of arch/x86/kernel/apm_32.c.
560 arcrimi= [HW,NET] ARCnet - "RIM I" (entirely mem-mapped) cards
561 Format: <io>,<irq>,<nodeID>
565 atarimouse= [HW,MOUSE] Atari Mouse
567 atkbd.extra= [HW] Enable extra LEDs and keys on IBM RapidAccess,
568 EzKey and similar keyboards
570 atkbd.reset= [HW] Reset keyboard during initialization
572 atkbd.set= [HW] Select keyboard code set
573 Format: <int> (2 = AT (default), 3 = PS/2)
575 atkbd.scroll= [HW] Enable scroll wheel on MS Office and similar
578 atkbd.softraw= [HW] Choose between synthetic and real raw mode
579 Format: <bool> (0 = real, 1 = synthetic (default))
581 atkbd.softrepeat= [HW]
582 Use software keyboard repeat
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
596 audit_backlog_limit= [KNL] Set the audit queue size limit.
597 Format: <int> (must be >=0)
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" }
605 unset - Disable the BAU.
607 baycom_epp= [HW,AX25]
610 baycom_par= [HW,AX25] BayCom Parallel Port AX.25 Modem
612 See header of drivers/net/hamradio/baycom_par.c.
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.
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.
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
628 boot_delay= Milliseconds to delay each printk during boot.
629 Values larger than 10 seconds (10000) are changed to
633 bootmem_debug [KNL] Enable bootmem allocator debug messages.
636 Disable BERT OS support on buggy BIOSes.
638 bttv.card= [HW,V4L] bttv (bt848 + bt878 based grabber cards)
639 bttv.radio= Most important insmod options are available as
641 bttv.pll= See Documentation/video4linux/bttv/Insmod-options
644 bulk_remove=off [PPC] This parameter disables the use of the pSeries
645 firmware feature for flushing multiple hpte entries
648 c101= [NET] Moxa C101 synchronous serial card
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.
657 ca_keys= [KEYS] This parameter identifies a specific key(s) on
658 the system trusted keyring to be used for certificate
660 format: { id:<keyid> | builtin }
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
668 ccw_timeout_log [S390]
669 See Documentation/s390/CommonIO for details.
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
676 - foo isn't visible as an individually mountable
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}
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.
687 cgroup.memory= [KNL] Pass options to the cgroup memory controller.
689 nosocket -- Disable socket memory accounting.
690 nokmem -- Disable kernel memory accounting.
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.
703 See Documentation/s390/CommonIO for details.
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.
716 clock= [BUGS=X86-32, HW] gettimeofday clocksource override.
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 }
723 clocksource= Override the default clocksource
725 Override the default clocksource and use the clocksource
726 with the name specified.
727 Some clocksource names to choose from, depending on
729 [all] jiffies (this is the base, fallback clocksource)
731 [ARM] imx_timer1,OSTS,netx_timer,mpu_timer2,
732 pxa_timer,timer3,32k_counter,timer0_1
734 [X86-32] pit,hpet,tsc;
735 scx200_hrt on Geode; cyclone on IBM x440
743 clocksource.arm_arch_timer.evtstrm=
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
751 clocksource.arm_arch_timer.fsl-a008585=
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.
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
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
773 cma=nn[MG]@[start[MG][-end[MG]]]
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
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
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.
793 code_bytes [X86] How many bytes of object code to print
798 com20020= [HW,NET] ARCnet - COM20020 chipset
800 <io>[,<irq>[,<nodeID>[,<backplane>[,<ckp>[,<timeout>]]]]]
802 com90io= [HW,NET] ARCnet - COM90xx chipset (IO-mapped buffers)
806 ARCnet - COM90xx chipset (memory-mapped buffers)
807 Format: <io>[,<irq>[,<memstart>]]
809 condev= [HW,S390] console device
812 console= [KNL] Output console device and options.
814 tty<n> Use the virtual console device <n>.
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".
824 See Documentation/serial-console.txt for more
826 Documentation/networking/netconsole.txt for an
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.
844 hvc<n> Use the hypervisor console device <n>. This is for
845 both Xen and PowerPC hypervisors.
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
850 For now, only VisioBraille is supported.
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.
857 [KNL] Change the default value for
858 /proc/<pid>/coredump_filter.
859 See also Documentation/filesystems/proc.txt.
861 cpuidle.off=1 [CPU_IDLE]
862 disable the cpuidle sub-system
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.
870 cpcihp_generic= [HW,PCI] Generic port I/O CompactPCI driver
872 <first_slot>,<last_slot>,<port>,<enum_bit>[,<debug>]
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.
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.
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
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.
912 [KNL] Disable crypto self-tests
917 cs89x0_media= [HW,NET]
918 Format: { rj45 | aui | bnc }
921 See header of drivers/s390/block/dasd_devmap.c.
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
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.
932 debug [KNL] Enable kernel debugging (events log level).
935 [KNL] verbose self-tests
937 Print debugging info while doing the locking API
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.
943 debug_objects [KNL] Enable object debugging
946 [KNL] Disable object debugging
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.
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
976 debugpat [X86] Enable PAT debugging
978 decnet.addr= [HW,NET]
979 Format: <area>[,<node>]
980 See also Documentation/networking/decnet.txt.
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
991 Set number of hash buckets for dentry cache.
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
1000 See Documentation/networking/ipv6.txt.
1003 Disable RADIX MMU mode on POWER9
1005 disable_cpu_apicid= [X86,APIC,SMP]
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.
1014 disable_ddw [PPC/PSERIES]
1015 Disable Dynamic DMA Window support. Use this if
1016 to workaround buggy firmware.
1018 disable_ipv6= [IPV6]
1019 See Documentation/networking/ipv6.txt.
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.
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.
1032 disable_timer_pin_1 [X86]
1033 Disable PIN 1 of APIC timer
1034 Can be useful to work around chipset bugs.
1036 dis_ucode_ldr [X86] Disable the microcode loader.
1038 dma_debug=off If the kernel is compiled with DMA_API_DEBUG support,
1039 this option disables the debugging code at boot.
1041 dma_debug_entries=<number>
1042 This option allows to tune the number of preallocated
1043 entries for DMA-API debugging code. One entry is
1044 required per DMA-API allocation. Use this if the
1045 DMA-API debugging code disables itself because the
1046 architectural default is too low.
1048 dma_debug_driver=<driver_name>
1049 With this option the DMA-API debugging driver
1050 filter feature can be enabled at boot time. Just
1051 pass the driver to filter for as the parameter.
1052 The filter can be disabled or changed to another
1053 driver later using sysfs.
1055 drm_kms_helper.edid_firmware=[<connector>:]<file>[,[<connector>:]<file>]
1056 Broken monitors, graphic adapters, KVMs and EDIDless
1057 panels may send no or incorrect EDID data sets.
1058 This parameter allows to specify an EDID data sets
1059 in the /lib/firmware directory that are used instead.
1060 Generic built-in EDID data sets are used, if one of
1061 edid/1024x768.bin, edid/1280x1024.bin,
1062 edid/1680x1050.bin, or edid/1920x1080.bin is given
1063 and no file with the same name exists. Details and
1064 instructions how to build your own EDID data are
1065 available in Documentation/EDID/HOWTO.txt. An EDID
1066 data set will only be used for a particular connector,
1067 if its name and a colon are prepended to the EDID
1068 name. Each connector may use a unique EDID data
1069 set by separating the files with a comma. An EDID
1070 data set with no connector name will be used for
1071 any connectors not explicitly specified.
1075 dyndbg[="val"] [KNL,DYNAMIC_DEBUG]
1076 module.dyndbg[="val"]
1077 Enable debug messages at boot time. See
1078 Documentation/dynamic-debug-howto.txt for details.
1080 nompx [X86] Disables Intel Memory Protection Extensions.
1081 See Documentation/x86/intel_mpx.txt for more
1082 information about the feature.
1084 nopku [X86] Disable Memory Protection Keys CPU feature found
1088 on enable eager fpu restore
1089 off disable eager fpu restore
1090 auto selects the default scheme, which automatically
1091 enables eagerfpu restore for xsaveopt.
1093 module.async_probe [KNL]
1094 Enable asynchronous probe on this module.
1096 early_ioremap_debug [KNL]
1097 Enable debug messages in early_ioremap support. This
1098 is useful for tracking down temporary early mappings
1099 which are not unmapped.
1101 earlycon= [KNL] Output early console device and options.
1103 When used with no options, the early console is
1104 determined by the stdout-path property in device
1107 cdns,<addr>[,options]
1108 Start an early, polled-mode console on a Cadence
1109 (xuartps) serial port at the specified address. Only
1110 supported option is baud rate. If baud rate is not
1111 specified, the serial port must already be setup and
1114 uart[8250],io,<addr>[,options]
1115 uart[8250],mmio,<addr>[,options]
1116 uart[8250],mmio32,<addr>[,options]
1117 uart[8250],mmio32be,<addr>[,options]
1118 uart[8250],0x<addr>[,options]
1119 Start an early, polled-mode console on the 8250/16550
1120 UART at the specified I/O port or MMIO address.
1121 MMIO inter-register address stride is either 8-bit
1122 (mmio) or 32-bit (mmio32 or mmio32be).
1123 If none of [io|mmio|mmio32|mmio32be], <addr> is assumed
1124 to be equivalent to 'mmio'. 'options' are specified
1125 in the same format described for "console=ttyS<n>"; if
1126 unspecified, the h/w is not initialized.
1130 Start an early, polled-mode console on a pl011 serial
1131 port at the specified address. The pl011 serial port
1132 must already be setup and configured. Options are not
1133 yet supported. If 'mmio32' is specified, then only
1134 the driver will use only 32-bit accessors to read/write
1135 the device registers.
1138 Start an early, polled-mode console on a meson serial
1139 port at the specified address. The serial port must
1140 already be setup and configured. Options are not yet
1144 Start an early, polled-mode console on an msm serial
1145 port at the specified address. The serial port
1146 must already be setup and configured. Options are not
1149 msm_serial_dm,<addr>
1150 Start an early, polled-mode console on an msm serial
1151 dm port at the specified address. The serial port
1152 must already be setup and configured. Options are not
1155 smh Use ARM semihosting calls for early console.
1163 Use early console provided by serial driver available
1164 on Samsung SoCs, requires selecting proper type and
1165 a correct base address of the selected UART port. The
1166 serial port must already be setup and configured.
1167 Options are not yet supported.
1171 Use early console provided by Freescale LP UART driver
1172 found on Freescale Vybrid and QorIQ LS1021A processors.
1173 A valid base address must be provided, and the serial
1174 port must already be setup and configured.
1176 armada3700_uart,<addr>
1177 Start an early, polled-mode console on the
1178 Armada 3700 serial port at the specified
1179 address. The serial port must already be setup
1180 and configured. Options are not yet supported.
1182 earlyprintk= [X86,SH,BLACKFIN,ARM,M68k]
1186 earlyprintk=serial[,ttySn[,baudrate]]
1187 earlyprintk=serial[,0x...[,baudrate]]
1188 earlyprintk=ttySn[,baudrate]
1189 earlyprintk=dbgp[debugController#]
1190 earlyprintk=pciserial,bus:device.function[,baudrate]
1192 earlyprintk is useful when the kernel crashes before
1193 the normal console is initialized. It is not enabled by
1194 default because it has some cosmetic problems.
1196 Append ",keep" to not disable it when the real console
1199 Only one of vga, efi, serial, or usb debug port can
1202 Currently only ttyS0 and ttyS1 may be specified by
1203 name. Other I/O ports may be explicitly specified
1204 on some architectures (x86 and arm at least) by
1205 replacing ttySn with an I/O port address, like this:
1206 earlyprintk=serial,0x1008,115200
1207 You can find the port for a given device in
1208 /proc/tty/driver/serial:
1209 2: uart:ST16650V2 port:00001008 irq:18 ...
1211 Interaction with the standard serial driver is not
1214 The VGA and EFI output is eventually overwritten by
1217 The xen output can only be used by Xen PV guests.
1219 edac_report= [HW,EDAC] Control how to report EDAC event
1220 Format: {"on" | "off" | "force"}
1221 on: enable EDAC to report H/W event. May be overridden
1222 by other higher priority error reporting module.
1223 off: disable H/W event reporting through EDAC.
1224 force: enforce the use of EDAC to report H/W event.
1227 ekgdboc= [X86,KGDB] Allow early kernel console debugging
1230 This is designed to be used in conjunction with
1231 the boot argument: earlyprintk=vga
1234 Format: {"off" | "on" | "skip[mbr]"}
1237 Format: { "old_map", "nochunk", "noruntime", "debug" }
1238 old_map [X86-64]: switch to the old ioremap-based EFI
1239 runtime services mapping. 32-bit still uses this one by
1241 nochunk: disable reading files in "chunks" in the EFI
1242 boot stub, as chunking can cause problems with some
1243 firmware implementations.
1244 noruntime : disable EFI runtime services support
1245 debug: enable misc debug output
1247 efi_no_storage_paranoia [EFI; X86]
1248 Using this parameter you can use more than 50% of
1249 your efi variable storage. Use this parameter only if
1250 you are really sure that your UEFI does sane gc and
1251 fulfills the spec otherwise your board may brick.
1253 efi_fake_mem= nn[KMG]@ss[KMG]:aa[,nn[KMG]@ss[KMG]:aa,..] [EFI; X86]
1254 Add arbitrary attribute to specific memory range by
1255 updating original EFI memory map.
1256 Region of memory which aa attribute is added to is
1258 If efi_fake_mem=2G@4G:0x10000,2G@0x10a0000000:0x10000
1259 is specified, EFI_MEMORY_MORE_RELIABLE(0x10000)
1260 attribute is added to range 0x100000000-0x180000000 and
1261 0x10a0000000-0x1120000000.
1263 Using this parameter you can do debugging of EFI memmap
1264 related feature. For example, you can do debugging of
1265 Address Range Mirroring feature even if your box
1268 efivar_ssdt= [EFI; X86] Name of an EFI variable that contains an SSDT
1269 that is to be dynamically loaded by Linux. If there are
1270 multiple variables with the same name but with different
1271 vendor GUIDs, all of them will be loaded. See
1272 Documentation/acpi/ssdt-overlays.txt for details.
1275 eisa_irq_edge= [PARISC,HW]
1276 See header of drivers/parisc/eisa.c.
1279 See comment before function elanfreq_setup() in
1280 arch/x86/kernel/cpu/cpufreq/elanfreq.c.
1283 Format: {"cfq" | "deadline" | "noop"}
1284 See Documentation/block/cfq-iosched.txt and
1285 Documentation/block/deadline-iosched.txt for details.
1287 elfcorehdr=[size[KMG]@]offset[KMG] [IA64,PPC,SH,X86,S390]
1288 Specifies physical address of start of kernel core
1289 image elf header and optionally the size. Generally
1290 kexec loader will pass this option to capture kernel.
1291 See Documentation/kdump/kdump.txt for details.
1293 enable_mtrr_cleanup [X86]
1294 The kernel tries to adjust MTRR layout from continuous
1295 to discrete, to make X server driver able to add WB
1296 entry later. This parameter enables that.
1298 enable_timer_pin_1 [X86]
1299 Enable PIN 1 of APIC timer
1300 Can be useful to work around chipset bugs
1301 (in particular on some ATI chipsets).
1302 The kernel tries to set a reasonable default.
1304 enforcing [SELINUX] Set initial enforcing status.
1306 See security/selinux/Kconfig help text.
1307 0 -- permissive (log only, no denials).
1308 1 -- enforcing (deny and log).
1310 Value can be changed at runtime via /selinux/enforce.
1313 Disable Error Record Serialization Table (ERST)
1316 ether= [HW,NET] Ethernet cards parameters
1317 This option is obsoleted by the "netdev=" option, which
1318 has equivalent usage. See its documentation for details.
1322 Permit 'security.evm' to be updated regardless of
1323 current integrity status.
1327 fail_make_request=[KNL]
1328 General fault injection mechanism.
1329 Format: <interval>,<probability>,<space>,<times>
1330 See also Documentation/fault-injection/.
1333 See Documentation/blockdev/floppy.txt.
1335 force_pal_cache_flush
1336 [IA-64] Avoid check_sal_cache_flush which may hang on
1337 buggy SAL_CACHE_FLUSH implementations. Using this
1338 parameter will force ia64_sal_cache_flush to call
1339 ia64_pal_cache_flush instead of SAL_CACHE_FLUSH.
1342 Forcefully enable Physical Address Extension (PAE).
1343 Many Pentium M systems disable PAE but may have a
1344 functionally usable PAE implementation.
1345 Warning: use of this parameter will taint the kernel
1346 and may cause unknown problems.
1349 [FTRACE] will set and start the specified tracer
1350 as early as possible in order to facilitate early
1353 ftrace_dump_on_oops[=orig_cpu]
1354 [FTRACE] will dump the trace buffers on oops.
1355 If no parameter is passed, ftrace will dump
1356 buffers of all CPUs, but if you pass orig_cpu, it will
1357 dump only the buffer of the CPU that triggered the
1360 ftrace_filter=[function-list]
1361 [FTRACE] Limit the functions traced by the function
1362 tracer at boot up. function-list is a comma separated
1363 list of functions. This list can be changed at run
1364 time by the set_ftrace_filter file in the debugfs
1367 ftrace_notrace=[function-list]
1368 [FTRACE] Do not trace the functions specified in
1369 function-list. This list can be changed at run time
1370 by the set_ftrace_notrace file in the debugfs
1373 ftrace_graph_filter=[function-list]
1374 [FTRACE] Limit the top level callers functions traced
1375 by the function graph tracer at boot up.
1376 function-list is a comma separated list of functions
1377 that can be changed at run time by the
1378 set_graph_function file in the debugfs tracing directory.
1380 ftrace_graph_notrace=[function-list]
1381 [FTRACE] Do not trace from the functions specified in
1382 function-list. This list is a comma separated list of
1383 functions that can be changed at run time by the
1384 set_graph_notrace file in the debugfs tracing directory.
1387 [HW,JOY] Multisystem joystick and NES/SNES/PSX pad
1388 support via parallel port (up to 5 devices per port)
1389 Format: <port#>,<pad1>,<pad2>,<pad3>,<pad4>,<pad5>
1390 See also Documentation/input/joystick-parport.txt
1394 gart_fix_e820= [X86_64] disable the fix e820 for K8 GART
1398 gcov_persist= [GCOV] When non-zero (default), profiling data for
1399 kernel modules is saved and remains accessible via
1400 debugfs, even when the module is unloaded/reloaded.
1401 When zero, profiling data is discarded and associated
1402 debugfs files are removed at module unload time.
1404 goldfish [X86] Enable the goldfish android emulator platform.
1405 Don't use this when you are not running on the
1408 gpt [EFI] Forces disk with valid GPT signature but
1409 invalid Protective MBR to be treated as GPT. If the
1410 primary GPT is corrupted, it enables the backup/alternate
1411 GPT to be used instead.
1413 grcan.enable0= [HW] Configuration of physical interface 0. Determines
1414 the "Enable 0" bit of the configuration register.
1417 grcan.enable1= [HW] Configuration of physical interface 1. Determines
1418 the "Enable 0" bit of the configuration register.
1421 grcan.select= [HW] Select which physical interface to use.
1424 grcan.txsize= [HW] Sets the size of the tx buffer.
1425 Format: <unsigned int> such that (txsize & ~0x1fffc0) == 0.
1427 grcan.rxsize= [HW] Sets the size of the rx buffer.
1428 Format: <unsigned int> such that (rxsize & ~0x1fffc0) == 0.
1431 gpio-mockup.gpio_mockup_ranges
1432 [HW] Sets the ranges of gpiochip of for this device.
1433 Format: <start1>,<end1>,<start2>,<end2>...
1435 hardlockup_all_cpu_backtrace=
1436 [KNL] Should the hard-lockup detector generate
1437 backtraces on all cpus.
1440 hashdist= [KNL,NUMA] Large hashes allocated during boot
1441 are distributed across NUMA nodes. Defaults on
1442 for 64-bit NUMA, off otherwise.
1443 Format: 0 | 1 (for off | on)
1445 hcl= [IA-64] SGI's Hardware Graph compatibility layer
1447 hd= [EIDE] (E)IDE hard drive subsystem geometry
1448 Format: <cyl>,<head>,<sect>
1451 Disable Hardware Error Source Table (HEST) support;
1452 corresponding firmware-first mode error processing
1453 logic will be disabled.
1455 highmem=nn[KMG] [KNL,BOOT] forces the highmem zone to have an exact
1456 size of <nn>. This works even on boxes that have no
1457 highmem otherwise. This also works to reduce highmem
1458 size on bigger boxes.
1460 highres= [KNL] Enable/disable high resolution timer mode.
1461 Valid parameters: "on", "off"
1465 See Documentation/isdn/README.HiSax.
1469 hpet= [X86-32,HPET] option to control HPET usage
1470 Format: { enable (default) | disable | force |
1472 disable: disable HPET and use PIT instead
1473 force: allow force enabled of undocumented chips (ICH4,
1475 verbose: show contents of HPET registers during setup
1477 hpet_mmap= [X86, HPET_MMAP] Allow userspace to mmap HPET
1478 registers. Default set by CONFIG_HPET_MMAP_DEFAULT.
1480 hugepages= [HW,X86-32,IA-64] HugeTLB pages to allocate at boot.
1481 hugepagesz= [HW,IA-64,PPC,X86-64] The size of the HugeTLB pages.
1482 On x86-64 and powerpc, this option can be specified
1483 multiple times interleaved with hugepages= to reserve
1484 huge pages of different sizes. Valid pages sizes on
1485 x86-64 are 2M (when the CPU supports "pse") and 1G
1486 (when the CPU supports the "pdpe1gb" cpuinfo flag).
1488 hvc_iucv= [S390] Number of z/VM IUCV hypervisor console (HVC)
1489 terminal devices. Valid values: 0..8
1490 hvc_iucv_allow= [S390] Comma-separated list of z/VM user IDs.
1491 If specified, z/VM IUCV HVC accepts connections
1492 from listed z/VM user IDs only.
1494 hwthread_map= [METAG] Comma-separated list of Linux cpu id to
1495 hardware thread id mappings.
1496 Format: <cpu>:<hwthread>
1499 Do not unregister boot console at start. This is only
1500 useful for debugging when something happens in the window
1501 between unregistering the boot console and initializing
1504 i2c_bus= [HW] Override the default board specific I2C bus speed
1505 or register an additional I2C bus that is not
1506 registered from board initialization code.
1510 i8042.debug [HW] Toggle i8042 debug mode
1511 i8042.unmask_kbd_data
1512 [HW] Enable printing of interrupt data from the KBD port
1513 (disabled by default, and as a pre-condition
1514 requires that i8042.debug=1 be enabled)
1515 i8042.direct [HW] Put keyboard port into non-translated mode
1516 i8042.dumbkbd [HW] Pretend that controller can only read data from
1517 keyboard and cannot control its state
1518 (Don't attempt to blink the leds)
1519 i8042.noaux [HW] Don't check for auxiliary (== mouse) port
1520 i8042.nokbd [HW] Don't check/create keyboard port
1521 i8042.noloop [HW] Disable the AUX Loopback command while probing
1523 i8042.nomux [HW] Don't check presence of an active multiplexing
1525 i8042.nopnp [HW] Don't use ACPIPnP / PnPBIOS to discover KBD/AUX
1527 i8042.notimeout [HW] Ignore timeout condition signalled by controller
1528 i8042.reset [HW] Reset the controller during init, cleanup and
1529 suspend-to-ram transitions, only during s2r
1530 transitions, or never reset
1531 Format: { 1 | Y | y | 0 | N | n }
1532 1, Y, y: always reset controller
1533 0, N, n: don't ever reset controller
1534 Default: only on s2r transitions on x86; most other
1535 architectures force reset to be always executed
1536 i8042.unlock [HW] Unlock (ignore) the keylock
1537 i8042.kbdreset [HW] Reset device connected to KBD port
1541 i8k.ignore_dmi [HW] Continue probing hardware even if DMI data
1542 indicates that the driver is running on unsupported
1544 i8k.force [HW] Activate i8k driver even if SMM BIOS signature
1545 does not match list of supported models.
1547 [HW] Report power status in /proc/i8k
1548 (disabled by default)
1549 i8k.restricted [HW] Allow controlling fans only if SYS_ADMIN
1552 i915.invert_brightness=
1553 [DRM] Invert the sense of the variable that is used to
1554 set the brightness of the panel backlight. Normally a
1555 brightness value of 0 indicates backlight switched off,
1556 and the maximum of the brightness value sets the backlight
1557 to maximum brightness. If this parameter is set to 0
1558 (default) and the machine requires it, or this parameter
1559 is set to 1, a brightness value of 0 sets the backlight
1560 to maximum brightness, and the maximum of the brightness
1561 value switches the backlight off.
1562 -1 -- never invert brightness
1563 0 -- machine default
1564 1 -- force brightness inversion
1567 Format: <io>[,<membase>[,<icn_id>[,<icn_id2>]]]
1569 ide-core.nodma= [HW] (E)IDE subsystem
1570 Format: =0.0 to prevent dma on hda, =0.1 hdb =1.0 hdc
1571 .vlb_clock .pci_clock .noflush .nohpa .noprobe .nowerr
1572 .cdrom .chs .ignore_cable are additional options
1573 See Documentation/ide/ide.txt.
1575 ide-generic.probe-mask= [HW] (E)IDE subsystem
1577 Probe mask for legacy ISA IDE ports. Depending on
1578 platform up to 6 ports are supported, enabled by
1579 setting corresponding bits in the mask to 1. The
1580 default value is 0x0, which has a special meaning.
1581 On systems that have PCI, it triggers scanning the
1582 PCI bus for the first and the second port, which
1583 are then probed. On systems without PCI the value
1584 of 0x0 enables probing the two first ports as if it
1587 ide-pci-generic.all-generic-ide [HW] (E)IDE subsystem
1588 Claim all unknown PCI IDE storage controllers.
1591 Format: idle=poll, idle=halt, idle=nomwait
1592 Poll forces a polling idle loop that can slightly
1593 improve the performance of waking up a idle CPU, but
1594 will use a lot of power and make the system run hot.
1596 idle=halt: Halt is forced to be used for CPU idle.
1597 In such case C2/C3 won't be used again.
1598 idle=nomwait: Disable mwait for CPU C-states
1600 ieee754= [MIPS] Select IEEE Std 754 conformance mode
1601 Format: { strict | legacy | 2008 | relaxed }
1604 Choose which programs will be accepted for execution
1605 based on the IEEE 754 NaN encoding(s) supported by
1606 the FPU and the NaN encoding requested with the value
1607 of an ELF file header flag individually set by each
1608 binary. Hardware implementations are permitted to
1609 support either or both of the legacy and the 2008 NaN
1612 Available settings are as follows:
1613 strict accept binaries that request a NaN encoding
1614 supported by the FPU
1615 legacy only accept legacy-NaN binaries, if supported
1617 2008 only accept 2008-NaN binaries, if supported
1619 relaxed accept any binaries regardless of whether
1620 supported by the FPU
1622 The FPU emulator is always able to support both NaN
1623 encodings, so if no FPU hardware is present or it has
1624 been disabled with 'nofpu', then the settings of
1625 'legacy' and '2008' strap the emulator accordingly,
1626 'relaxed' straps the emulator for both legacy-NaN and
1627 2008-NaN, whereas 'strict' enables legacy-NaN only on
1628 legacy processors and both NaN encodings on MIPS32 or
1631 The setting for ABS.fmt/NEG.fmt instruction execution
1632 mode generally follows that for the NaN encoding,
1633 except where unsupported by hardware.
1635 ignore_loglevel [KNL]
1636 Ignore loglevel setting - this will print /all/
1637 kernel messages to the console. Useful for debugging.
1638 We also add it as printk module parameter, so users
1639 could change it dynamically, usually by
1640 /sys/module/printk/parameters/ignore_loglevel.
1643 Ignore RLIMIT_DATA setting for data mappings,
1644 print warning at first misuse. Can be changed via
1645 /sys/module/kernel/parameters/ignore_rlimit_data.
1647 ihash_entries= [KNL]
1648 Set number of hash buckets for inode cache.
1650 ima_appraise= [IMA] appraise integrity measurements
1651 Format: { "off" | "enforce" | "fix" | "log" }
1654 ima_appraise_tcb [IMA]
1655 The builtin appraise policy appraises all files
1659 Format: { md5 | sha1 | rmd160 | sha256 | sha384
1663 The list of supported hash algorithms is defined
1664 in crypto/hash_info.h.
1667 The builtin measurement policy to load during IMA
1668 setup. Specyfing "tcb" as the value, measures all
1669 programs exec'd, files mmap'd for exec, and all files
1670 opened with the read mode bit set by either the
1671 effective uid (euid=0) or uid=0.
1674 ima_tcb [IMA] Deprecated. Use ima_policy= instead.
1675 Load a policy which meets the needs of the Trusted
1676 Computing Base. This means IMA will measure all
1677 programs exec'd, files mmap'd for exec, and all files
1678 opened for read by uid=0.
1681 Select one of defined IMA measurements template formats.
1682 Formats: { "ima" | "ima-ng" | "ima-sig" }
1686 [IMA] Define a custom template format.
1687 Format: { "field1|...|fieldN" }
1689 ima.ahash_minsize= [IMA] Minimum file size for asynchronous hash usage
1690 Format: <min_file_size>
1691 Set the minimal file size for using asynchronous hash.
1692 If left unspecified, ahash usage is disabled.
1694 ahash performance varies for different data sizes on
1695 different crypto accelerators. This option can be used
1696 to achieve the best performance for a particular HW.
1698 ima.ahash_bufsize= [IMA] Asynchronous hash buffer size
1700 Set hashing buffer size. Default: 4k.
1702 ahash performance varies for different chunk sizes on
1703 different crypto accelerators. This option can be used
1704 to achieve best performance for particular HW.
1708 Run specified binary instead of /sbin/init as init
1711 initcall_debug [KNL] Trace initcalls as they are executed. Useful
1712 for working out where the kernel is dying during
1715 initcall_blacklist= [KNL] Do not execute a comma-separated list of
1716 initcall functions. Useful for debugging built-in
1717 modules and initcalls.
1719 initrd= [BOOT] Specify the location of the initial ramdisk
1721 init_pkru= [x86] Specify the default memory protection keys rights
1722 register contents for all processes. 0x55555554 by
1723 default (disallow access to all but pkey 0). Can
1724 override in debugfs after boot.
1726 inport.irq= [HW] Inport (ATI XL and Microsoft) busmouse driver
1729 int_pln_enable [x86] Enable power limit notification interrupt
1731 integrity_audit=[IMA]
1732 Format: { "0" | "1" }
1733 0 -- basic integrity auditing messages. (Default)
1734 1 -- additional integrity auditing messages.
1736 intel_iommu= [DMAR] Intel IOMMU driver (DMAR) option
1738 Enable intel iommu driver.
1740 Disable intel iommu driver.
1741 igfx_off [Default Off]
1742 By default, gfx is mapped as normal device. If a gfx
1743 device has a dedicated DMAR unit, the DMAR unit is
1744 bypassed by not enabling DMAR with this option. In
1745 this case, gfx device will use physical address for
1748 With this option iommu will not optimize to look
1749 for io virtual address below 32-bit forcing dual
1750 address cycle on pci bus for cards supporting greater
1751 than 32-bit addressing. The default is to look
1752 for translation below 32-bit and if not available
1753 then look in the higher range.
1754 strict [Default Off]
1755 With this option on every unmap_single operation will
1756 result in a hardware IOTLB flush operation as opposed
1757 to batching them for performance.
1758 sp_off [Default Off]
1759 By default, super page will be supported if Intel IOMMU
1760 has the capability. With this option, super page will
1762 ecs_off [Default Off]
1763 By default, extended context tables will be supported if
1764 the hardware advertises that it has support both for the
1765 extended tables themselves, and also PASID support. With
1766 this option set, extended tables will not be used even
1767 on hardware which claims to support them.
1769 intel_idle.max_cstate= [KNL,HW,ACPI,X86]
1770 0 disables intel_idle and fall back on acpi_idle.
1771 1 to 9 specify maximum depth of C-state.
1775 Do not enable intel_pstate as the default
1776 scaling driver for the supported processors
1778 Enable intel_pstate on systems that prohibit it by default
1779 in favor of acpi-cpufreq. Forcing the intel_pstate driver
1780 instead of acpi-cpufreq may disable platform features, such
1781 as thermal controls and power capping, that rely on ACPI
1782 P-States information being indicated to OSPM and therefore
1783 should be used with caution. This option does not work with
1784 processors that aren't supported by the intel_pstate driver
1785 or on platforms that use pcc-cpufreq instead of acpi-cpufreq.
1787 Do not enable hardware P state control (HWP)
1790 Only load intel_pstate on systems which support
1791 hardware P state control (HWP) if available.
1793 Enforce ACPI _PPC performance limits. If the Fixed ACPI
1794 Description Table, specifies preferred power management
1795 profile as "Enterprise Server" or "Performance Server",
1796 then this feature is turned on by default.
1798 intremap= [X86-64, Intel-IOMMU]
1799 on enable Interrupt Remapping (default)
1800 off disable Interrupt Remapping
1801 nosid disable Source ID checking
1803 BIOS x2APIC opt-out request will be ignored
1804 nopost disable Interrupt Posting
1806 iomem= Disable strict checking of access to MMIO memory
1807 strict regions from userspace.
1822 nobypass [PPC/POWERNV]
1823 Disable IOMMU bypass, using IOMMU for PCI devices.
1826 io7= [HW] IO7 for Marvel based alpha systems
1827 See comment before marvel_specify_io7 in
1828 arch/alpha/kernel/core_marvel.c.
1830 io_delay= [X86] I/O delay method
1832 Standard port 0x80 based delay
1834 Alternate port 0xed based delay (needed on some systems)
1836 Simple two microseconds delay
1841 See Documentation/filesystems/nfs/nfsroot.txt.
1843 irqaffinity= [SMP] Set the default irq affinity mask
1844 The argument is a cpu list, as described above.
1847 When an interrupt is not handled search all handlers
1848 for it. Intended to get systems with badly broken
1852 When an interrupt is not handled search all handlers
1853 for it. Also check all handlers each timer
1854 interrupt. Intended to get systems with badly broken
1858 Format: <RDP>,<reset>,<pci_scan>,<verbosity>
1860 isolcpus= [KNL,SMP] Isolate CPUs from the general scheduler.
1861 The argument is a cpu list, as described above.
1863 This option can be used to specify one or more CPUs
1864 to isolate from the general SMP balancing and scheduling
1865 algorithms. You can move a process onto or off an
1866 "isolated" CPU via the CPU affinity syscalls or cpuset.
1867 <cpu number> begins at 0 and the maximum value is
1868 "number of CPUs in system - 1".
1870 This option is the preferred way to isolate CPUs. The
1871 alternative -- manually setting the CPU mask of all
1872 tasks in the system -- can cause problems and
1873 suboptimal load balancer performance.
1877 ivrs_ioapic [HW,X86_64]
1878 Provide an override to the IOAPIC-ID<->DEVICE-ID
1879 mapping provided in the IVRS ACPI table. For
1880 example, to map IOAPIC-ID decimal 10 to
1881 PCI device 00:14.0 write the parameter as:
1882 ivrs_ioapic[10]=00:14.0
1884 ivrs_hpet [HW,X86_64]
1885 Provide an override to the HPET-ID<->DEVICE-ID
1886 mapping provided in the IVRS ACPI table. For
1887 example, to map HPET-ID decimal 0 to
1888 PCI device 00:14.0 write the parameter as:
1889 ivrs_hpet[0]=00:14.0
1891 ivrs_acpihid [HW,X86_64]
1892 Provide an override to the ACPI-HID:UID<->DEVICE-ID
1893 mapping provided in the IVRS ACPI table. For
1894 example, to map UART-HID:UID AMD0020:0 to
1895 PCI device 00:14.5 write the parameter as:
1896 ivrs_acpihid[00:14.5]=AMD0020:0
1898 js= [HW,JOY] Analog joystick
1899 See Documentation/input/joystick.txt.
1902 When CONFIG_RANDOMIZE_BASE is set, this disables
1903 kernel and module base offset ASLR (Address Space
1904 Layout Randomization).
1908 kernelcore= [KNL,X86,IA-64,PPC]
1909 Format: nn[KMGTPE] | "mirror"
1911 specifies the amount of memory usable by the kernel
1912 for non-movable allocations. The requested amount is
1913 spread evenly throughout all nodes in the system. The
1914 remaining memory in each node is used for Movable
1915 pages. In the event, a node is too small to have both
1916 kernelcore and Movable pages, kernelcore pages will
1917 take priority and other nodes will have a larger number
1918 of Movable pages. The Movable zone is used for the
1919 allocation of pages that may be reclaimed or moved
1920 by the page migration subsystem. This means that
1921 HugeTLB pages may not be allocated from this zone.
1922 Note that allocations like PTEs-from-HighMem still
1923 use the HighMem zone if it exists, and the Normal
1924 zone if it does not.
1926 Instead of specifying the amount of memory (nn[KMGTPE]),
1927 you can specify "mirror" option. In case "mirror"
1928 option is specified, mirrored (reliable) memory is used
1929 for non-movable allocations and remaining memory is used
1930 for Movable pages. nn[KMGTPE] and "mirror" are exclusive,
1931 so you can NOT specify nn[KMGTPE] and "mirror" at the same
1934 kgdbdbgp= [KGDB,HW] kgdb over EHCI usb debug port.
1935 Format: <Controller#>[,poll interval]
1936 The controller # is the number of the ehci usb debug
1937 port as it is probed via PCI. The poll interval is
1938 optional and is the number seconds in between
1939 each poll cycle to the debug port in case you need
1940 the functionality for interrupting the kernel with
1941 gdb or control-c on the dbgp connection. When
1942 not using this parameter you use sysrq-g to break into
1943 the kernel debugger.
1945 kgdboc= [KGDB,HW] kgdb over consoles.
1946 Requires a tty driver that supports console polling,
1947 or a supported polling keyboard driver (non-usb).
1948 Serial only format: <serial_device>[,baud]
1949 keyboard only format: kbd
1950 keyboard and serial format: kbd,<serial_device>[,baud]
1951 Optional Kernel mode setting:
1952 kms, kbd format: kms,kbd
1953 kms, kbd and serial format: kms,kbd,<ser_dev>[,baud]
1955 kgdbwait [KGDB] Stop kernel execution and enter the
1956 kernel debugger at the earliest opportunity.
1958 kmac= [MIPS] korina ethernet MAC address.
1959 Configure the RouterBoard 532 series on-chip
1960 Ethernet adapter MAC address.
1962 kmemleak= [KNL] Boot-time kmemleak enable/disable
1963 Valid arguments: on, off
1965 Built with CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y,
1968 kmemcheck= [X86] Boot-time kmemcheck enable/disable/one-shot mode
1969 Valid arguments: 0, 1, 2
1970 kmemcheck=0 (disabled)
1971 kmemcheck=1 (enabled)
1972 kmemcheck=2 (one-shot mode)
1973 Default: 2 (one-shot mode)
1975 kstack=N [X86] Print N words from the kernel stack
1978 kvm.ignore_msrs=[KVM] Ignore guest accesses to unhandled MSRs.
1979 Default is 0 (don't ignore, but inject #GP)
1981 kvm.mmu_audit= [KVM] This is a R/W parameter which allows audit
1985 kvm-amd.nested= [KVM,AMD] Allow nested virtualization in KVM/SVM.
1986 Default is 1 (enabled)
1988 kvm-amd.npt= [KVM,AMD] Disable nested paging (virtualized MMU)
1990 Default is 1 (enabled) if in 64-bit or 32-bit PAE mode.
1992 kvm-intel.ept= [KVM,Intel] Disable extended page tables
1993 (virtualized MMU) support on capable Intel chips.
1994 Default is 1 (enabled)
1996 kvm-intel.emulate_invalid_guest_state=
1997 [KVM,Intel] Enable emulation of invalid guest states
1998 Default is 0 (disabled)
2000 kvm-intel.flexpriority=
2001 [KVM,Intel] Disable FlexPriority feature (TPR shadow).
2002 Default is 1 (enabled)
2005 [KVM,Intel] Enable VMX nesting (nVMX).
2006 Default is 0 (disabled)
2008 kvm-intel.unrestricted_guest=
2009 [KVM,Intel] Disable unrestricted guest feature
2010 (virtualized real and unpaged mode) on capable
2011 Intel chips. Default is 1 (enabled)
2013 kvm-intel.vpid= [KVM,Intel] Disable Virtual Processor Identification
2014 feature (tagged TLBs) on capable Intel chips.
2015 Default is 1 (enabled)
2021 lapic [X86-32,APIC] Enable the local APIC even if BIOS
2024 lapic= [x86,APIC] "notscdeadline" Do not use TSC deadline
2025 value for LAPIC timer one-shot implementation. Default
2026 back to the programmable timer unit in the LAPIC.
2028 lapic_timer_c2_ok [X86,APIC] trust the local apic timer
2031 libata.dma= [LIBATA] DMA control
2032 libata.dma=0 Disable all PATA and SATA DMA
2033 libata.dma=1 PATA and SATA Disk DMA only
2034 libata.dma=2 ATAPI (CDROM) DMA only
2035 libata.dma=4 Compact Flash DMA only
2036 Combinations also work, so libata.dma=3 enables DMA
2037 for disks and CDROMs, but not CFs.
2039 libata.ignore_hpa= [LIBATA] Ignore HPA limit
2040 libata.ignore_hpa=0 keep BIOS limits (default)
2041 libata.ignore_hpa=1 ignore limits, using full disk
2043 libata.noacpi [LIBATA] Disables use of ACPI in libata suspend/resume
2047 libata.force= [LIBATA] Force configurations. The format is comma
2048 separated list of "[ID:]VAL" where ID is
2049 PORT[.DEVICE]. PORT and DEVICE are decimal numbers
2050 matching port, link or device. Basically, it matches
2051 the ATA ID string printed on console by libata. If
2052 the whole ID part is omitted, the last PORT and DEVICE
2053 values are used. If ID hasn't been specified yet, the
2054 configuration applies to all ports, links and devices.
2056 If only DEVICE is omitted, the parameter applies to
2057 the port and all links and devices behind it. DEVICE
2058 number of 0 either selects the first device or the
2059 first fan-out link behind PMP device. It does not
2060 select the host link. DEVICE number of 15 selects the
2061 host link and device attached to it.
2063 The VAL specifies the configuration to force. As long
2064 as there's no ambiguity shortcut notation is allowed.
2065 For example, both 1.5 and 1.5G would work for 1.5Gbps.
2066 The following configurations can be forced.
2068 * Cable type: 40c, 80c, short40c, unk, ign or sata.
2069 Any ID with matching PORT is used.
2071 * SATA link speed limit: 1.5Gbps or 3.0Gbps.
2073 * Transfer mode: pio[0-7], mwdma[0-4] and udma[0-7].
2074 udma[/][16,25,33,44,66,100,133] notation is also
2077 * [no]ncq: Turn on or off NCQ.
2079 * [no]ncqtrim: Turn off queued DSM TRIM.
2081 * nohrst, nosrst, norst: suppress hard, soft
2084 * rstonce: only attempt one reset during
2085 hot-unplug link recovery
2087 * dump_id: dump IDENTIFY data.
2089 * atapi_dmadir: Enable ATAPI DMADIR bridge support
2091 * disable: Disable this device.
2093 If there are multiple matching configurations changing
2094 the same attribute, the last one is used.
2096 memblock=debug [KNL] Enable memblock debug messages.
2098 load_ramdisk= [RAM] List of ramdisks to load from floppy
2099 See Documentation/blockdev/ramdisk.txt.
2101 lockd.nlm_grace_period=P [NFS] Assign grace period.
2104 lockd.nlm_tcpport=N [NFS] Assign TCP port.
2107 lockd.nlm_timeout=T [NFS] Assign timeout value.
2110 lockd.nlm_udpport=M [NFS] Assign UDP port.
2113 locktorture.nreaders_stress= [KNL]
2114 Set the number of locking read-acquisition kthreads.
2115 Defaults to being automatically set based on the
2116 number of online CPUs.
2118 locktorture.nwriters_stress= [KNL]
2119 Set the number of locking write-acquisition kthreads.
2121 locktorture.onoff_holdoff= [KNL]
2122 Set time (s) after boot for CPU-hotplug testing.
2124 locktorture.onoff_interval= [KNL]
2125 Set time (s) between CPU-hotplug operations, or
2126 zero to disable CPU-hotplug testing.
2128 locktorture.shuffle_interval= [KNL]
2129 Set task-shuffle interval (jiffies). Shuffling
2130 tasks allows some CPUs to go into dyntick-idle
2131 mode during the locktorture test.
2133 locktorture.shutdown_secs= [KNL]
2134 Set time (s) after boot system shutdown. This
2135 is useful for hands-off automated testing.
2137 locktorture.stat_interval= [KNL]
2138 Time (s) between statistics printk()s.
2140 locktorture.stutter= [KNL]
2141 Time (s) to stutter testing, for example,
2142 specifying five seconds causes the test to run for
2143 five seconds, wait for five seconds, and so on.
2144 This tests the locking primitive's ability to
2145 transition abruptly to and from idle.
2147 locktorture.torture_runnable= [BOOT]
2148 Start locktorture running at boot time.
2150 locktorture.torture_type= [KNL]
2151 Specify the locking implementation to test.
2153 locktorture.verbose= [KNL]
2154 Enable additional printk() statements.
2156 logibm.irq= [HW,MOUSE] Logitech Bus Mouse Driver
2159 loglevel= All Kernel Messages with a loglevel smaller than the
2160 console loglevel will be printed to the console. It can
2161 also be changed with klogd or other programs. The
2162 loglevels are defined as follows:
2164 0 (KERN_EMERG) system is unusable
2165 1 (KERN_ALERT) action must be taken immediately
2166 2 (KERN_CRIT) critical conditions
2167 3 (KERN_ERR) error conditions
2168 4 (KERN_WARNING) warning conditions
2169 5 (KERN_NOTICE) normal but significant condition
2170 6 (KERN_INFO) informational
2171 7 (KERN_DEBUG) debug-level messages
2173 log_buf_len=n[KMG] Sets the size of the printk ring buffer,
2174 in bytes. n must be a power of two and greater
2175 than the minimal size. The minimal size is defined
2176 by LOG_BUF_SHIFT kernel config parameter. There is
2177 also CONFIG_LOG_CPU_MAX_BUF_SHIFT config parameter
2178 that allows to increase the default size depending on
2179 the number of CPUs. See init/Kconfig for more details.
2181 logo.nologo [FB] Disables display of the built-in Linux logo.
2182 This may be used to provide more screen space for
2183 kernel log messages and is useful when debugging
2184 kernel boot problems.
2186 lp=0 [LP] Specify parallel ports to use, e.g,
2187 lp=port[,port...] lp=none,parport0 (lp0 not configured, lp1 uses
2188 lp=reset first parallel port). 'lp=0' disables the
2189 lp=auto printer driver. 'lp=reset' (which can be
2190 specified in addition to the ports) causes
2191 attached printers to be reset. Using
2192 lp=port1,port2,... specifies the parallel ports
2193 to associate lp devices with, starting with
2194 lp0. A port specification may be 'none' to skip
2195 that lp device, or a parport name such as
2196 'parport0'. Specifying 'lp=auto' instead of a
2197 port specification list means that device IDs
2198 from each port should be examined, to see if
2199 an IEEE 1284-compliant printer is attached; if
2200 so, the driver will manage that printer.
2201 See also header of drivers/char/lp.c.
2204 Sets loops_per_jiffy to given constant, thus avoiding
2205 time-consuming boot-time autodetection (up to 250 ms per
2206 CPU). 0 enables autodetection (default). To determine
2207 the correct value for your kernel, boot with normal
2208 autodetection and see what value is printed. Note that
2209 on SMP systems the preset will be applied to all CPUs,
2210 which is likely to cause problems if your CPUs need
2211 significantly divergent settings. An incorrect value
2212 will cause delays in the kernel to be wrong, leading to
2213 unpredictable I/O errors and other breakage. Although
2214 unlikely, in the extreme case this might damage your
2218 Format: <io>,<irq>,<dma>
2220 machvec= [IA-64] Force the use of a particular machine-vector
2221 (machvec) in a generic kernel.
2222 Example: machvec=hpzx1_swiotlb
2224 machtype= [Loongson] Share the same kernel image file between different
2226 Example: machtype=lemote-yeeloong-2f-7inch
2228 max_addr=nn[KMG] [KNL,BOOT,ia64] All physical memory greater
2229 than or equal to this physical address is ignored.
2231 maxcpus= [SMP] Maximum number of processors that an SMP kernel
2232 will bring up during bootup. maxcpus=n : n >= 0 limits
2233 the kernel to bring up 'n' processors. Surely after
2234 bootup you can bring up the other plugged cpu by executing
2235 "echo 1 > /sys/devices/system/cpu/cpuX/online". So maxcpus
2236 only takes effect during system bootup.
2237 While n=0 is a special case, it is equivalent to "nosmp",
2238 which also disables the IO APIC.
2240 max_loop= [LOOP] The number of loop block devices that get
2241 (loop.max_loop) unconditionally pre-created at init time. The default
2242 number is configured by BLK_DEV_LOOP_MIN_COUNT. Instead
2243 of statically allocating a predefined number, loop
2244 devices can be requested on-demand with the
2245 /dev/loop-control interface.
2247 mce [X86-32] Machine Check Exception
2249 mce=option [X86-64] See Documentation/x86/x86_64/boot-options.txt
2251 md= [HW] RAID subsystems devices and level
2252 See Documentation/md.txt.
2255 Format: <first>,<last>
2256 Specifies range of consoles to be captured by the MDA.
2258 mem=nn[KMG] [KNL,BOOT] Force usage of a specific amount of memory
2259 Amount of memory to be used when the kernel is not able
2260 to see the whole system memory or for test.
2261 [X86] Work as limiting max address. Use together
2262 with memmap= to avoid physical address space collisions.
2263 Without memmap= PCI devices could be placed at addresses
2264 belonging to unused RAM.
2266 mem=nopentium [BUGS=X86-32] Disable usage of 4MB pages for kernel
2270 [KNL,SH] Allow user to override the default size for
2271 per-device physically contiguous DMA buffers.
2273 memhp_default_state=online/offline
2274 [KNL] Set the initial state for the memory hotplug
2275 onlining policy. If not specified, the default value is
2276 set according to the
2277 CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE kernel config
2279 See Documentation/memory-hotplug.txt.
2281 memmap=exactmap [KNL,X86] Enable setting of an exact
2282 E820 memory map, as specified by the user.
2283 Such memmap=exactmap lines can be constructed based on
2284 BIOS output or other requirements. See the memmap=nn@ss
2287 memmap=nn[KMG]@ss[KMG]
2288 [KNL] Force usage of a specific region of memory.
2289 Region of memory to be used is from ss to ss+nn.
2291 memmap=nn[KMG]#ss[KMG]
2292 [KNL,ACPI] Mark specific memory as ACPI data.
2293 Region of memory to be marked is from ss to ss+nn.
2295 memmap=nn[KMG]$ss[KMG]
2296 [KNL,ACPI] Mark specific memory as reserved.
2297 Region of memory to be reserved is from ss to ss+nn.
2298 Example: Exclude memory from 0x18690000-0x1869ffff
2299 memmap=64K$0x18690000
2301 memmap=0x10000$0x18690000
2303 memmap=nn[KMG]!ss[KMG]
2304 [KNL,X86] Mark specific memory as protected.
2305 Region of memory to be used, from ss to ss+nn.
2306 The memory region may be marked as e820 type 12 (0xc)
2307 and is NVDIMM or ADR memory.
2309 memory_corruption_check=0/1 [X86]
2310 Some BIOSes seem to corrupt the first 64k of
2311 memory when doing things like suspend/resume.
2312 Setting this option will scan the memory
2313 looking for corruption. Enabling this will
2314 both detect corruption and prevent the kernel
2315 from using the memory being corrupted.
2316 However, its intended as a diagnostic tool; if
2317 repeatable BIOS-originated corruption always
2318 affects the same memory, you can use memmap=
2319 to prevent the kernel from using that memory.
2321 memory_corruption_check_size=size [X86]
2322 By default it checks for corruption in the low
2323 64k, making this memory unavailable for normal
2324 use. Use this parameter to scan for
2325 corruption in more or less memory.
2327 memory_corruption_check_period=seconds [X86]
2328 By default it checks for corruption every 60
2329 seconds. Use this parameter to check at some
2330 other rate. 0 disables periodic checking.
2332 memtest= [KNL,X86,ARM] Enable memtest
2334 default : 0 <disable>
2335 Specifies the number of memtest passes to be
2336 performed. Each pass selects another test
2337 pattern from a given set of patterns. Memtest
2338 fills the memory with this pattern, validates
2339 memory contents and reserves bad memory
2340 regions that are detected.
2342 meye.*= [HW] Set MotionEye Camera parameters
2343 See Documentation/video4linux/meye.txt.
2345 mfgpt_irq= [IA-32] Specify the IRQ to use for the
2346 Multi-Function General Purpose Timers on AMD Geode
2349 mfgptfix [X86-32] Fix MFGPT timers on AMD Geode platforms when
2350 the BIOS has incorrectly applied a workaround. TinyBIOS
2351 version 0.98 is known to be affected, 0.99 fixes the
2352 problem by letting the user disable the workaround.
2356 min_addr=nn[KMG] [KNL,BOOT,ia64] All physical memory below this
2357 physical address is ignored.
2359 mini2440= [ARM,HW,KNL]
2360 Format:[0..2][b][c][t]
2362 MINI2440 configuration specification:
2363 0 - The attached screen is the 3.5" TFT
2364 1 - The attached screen is the 7" TFT
2365 2 - The VGA Shield is attached (1024x768)
2366 Leaving out the screen size parameter will not load
2367 the TFT driver, and the framebuffer will be left
2369 b - Enable backlight. The TFT backlight pin will be
2370 linked to the kernel VESA blanking code and a GPIO
2371 LED. This parameter is not necessary when using the
2373 c - Enable the s3c camera interface.
2374 t - Reserved for enabling touchscreen support. The
2375 touchscreen support is not enabled in the mainstream
2376 kernel as of 2.6.30, a preliminary port can be found
2377 in the "bleeding edge" mini2440 support kernel at
2378 http://repo.or.cz/w/linux-2.6/mini2440.git
2381 [KNL] When CONFIG_DEBUG_MEMORY_INIT is set, this
2382 parameter allows control of the logging verbosity for
2383 the additional memory initialisation checks. A value
2384 of 0 disables mminit logging and a level of 4 will
2385 log everything. Information is printed at KERN_DEBUG
2386 so loglevel=8 may also need to be specified.
2389 [KNL] When CONFIG_MODULE_SIG is set, this means that
2390 modules without (valid) signatures will fail to load.
2391 Note that if CONFIG_MODULE_SIG_FORCE is set, that
2392 is always true, so this option does nothing.
2394 module_blacklist= [KNL] Do not load a comma-separated list of
2395 modules. Useful for debugging problem modules.
2398 [MOUSE] Maximum time between finger touching and
2399 leaving touchpad surface for touch to be considered
2400 a tap and be reported as a left button click (for
2401 touchpads working in absolute mode only).
2403 mousedev.xres= [MOUSE] Horizontal screen resolution, used for devices
2404 reporting absolute coordinates, such as tablets
2405 mousedev.yres= [MOUSE] Vertical screen resolution, used for devices
2406 reporting absolute coordinates, such as tablets
2408 movablecore=nn[KMG] [KNL,X86,IA-64,PPC] This parameter
2409 is similar to kernelcore except it specifies the
2410 amount of memory used for migratable allocations.
2411 If both kernelcore and movablecore is specified,
2412 then kernelcore will be at *least* the specified
2413 value but may be more. If movablecore on its own
2414 is specified, the administrator must be careful
2415 that the amount of memory usable for all allocations
2418 movable_node [KNL,X86] Boot-time switch to enable the effects
2419 of CONFIG_MOVABLE_NODE=y. See mm/Kconfig for details.
2421 MTD_Partition= [MTD]
2422 Format: <name>,<region-number>,<size>,<offset>
2424 MTD_Region= [MTD] Format:
2425 <name>,<region-number>[,<base>,<size>,<buswidth>,<altbuswidth>]
2428 See drivers/mtd/cmdlinepart.c.
2430 multitce=off [PPC] This parameter disables the use of the pSeries
2431 firmware feature for updating multiple TCE entries
2434 onenand.bdry= [HW,MTD] Flex-OneNAND Boundary Configuration
2436 Format: [die0_boundary][,die0_lock][,die1_boundary][,die1_lock]
2438 boundary - index of last SLC block on Flex-OneNAND.
2439 The remaining blocks are configured as MLC blocks.
2440 lock - Configure if Flex-OneNAND boundary should be locked.
2441 Once locked, the boundary cannot be changed.
2442 1 indicates lock status, 0 indicates unlock status.
2445 ARM/S3C2412 JIVE boot control
2447 See arch/arm/mach-s3c2412/mach-jive.c
2449 mtouchusb.raw_coordinates=
2450 [HW] Make the MicroTouch USB driver use raw coordinates
2451 ('y', default) or cooked coordinates ('n')
2453 mtrr_chunk_size=nn[KMG] [X86]
2454 used for mtrr cleanup. It is largest continuous chunk
2455 that could hold holes aka. UC entries.
2457 mtrr_gran_size=nn[KMG] [X86]
2458 Used for mtrr cleanup. It is granularity of mtrr block.
2460 Large value could prevent small alignment from
2463 mtrr_spare_reg_nr=n [X86]
2465 Range: 0,7 : spare reg number
2467 Used for mtrr cleanup. It is spare mtrr entries number.
2468 Set to 2 or more if your graphical card needs more.
2470 n2= [NET] SDL Inc. RISCom/N2 synchronous serial card
2472 netdev= [NET] Network devices parameters
2473 Format: <irq>,<io>,<mem_start>,<mem_end>,<name>
2474 Note that mem_start is often overloaded to mean
2475 something different and driver-specific.
2476 This usage is only documented in each driver source
2480 [NETFILTER] Enable connection tracking flow accounting
2481 0 to disable accounting
2482 1 to enable accounting
2485 nfsaddrs= [NFS] Deprecated. Use ip= instead.
2486 See Documentation/filesystems/nfs/nfsroot.txt.
2488 nfsroot= [NFS] nfs root filesystem for disk-less boxes.
2489 See Documentation/filesystems/nfs/nfsroot.txt.
2491 nfsrootdebug [NFS] enable nfsroot debugging messages.
2492 See Documentation/filesystems/nfs/nfsroot.txt.
2494 nfs.callback_nr_threads=
2495 [NFSv4] set the total number of threads that the
2496 NFS client will assign to service NFSv4 callback
2499 nfs.callback_tcpport=
2500 [NFS] set the TCP port on which the NFSv4 callback
2501 channel should listen.
2504 [NFS] sets the pathname to the program which is used
2505 to update the NFS client cache entries.
2507 nfs.cache_getent_timeout=
2508 [NFS] sets the timeout after which an attempt to
2509 update a cache entry is deemed to have failed.
2511 nfs.idmap_cache_timeout=
2512 [NFS] set the maximum lifetime for idmapper cache
2516 [NFS] enable 64-bit inode numbers.
2517 If zero, the NFS client will fake up a 32-bit inode
2518 number for the readdir() and stat() syscalls instead
2519 of returning the full 64-bit number.
2520 The default is to return 64-bit inode numbers.
2522 nfs.max_session_cb_slots=
2523 [NFSv4.1] Sets the maximum number of session
2524 slots the client will assign to the callback
2525 channel. This determines the maximum number of
2526 callbacks the client will process in parallel for
2527 a particular server.
2529 nfs.max_session_slots=
2530 [NFSv4.1] Sets the maximum number of session slots
2531 the client will attempt to negotiate with the server.
2532 This limits the number of simultaneous RPC requests
2533 that the client can send to the NFSv4.1 server.
2534 Note that there is little point in setting this
2535 value higher than the max_tcp_slot_table_limit.
2537 nfs.nfs4_disable_idmapping=
2538 [NFSv4] When set to the default of '1', this option
2539 ensures that both the RPC level authentication
2540 scheme and the NFS level operations agree to use
2541 numeric uids/gids if the mount is using the
2542 'sec=sys' security flavour. In effect it is
2543 disabling idmapping, which can make migration from
2544 legacy NFSv2/v3 systems to NFSv4 easier.
2545 Servers that do not support this mode of operation
2546 will be autodetected by the client, and it will fall
2547 back to using the idmapper.
2548 To turn off this behaviour, set the value to '0'.
2550 [NFS4] Specify an additional fixed unique ident-
2551 ification string that NFSv4 clients can insert into
2552 their nfs_client_id4 string. This is typically a
2553 UUID that is generated at system install time.
2555 nfs.send_implementation_id =
2556 [NFSv4.1] Send client implementation identification
2557 information in exchange_id requests.
2558 If zero, no implementation identification information
2560 The default is to send the implementation identification
2563 nfs.recover_lost_locks =
2564 [NFSv4] Attempt to recover locks that were lost due
2565 to a lease timeout on the server. Please note that
2566 doing this risks data corruption, since there are
2567 no guarantees that the file will remain unchanged
2568 after the locks are lost.
2569 If you want to enable the kernel legacy behaviour of
2570 attempting to recover these locks, then set this
2572 The default parameter value of '0' causes the kernel
2573 not to attempt recovery of lost locks.
2575 nfs4.layoutstats_timer =
2576 [NFSv4.2] Change the rate at which the kernel sends
2577 layoutstats to the pNFS metadata server.
2579 Setting this to value to 0 causes the kernel to use
2580 whatever value is the default set by the layout
2581 driver. A non-zero value sets the minimum interval
2582 in seconds between layoutstats transmissions.
2584 nfsd.nfs4_disable_idmapping=
2585 [NFSv4] When set to the default of '1', the NFSv4
2586 server will return only numeric uids and gids to
2587 clients using auth_sys, and will accept numeric uids
2588 and gids from such clients. This is intended to ease
2589 migration from NFSv2/v3.
2591 objlayoutdriver.osd_login_prog=
2592 [NFS] [OBJLAYOUT] sets the pathname to the program which
2593 is used to automatically discover and login into new
2594 osd-targets. Please see:
2595 Documentation/filesystems/pnfs.txt for more explanations
2597 nmi_debug= [KNL,AVR32,SH] Specify one or more actions to take
2598 when a NMI is triggered.
2599 Format: [state][,regs][,debounce][,die]
2601 nmi_watchdog= [KNL,BUGS=X86] Debugging features for SMP kernels
2602 Format: [panic,][nopanic,][num]
2604 0 - turn hardlockup detector in nmi_watchdog off
2605 1 - turn hardlockup detector in nmi_watchdog on
2606 When panic is specified, panic when an NMI watchdog
2607 timeout occurs (or 'nopanic' to override the opposite
2608 default). To disable both hard and soft lockup detectors,
2609 please see 'nowatchdog'.
2610 This is useful when you use a panic=... timeout and
2611 need the box quickly up again.
2613 netpoll.carrier_timeout=
2614 [NET] Specifies amount of time (in seconds) that
2615 netpoll should wait for a carrier. By default netpoll
2618 no387 [BUGS=X86-32] Tells the kernel to use the 387 maths
2619 emulation library even if a 387 maths coprocessor
2623 [HW] Never suspend the console
2624 Disable suspending of consoles during suspend and
2625 hibernate operations. Once disabled, debugging
2626 messages can reach various consoles while the rest
2627 of the system is being put to sleep (ie, while
2628 debugging driver suspend/resume hooks). This may
2629 not work reliably with all consoles, but is known
2630 to work with serial and VGA consoles.
2631 To facilitate more flexible debugging, we also add
2632 console_suspend, a printk module parameter to control
2633 it. Users could use console_suspend (usually
2634 /sys/module/printk/parameters/console_suspend) to
2635 turn on/off it dynamically.
2637 noaliencache [MM, NUMA, SLAB] Disables the allocation of alien
2638 caches in the slab allocator. Saves per-node memory,
2639 but will impact performance.
2643 noapic [SMP,APIC] Tells the kernel to not make use of any
2644 IOAPICs that may be present in the system.
2646 noautogroup Disable scheduler automatic task group creation.
2648 nobats [PPC] Do not use BATs for mapping kernel lowmem
2649 on "Classic" PPC cores.
2653 noclflush [BUGS=X86] Don't use the CLFLUSH instruction
2655 nodelayacct [KNL] Disable per-task delay accounting
2657 nodsp [SH] Disable hardware DSP at boot time.
2659 noefi Disable EFI runtime services support.
2664 On X86-32 available only on PAE configured kernels.
2665 noexec=on: enable non-executable mappings (default)
2666 noexec=off: disable non-executable mappings
2669 Disable SMAP (Supervisor Mode Access Prevention)
2670 even if it is supported by processor.
2673 Disable SMEP (Supervisor Mode Execution Prevention)
2674 even if it is supported by processor.
2677 This affects only 32-bit executables.
2678 noexec32=on: enable non-executable mappings (default)
2679 read doesn't imply executable mappings
2680 noexec32=off: disable non-executable mappings
2681 read implies executable mappings
2683 nofpu [MIPS,SH] Disable hardware FPU at boot time.
2685 nofxsr [BUGS=X86-32] Disables x86 floating point extended
2686 register save and restore. The kernel will only save
2687 legacy floating-point registers on task switch.
2689 nohugeiomap [KNL,x86] Disable kernel huge I/O mappings.
2691 nosmt [KNL,S390] Disable symmetric multithreading (SMT).
2692 Equivalent to smt=1.
2694 noxsave [BUGS=X86] Disables x86 extended register state save
2695 and restore using xsave. The kernel will fallback to
2696 enabling legacy floating-point and sse state.
2698 noxsaveopt [X86] Disables xsaveopt used in saving x86 extended
2699 register states. The kernel will fall back to use
2700 xsave to save the states. By using this parameter,
2701 performance of saving the states is degraded because
2702 xsave doesn't support modified optimization while
2703 xsaveopt supports it on xsaveopt enabled systems.
2705 noxsaves [X86] Disables xsaves and xrstors used in saving and
2706 restoring x86 extended register state in compacted
2707 form of xsave area. The kernel will fall back to use
2708 xsaveopt and xrstor to save and restore the states
2709 in standard form of xsave area. By using this
2710 parameter, xsave area per process might occupy more
2711 memory on xsaves enabled systems.
2713 nohlt [BUGS=ARM,SH] Tells the kernel that the sleep(SH) or
2714 wfi(ARM) instruction doesn't work correctly and not to
2715 use it. This is also useful when using JTAG debugger.
2717 no_file_caps Tells the kernel not to honor file capabilities. The
2718 only way then for a file to be executed with privilege
2719 is to be setuid root or executed by root.
2721 nohalt [IA-64] Tells the kernel not to use the power saving
2722 function PAL_HALT_LIGHT when idle. This increases
2723 power-consumption. On the positive side, it reduces
2724 interrupt wake-up latency, which may improve performance
2725 in certain environments such as networked servers or
2728 nohibernate [HIBERNATION] Disable hibernation and resume.
2730 nohz= [KNL] Boottime enable/disable dynamic ticks
2731 Valid arguments: on, off
2734 nohz_full= [KNL,BOOT]
2735 The argument is a cpu list, as described above.
2736 In kernels built with CONFIG_NO_HZ_FULL=y, set
2737 the specified list of CPUs whose tick will be stopped
2738 whenever possible. The boot CPU will be forced outside
2739 the range to maintain the timekeeping.
2740 The CPUs in this range must also be included in the
2743 noiotrap [SH] Disables trapped I/O port accesses.
2745 noirqdebug [X86-32] Disables the code which attempts to detect and
2746 disable unhandled interrupt sources.
2748 no_timer_check [X86,APIC] Disables the code which tests for
2749 broken timer IRQ sources.
2751 noisapnp [ISAPNP] Disables ISA PnP code.
2753 noinitrd [RAM] Tells the kernel not to load any configured
2756 nointremap [X86-64, Intel-IOMMU] Do not enable interrupt
2758 [Deprecated - use intremap=off]
2762 noinvpcid [X86] Disable the INVPCID cpu feature.
2764 nojitter [IA-64] Disables jitter checking for ITC timers.
2766 no-kvmclock [X86,KVM] Disable paravirtualized KVM clock driver
2768 no-kvmapf [X86,KVM] Disable paravirtualized asynchronous page
2771 no-steal-acc [X86,KVM] Disable paravirtualized steal time accounting.
2772 steal time is computed, but won't influence scheduler
2775 nolapic [X86-32,APIC] Do not enable or use the local APIC.
2777 nolapic_timer [X86-32,APIC] Do not use the local APIC timer.
2779 noltlbs [PPC] Do not use large page/tlb entries for kernel
2780 lowmem mapping on PPC40x and PPC8xx
2782 nomca [IA-64] Disable machine check abort handling
2784 nomce [X86-32] Disable Machine Check Exception
2786 nomfgpt [X86-32] Disable Multi-Function General Purpose
2787 Timer usage (for AMD Geode machines).
2789 nonmi_ipi [X86] Disable using NMI IPIs during panic/reboot to
2790 shutdown the other cpus. Instead use the REBOOT_VECTOR
2793 nomodule Disable module load
2795 nopat [X86] Disable PAT (page attribute table extension of
2796 pagetables) support.
2798 norandmaps Don't use address space randomization. Equivalent to
2799 echo 0 > /proc/sys/kernel/randomize_va_space
2801 noreplace-paravirt [X86,IA-64,PV_OPS] Don't patch paravirt_ops
2803 noreplace-smp [X86-32,SMP] Don't replace SMP instructions
2804 with UP alternatives
2806 nordrand [X86] Disable kernel use of the RDRAND and
2807 RDSEED instructions even if they are supported
2808 by the processor. RDRAND and RDSEED are still
2809 available to user space applications.
2811 noresume [SWSUSP] Disables resume and restores original swap
2814 no-scroll [VGA] Disables scrollback.
2815 This is required for the Braillex ib80-piezo Braille
2816 reader made by F.H. Papenmeier (Germany).
2820 nosep [BUGS=X86-32] Disables x86 SYSENTER/SYSEXIT support.
2822 nosmp [SMP] Tells an SMP kernel to act as a UP kernel,
2823 and disable the IO APIC. legacy for "maxcpus=0".
2825 nosoftlockup [KNL] Disable the soft-lockup detector.
2827 nosync [HW,M68K] Disables sync negotiation for all devices.
2829 notsc [BUGS=X86-32] Disable Time Stamp Counter
2831 nowatchdog [KNL] Disable both lockup detectors, i.e.
2832 soft-lockup and NMI watchdog (hard-lockup).
2836 nox2apic [X86-64,APIC] Do not enable x2APIC mode.
2838 cpu0_hotplug [X86] Turn on CPU0 hotplug feature when
2839 CONFIG_BOOTPARAM_HOTPLUG_CPU0 is off.
2840 Some features depend on CPU0. Known dependencies are:
2841 1. Resume from suspend/hibernate depends on CPU0.
2842 Suspend/hibernate will fail if CPU0 is offline and you
2843 need to online CPU0 before suspend/hibernate.
2844 2. PIC interrupts also depend on CPU0. CPU0 can't be
2845 removed if a PIC interrupt is detected.
2846 It's said poweroff/reboot may depend on CPU0 on some
2847 machines although I haven't seen such issues so far
2848 after CPU0 is offline on a few tested machines.
2849 If the dependencies are under your control, you can
2850 turn on cpu0_hotplug.
2852 nptcg= [IA-64] Override max number of concurrent global TLB
2853 purges which is reported from either PAL_VM_SUMMARY or
2856 nr_cpus= [SMP] Maximum number of processors that an SMP kernel
2857 could support. nr_cpus=n : n >= 1 limits the kernel to
2858 support 'n' processors. It could be larger than the
2859 number of already plugged CPU during bootup, later in
2860 runtime you can physically add extra cpu until it reaches
2861 n. So during boot up some boot time memory for per-cpu
2862 variables need be pre-allocated for later physical cpu
2865 nr_uarts= [SERIAL] maximum number of UARTs to be registered.
2867 numa_balancing= [KNL,X86] Enable or disable automatic NUMA balancing.
2868 Allowed values are enable and disable
2870 numa_zonelist_order= [KNL, BOOT] Select zonelist order for NUMA.
2871 one of ['zone', 'node', 'default'] can be specified
2872 This can be set from sysctl after boot.
2873 See Documentation/sysctl/vm.txt for details.
2875 ohci1394_dma=early [HW] enable debugging via the ohci1394 driver.
2876 See Documentation/debugging-via-ohci1394.txt for more
2879 olpc_ec_timeout= [OLPC] ms delay when issuing EC commands
2880 Rather than timing out after 20 ms if an EC
2881 command is not properly ACKed, override the length
2882 of the timeout. We have interrupts disabled while
2883 waiting for the ACK, so if this is set too high
2884 interrupts *may* be lost!
2886 omap_mux= [OMAP] Override bootloader pin multiplexing.
2887 Format: <mux_mode0.mode_name=value>...
2888 For example, to override I2C bus2:
2889 omap_mux=i2c2_scl.i2c2_scl=0x100,i2c2_sda.i2c2_sda=0x100
2891 oprofile.timer= [HW]
2892 Use timer interrupt instead of performance counters
2894 oprofile.cpu_type= Force an oprofile cpu type
2895 This might be useful if you have an older oprofile
2896 userland or if you want common events.
2897 Format: { arch_perfmon }
2898 arch_perfmon: [X86] Force use of architectural
2899 perfmon on Intel CPUs instead of the
2900 CPU specific event set.
2901 timer: [X86] Force use of architectural NMI
2902 timer mode (see also oprofile.timer
2903 for generic hr timer mode)
2905 oops=panic Always panic on oopses. Default is to just kill the
2906 process, but there is a small probability of
2907 deadlocking the machine.
2908 This will also cause panics on machine check exceptions.
2909 Useful together with panic=30 to trigger a reboot.
2912 See Documentation/sound/oss/oss-parameters.txt
2914 page_owner= [KNL] Boot-time page_owner enabling option.
2915 Storage of the information about who allocated
2916 each page is disabled in default. With this switch,
2918 on: enable the feature
2920 page_poison= [KNL] Boot-time parameter changing the state of
2921 poisoning on the buddy allocator.
2922 off: turn off poisoning
2923 on: turn on poisoning
2925 panic= [KNL] Kernel behaviour on panic: delay <timeout>
2926 timeout > 0: seconds before rebooting
2927 timeout = 0: wait forever
2928 timeout < 0: reboot immediately
2931 panic_on_warn panic() instead of WARN(). Useful to cause kdump
2934 crash_kexec_post_notifiers
2935 Run kdump after running panic-notifiers and dumping
2936 kmsg. This only for the users who doubt kdump always
2937 succeeds in any situation.
2938 Note that this also increases risks of kdump failure,
2939 because some panic notifiers can make the crashed
2940 kernel more unstable.
2942 parkbd.port= [HW] Parallel port number the keyboard adapter is
2943 connected to, default is 0.
2945 parkbd.mode= [HW] Parallel port keyboard adapter mode of operation,
2946 0 for XT, 1 for AT (default is AT).
2949 parport= [HW,PPT] Specify parallel ports. 0 disables.
2950 Format: { 0 | auto | 0xBBB[,IRQ[,DMA]] }
2951 Use 'auto' to force the driver to use any
2952 IRQ/DMA settings detected (the default is to
2953 ignore detected IRQ/DMA settings because of
2954 possible conflicts). You can specify the base
2955 address, IRQ, and DMA settings; IRQ and DMA
2956 should be numbers, or 'auto' (for using detected
2957 settings on that particular port), or 'nofifo'
2958 (to avoid using a FIFO even if it is detected).
2959 Parallel ports are assigned in the order they
2960 are specified on the command line, starting
2963 parport_init_mode= [HW,PPT]
2964 Configure VIA parallel port to operate in
2965 a specific mode. This is necessary on Pegasos
2966 computer where firmware has no options for setting
2967 up parallel port mode and sets it to spp.
2968 Currently this function knows 686a and 8231 chips.
2969 Format: [spp|ps2|epp|ecp|ecpepp]
2972 Halt all CPUs after the first oops has been printed for
2973 the specified number of seconds. This is to be used if
2974 your oopses keep scrolling off the screen.
2979 See header of drivers/block/paride/pcd.c.
2980 See also Documentation/blockdev/paride.txt.
2982 pci=option[,option...] [PCI] various PCI subsystem options:
2983 earlydump [X86] dump PCI config space before the kernel
2985 off [X86] don't probe for the PCI bus
2986 bios [X86-32] force use of PCI BIOS, don't access
2987 the hardware directly. Use this if your machine
2988 has a non-standard PCI host bridge.
2989 nobios [X86-32] disallow use of PCI BIOS, only direct
2990 hardware access methods are allowed. Use this
2991 if you experience crashes upon bootup and you
2992 suspect they are caused by the BIOS.
2993 conf1 [X86] Force use of PCI Configuration Access
2994 Mechanism 1 (config address in IO port 0xCF8,
2995 data in IO port 0xCFC, both 32-bit).
2996 conf2 [X86] Force use of PCI Configuration Access
2997 Mechanism 2 (IO port 0xCF8 is an 8-bit port for
2998 the function, IO port 0xCFA, also 8-bit, sets
2999 bus number. The config space is then accessed
3000 through ports 0xC000-0xCFFF).
3001 See http://wiki.osdev.org/PCI for more info
3002 on the configuration access mechanisms.
3003 noaer [PCIE] If the PCIEAER kernel config parameter is
3004 enabled, this kernel boot option can be used to
3005 disable the use of PCIE advanced error reporting.
3006 nodomains [PCI] Disable support for multiple PCI
3007 root domains (aka PCI segments, in ACPI-speak).
3008 nommconf [X86] Disable use of MMCONFIG for PCI
3010 check_enable_amd_mmconf [X86] check for and enable
3011 properly configured MMIO access to PCI
3012 config space on AMD family 10h CPU
3013 nomsi [MSI] If the PCI_MSI kernel config parameter is
3014 enabled, this kernel boot option can be used to
3015 disable the use of MSI interrupts system-wide.
3016 noioapicquirk [APIC] Disable all boot interrupt quirks.
3017 Safety option to keep boot IRQs enabled. This
3018 should never be necessary.
3019 ioapicreroute [APIC] Enable rerouting of boot IRQs to the
3020 primary IO-APIC for bridges that cannot disable
3021 boot IRQs. This fixes a source of spurious IRQs
3022 when the system masks IRQs.
3023 noioapicreroute [APIC] Disable workaround that uses the
3024 boot IRQ equivalent of an IRQ that connects to
3025 a chipset where boot IRQs cannot be disabled.
3026 The opposite of ioapicreroute.
3027 biosirq [X86-32] Use PCI BIOS calls to get the interrupt
3028 routing table. These calls are known to be buggy
3029 on several machines and they hang the machine
3030 when used, but on other computers it's the only
3031 way to get the interrupt routing table. Try
3032 this option if the kernel is unable to allocate
3033 IRQs or discover secondary PCI buses on your
3035 rom [X86] Assign address space to expansion ROMs.
3036 Use with caution as certain devices share
3037 address decoders between ROMs and other
3039 norom [X86] Do not assign address space to
3040 expansion ROMs that do not already have
3041 BIOS assigned address ranges.
3042 nobar [X86] Do not assign address space to the
3043 BARs that weren't assigned by the BIOS.
3044 irqmask=0xMMMM [X86] Set a bit mask of IRQs allowed to be
3045 assigned automatically to PCI devices. You can
3046 make the kernel exclude IRQs of your ISA cards
3048 pirqaddr=0xAAAAA [X86] Specify the physical address
3049 of the PIRQ table (normally generated
3050 by the BIOS) if it is outside the
3051 F0000h-100000h range.
3052 lastbus=N [X86] Scan all buses thru bus #N. Can be
3053 useful if the kernel is unable to find your
3054 secondary buses and you want to tell it
3055 explicitly which ones they are.
3056 assign-busses [X86] Always assign all PCI bus
3057 numbers ourselves, overriding
3058 whatever the firmware may have done.
3059 usepirqmask [X86] Honor the possible IRQ mask stored
3060 in the BIOS $PIR table. This is needed on
3061 some systems with broken BIOSes, notably
3062 some HP Pavilion N5400 and Omnibook XE3
3063 notebooks. This will have no effect if ACPI
3064 IRQ routing is enabled.
3065 noacpi [X86] Do not use ACPI for IRQ routing
3066 or for PCI scanning.
3067 use_crs [X86] Use PCI host bridge window information
3068 from ACPI. On BIOSes from 2008 or later, this
3069 is enabled by default. If you need to use this,
3070 please report a bug.
3071 nocrs [X86] Ignore PCI host bridge windows from ACPI.
3072 If you need to use this, please report a bug.
3073 routeirq Do IRQ routing for all PCI devices.
3074 This is normally done in pci_enable_device(),
3075 so this option is a temporary workaround
3076 for broken drivers that don't call it.
3077 skip_isa_align [X86] do not align io start addr, so can
3078 handle more pci cards
3079 noearly [X86] Don't do any early type 1 scanning.
3080 This might help on some broken boards which
3081 machine check when some devices' config space
3082 is read. But various workarounds are disabled
3083 and some IOMMU drivers will not work.
3084 bfsort Sort PCI devices into breadth-first order.
3085 This sorting is done to get a device
3086 order compatible with older (<= 2.4) kernels.
3087 nobfsort Don't sort PCI devices into breadth-first order.
3088 pcie_bus_tune_off Disable PCIe MPS (Max Payload Size)
3089 tuning and use the BIOS-configured MPS defaults.
3090 pcie_bus_safe Set every device's MPS to the largest value
3091 supported by all devices below the root complex.
3092 pcie_bus_perf Set device MPS to the largest allowable MPS
3093 based on its parent bus. Also set MRRS (Max
3094 Read Request Size) to the largest supported
3095 value (no larger than the MPS that the device
3096 or bus can support) for best performance.
3097 pcie_bus_peer2peer Set every device's MPS to 128B, which
3098 every device is guaranteed to support. This
3099 configuration allows peer-to-peer DMA between
3100 any pair of devices, possibly at the cost of
3101 reduced performance. This also guarantees
3102 that hot-added devices will work.
3103 cbiosize=nn[KMG] The fixed amount of bus space which is
3104 reserved for the CardBus bridge's IO window.
3105 The default value is 256 bytes.
3106 cbmemsize=nn[KMG] The fixed amount of bus space which is
3107 reserved for the CardBus bridge's memory
3108 window. The default value is 64 megabytes.
3111 [<order of align>@][<domain>:]<bus>:<slot>.<func>[; ...]
3112 [<order of align>@]pci:<vendor>:<device>\
3113 [:<subvendor>:<subdevice>][; ...]
3114 Specifies alignment and device to reassign
3115 aligned memory resources.
3116 If <order of align> is not specified,
3117 PAGE_SIZE is used as alignment.
3118 PCI-PCI bridge can be specified, if resource
3119 windows need to be expanded.
3120 To specify the alignment for several
3121 instances of a device, the PCI vendor,
3122 device, subvendor, and subdevice may be
3123 specified, e.g., 4096@pci:8086:9c22:103c:198f
3124 ecrc= Enable/disable PCIe ECRC (transaction layer
3125 end-to-end CRC checking).
3126 bios: Use BIOS/firmware settings. This is the
3130 hpiosize=nn[KMG] The fixed amount of bus space which is
3131 reserved for hotplug bridge's IO window.
3132 Default size is 256 bytes.
3133 hpmemsize=nn[KMG] The fixed amount of bus space which is
3134 reserved for hotplug bridge's memory window.
3135 Default size is 2 megabytes.
3136 hpbussize=nn The minimum amount of additional bus numbers
3137 reserved for buses below a hotplug bridge.
3139 realloc= Enable/disable reallocating PCI bridge resources
3140 if allocations done by BIOS are too small to
3141 accommodate resources required by all child
3143 off: Turn realloc off
3145 realloc same as realloc=on
3146 noari do not use PCIe ARI.
3147 pcie_scan_all Scan all possible PCIe devices. Otherwise we
3148 only look for one device below a PCIe downstream
3151 pcie_aspm= [PCIE] Forcibly enable or disable PCIe Active State Power
3154 force Enable ASPM even on devices that claim not to support it.
3155 WARNING: Forcing ASPM on may cause system lockups.
3157 pcie_hp= [PCIE] PCI Express Hotplug driver options:
3158 nomsi Do not use MSI for PCI Express Native Hotplug (this
3159 makes all PCIe ports use INTx for hotplug services).
3161 pcie_ports= [PCIE] PCIe ports handling:
3162 auto Ask the BIOS whether or not to use native PCIe services
3163 associated with PCIe ports (PME, hot-plug, AER). Use
3164 them only if that is allowed by the BIOS.
3165 native Use native PCIe services associated with PCIe ports
3167 compat Treat PCIe ports as PCI-to-PCI bridges, disable the PCIe
3170 pcie_port_pm= [PCIE] PCIe port power management handling:
3171 off Disable power management of all PCIe ports
3172 force Forcibly enable power management of all PCIe ports
3174 pcie_pme= [PCIE,PM] Native PCIe PME signaling options:
3175 nomsi Do not use MSI for native PCIe PME signaling (this makes
3176 all PCIe root ports use INTx for all services).
3178 pcmv= [HW,PCMCIA] BadgePAD 4
3182 Keep all power-domains already enabled by bootloader on,
3183 even if no driver has claimed them. This is useful
3184 for debug and development, but should not be
3185 needed on a platform with proper driver support.
3188 See Documentation/blockdev/paride.txt.
3190 pdcchassis= [PARISC,HW] Disable/Enable PDC Chassis Status codes at
3193 See arch/parisc/kernel/pdc_chassis.c
3195 percpu_alloc= Select which percpu first chunk allocator to use.
3196 Currently supported values are "embed" and "page".
3197 Archs may support subset or none of the selections.
3198 See comments in mm/percpu.c for details on each
3199 allocator. This parameter is primarily for debugging
3200 and performance comparison.
3203 See Documentation/blockdev/paride.txt.
3206 See Documentation/blockdev/paride.txt.
3208 pirq= [SMP,APIC] Manual mp-table setup
3209 See Documentation/x86/i386/IO-APIC.txt.
3211 plip= [PPT,NET] Parallel port network link
3212 Format: { parport<nr> | timid | 0 }
3213 See also Documentation/parport.txt.
3215 pmtmr= [X86] Manual setup of pmtmr I/O Port.
3216 Override pmtimer IOPort with a hex value.
3220 Enable PNP debug messages (depends on the
3221 CONFIG_PNP_DEBUG_MESSAGES option). Change at run-time
3222 via /sys/module/pnp/parameters/debug. We always show
3223 current resource usage; turning this on also shows
3224 possible settings and some assignment information.
3230 { on | off | curr | res | no-curr | no-res }
3233 [ISAPNP] Exclude IRQs for the autoconfiguration
3236 [ISAPNP] Exclude DMAs for the autoconfiguration
3238 pnp_reserve_io= [ISAPNP] Exclude I/O ports for the autoconfiguration
3239 Ranges are in pairs (I/O port base and size).
3242 [ISAPNP] Exclude memory regions for the
3244 Ranges are in pairs (memory base and size).
3246 ports= [IP_VS_FTP] IPVS ftp helper module
3248 Up to 8 (IP_VS_APP_MAX_PORTS) ports
3250 Format: <port>,<port>....
3252 ppc_strict_facility_enable
3253 [PPC] This option catches any kernel floating point,
3254 Altivec, VSX and SPE outside of regions specifically
3255 allowed (eg kernel_enable_fpu()/kernel_disable_fpu()).
3256 There is some performance impact when enabling this.
3258 print-fatal-signals=
3259 [KNL] debug: print fatal signals
3261 If enabled, warn about various signal handling
3262 related application anomalies: too many signals,
3263 too many POSIX.1 timers, fatal signals causing a
3266 If you hit the warning due to signal overflow,
3267 you might want to try "ulimit -i unlimited".
3271 printk.always_kmsg_dump=
3272 Trigger kmsg_dump for cases other than kernel oops or
3274 Format: <bool> (1/Y/y=enable, 0/N/n=disable)
3277 printk.devkmsg={on,off,ratelimit}
3278 Control writing to /dev/kmsg.
3279 on - unlimited logging to /dev/kmsg from userspace
3280 off - logging to /dev/kmsg disabled
3281 ratelimit - ratelimit the logging
3284 printk.time= Show timing data prefixed to each printk message line
3285 Format: <bool> (1/Y/y=enable, 0/N/n=disable)
3287 processor.max_cstate= [HW,ACPI]
3288 Limit processor to maximum C-state
3289 max_cstate=9 overrides any DMI blacklist limit.
3291 processor.nocst [HW,ACPI]
3292 Ignore the _CST method to determine C-states,
3293 instead using the legacy FADT method
3295 profile= [KNL] Enable kernel profiling via /proc/profile
3296 Format: [schedule,]<number>
3297 Param: "schedule" - profile schedule points.
3298 Param: <number> - step/bucket size as a power of 2 for
3299 statistical time based profiling.
3300 Param: "sleep" - profile D-state sleeping (millisecs).
3301 Requires CONFIG_SCHEDSTATS
3302 Param: "kvm" - profile VM exits.
3304 prompt_ramdisk= [RAM] List of RAM disks to prompt for floppy disk
3306 See Documentation/blockdev/ramdisk.txt.
3308 psmouse.proto= [HW,MOUSE] Highest PS2 mouse protocol extension to
3309 probe for; one of (bare|imps|exps|lifebook|any).
3310 psmouse.rate= [HW,MOUSE] Set desired mouse report rate, in reports
3312 psmouse.resetafter= [HW,MOUSE]
3313 Try to reset the device after so many bad packets
3316 [HW,MOUSE] Set desired mouse resolution, in dpi.
3317 psmouse.smartscroll=
3318 [HW,MOUSE] Controls Logitech smartscroll autorepeat.
3319 0 = disabled, 1 = enabled (default).
3321 pstore.backend= Specify the name of the pstore backend to use
3324 See Documentation/blockdev/paride.txt.
3327 [KNL] Number of legacy pty's. Overwrites compiled-in
3330 quiet [KNL] Disable most log messages
3335 See Documentation/md.txt.
3337 ramdisk_size= [RAM] Sizes of RAM disks in kilobytes
3338 See Documentation/blockdev/ramdisk.txt.
3341 The argument is a cpu list, as described above.
3343 In kernels built with CONFIG_RCU_NOCB_CPU=y, set
3344 the specified list of CPUs to be no-callback CPUs.
3345 Invocation of these CPUs' RCU callbacks will
3346 be offloaded to "rcuox/N" kthreads created for
3347 that purpose, where "x" is "b" for RCU-bh, "p"
3348 for RCU-preempt, and "s" for RCU-sched, and "N"
3349 is the CPU number. This reduces OS jitter on the
3350 offloaded CPUs, which can be useful for HPC and
3351 real-time workloads. It can also improve energy
3352 efficiency for asymmetric multiprocessors.
3355 Rather than requiring that offloaded CPUs
3356 (specified by rcu_nocbs= above) explicitly
3357 awaken the corresponding "rcuoN" kthreads,
3358 make these kthreads poll for callbacks.
3359 This improves the real-time response for the
3360 offloaded CPUs by relieving them of the need to
3361 wake up the corresponding kthread, but degrades
3362 energy efficiency by requiring that the kthreads
3363 periodically wake up to do the polling.
3365 rcutree.blimit= [KNL]
3366 Set maximum number of finished RCU callbacks to
3367 process in one batch.
3369 rcutree.dump_tree= [KNL]
3370 Dump the structure of the rcu_node combining tree
3371 out at early boot. This is used for diagnostic
3372 purposes, to verify correct tree setup.
3374 rcutree.gp_cleanup_delay= [KNL]
3375 Set the number of jiffies to delay each step of
3376 RCU grace-period cleanup. This only has effect
3377 when CONFIG_RCU_TORTURE_TEST_SLOW_CLEANUP is set.
3379 rcutree.gp_init_delay= [KNL]
3380 Set the number of jiffies to delay each step of
3381 RCU grace-period initialization. This only has
3382 effect when CONFIG_RCU_TORTURE_TEST_SLOW_INIT
3385 rcutree.gp_preinit_delay= [KNL]
3386 Set the number of jiffies to delay each step of
3387 RCU grace-period pre-initialization, that is,
3388 the propagation of recent CPU-hotplug changes up
3389 the rcu_node combining tree. This only has effect
3390 when CONFIG_RCU_TORTURE_TEST_SLOW_PREINIT is set.
3392 rcutree.rcu_fanout_exact= [KNL]
3393 Disable autobalancing of the rcu_node combining
3394 tree. This is used by rcutorture, and might
3395 possibly be useful for architectures having high
3396 cache-to-cache transfer latencies.
3398 rcutree.rcu_fanout_leaf= [KNL]
3399 Change the number of CPUs assigned to each
3400 leaf rcu_node structure. Useful for very
3401 large systems, which will choose the value 64,
3402 and for NUMA systems with large remote-access
3403 latencies, which will choose a value aligned
3404 with the appropriate hardware boundaries.
3406 rcutree.jiffies_till_sched_qs= [KNL]
3407 Set required age in jiffies for a
3408 given grace period before RCU starts
3409 soliciting quiescent-state help from
3410 rcu_note_context_switch().
3412 rcutree.jiffies_till_first_fqs= [KNL]
3413 Set delay from grace-period initialization to
3414 first attempt to force quiescent states.
3415 Units are jiffies, minimum value is zero,
3416 and maximum value is HZ.
3418 rcutree.jiffies_till_next_fqs= [KNL]
3419 Set delay between subsequent attempts to force
3420 quiescent states. Units are jiffies, minimum
3421 value is one, and maximum value is HZ.
3423 rcutree.kthread_prio= [KNL,BOOT]
3424 Set the SCHED_FIFO priority of the RCU per-CPU
3425 kthreads (rcuc/N). This value is also used for
3426 the priority of the RCU boost threads (rcub/N)
3427 and for the RCU grace-period kthreads (rcu_bh,
3428 rcu_preempt, and rcu_sched). If RCU_BOOST is
3429 set, valid values are 1-99 and the default is 1
3430 (the least-favored priority). Otherwise, when
3431 RCU_BOOST is not set, valid values are 0-99 and
3432 the default is zero (non-realtime operation).
3434 rcutree.rcu_nocb_leader_stride= [KNL]
3435 Set the number of NOCB kthread groups, which
3436 defaults to the square root of the number of
3437 CPUs. Larger numbers reduces the wakeup overhead
3438 on the per-CPU grace-period kthreads, but increases
3439 that same overhead on each group's leader.
3441 rcutree.qhimark= [KNL]
3442 Set threshold of queued RCU callbacks beyond which
3443 batch limiting is disabled.
3445 rcutree.qlowmark= [KNL]
3446 Set threshold of queued RCU callbacks below which
3447 batch limiting is re-enabled.
3449 rcutree.rcu_idle_gp_delay= [KNL]
3450 Set wakeup interval for idle CPUs that have
3451 RCU callbacks (RCU_FAST_NO_HZ=y).
3453 rcutree.rcu_idle_lazy_gp_delay= [KNL]
3454 Set wakeup interval for idle CPUs that have
3455 only "lazy" RCU callbacks (RCU_FAST_NO_HZ=y).
3456 Lazy RCU callbacks are those which RCU can
3457 prove do nothing more than free memory.
3459 rcuperf.gp_exp= [KNL]
3460 Measure performance of expedited synchronous
3461 grace-period primitives.
3463 rcuperf.holdoff= [KNL]
3464 Set test-start holdoff period. The purpose of
3465 this parameter is to delay the start of the
3466 test until boot completes in order to avoid
3469 rcuperf.nreaders= [KNL]
3470 Set number of RCU readers. The value -1 selects
3471 N, where N is the number of CPUs. A value
3472 "n" less than -1 selects N-n+1, where N is again
3473 the number of CPUs. For example, -2 selects N
3474 (the number of CPUs), -3 selects N+1, and so on.
3475 A value of "n" less than or equal to -N selects
3478 rcuperf.nwriters= [KNL]
3479 Set number of RCU writers. The values operate
3480 the same as for rcuperf.nreaders.
3481 N, where N is the number of CPUs
3483 rcuperf.perf_runnable= [BOOT]
3484 Start rcuperf running at boot time.
3486 rcuperf.shutdown= [KNL]
3487 Shut the system down after performance tests
3488 complete. This is useful for hands-off automated
3491 rcuperf.perf_type= [KNL]
3492 Specify the RCU implementation to test.
3494 rcuperf.verbose= [KNL]
3495 Enable additional printk() statements.
3497 rcutorture.cbflood_inter_holdoff= [KNL]
3498 Set holdoff time (jiffies) between successive
3499 callback-flood tests.
3501 rcutorture.cbflood_intra_holdoff= [KNL]
3502 Set holdoff time (jiffies) between successive
3503 bursts of callbacks within a given callback-flood
3506 rcutorture.cbflood_n_burst= [KNL]
3507 Set the number of bursts making up a given
3508 callback-flood test. Set this to zero to
3509 disable callback-flood testing.
3511 rcutorture.cbflood_n_per_burst= [KNL]
3512 Set the number of callbacks to be registered
3513 in a given burst of a callback-flood test.
3515 rcutorture.fqs_duration= [KNL]
3516 Set duration of force_quiescent_state bursts
3519 rcutorture.fqs_holdoff= [KNL]
3520 Set holdoff time within force_quiescent_state bursts
3523 rcutorture.fqs_stutter= [KNL]
3524 Set wait time between force_quiescent_state bursts
3527 rcutorture.gp_cond= [KNL]
3528 Use conditional/asynchronous update-side
3529 primitives, if available.
3531 rcutorture.gp_exp= [KNL]
3532 Use expedited update-side primitives, if available.
3534 rcutorture.gp_normal= [KNL]
3535 Use normal (non-expedited) asynchronous
3536 update-side primitives, if available.
3538 rcutorture.gp_sync= [KNL]
3539 Use normal (non-expedited) synchronous
3540 update-side primitives, if available. If all
3541 of rcutorture.gp_cond=, rcutorture.gp_exp=,
3542 rcutorture.gp_normal=, and rcutorture.gp_sync=
3543 are zero, rcutorture acts as if is interpreted
3544 they are all non-zero.
3546 rcutorture.n_barrier_cbs= [KNL]
3547 Set callbacks/threads for rcu_barrier() testing.
3549 rcutorture.nfakewriters= [KNL]
3550 Set number of concurrent RCU writers. These just
3551 stress RCU, they don't participate in the actual
3552 test, hence the "fake".
3554 rcutorture.nreaders= [KNL]
3555 Set number of RCU readers. The value -1 selects
3556 N-1, where N is the number of CPUs. A value
3557 "n" less than -1 selects N-n-2, where N is again
3558 the number of CPUs. For example, -2 selects N
3559 (the number of CPUs), -3 selects N+1, and so on.
3561 rcutorture.object_debug= [KNL]
3562 Enable debug-object double-call_rcu() testing.
3564 rcutorture.onoff_holdoff= [KNL]
3565 Set time (s) after boot for CPU-hotplug testing.
3567 rcutorture.onoff_interval= [KNL]
3568 Set time (s) between CPU-hotplug operations, or
3569 zero to disable CPU-hotplug testing.
3571 rcutorture.shuffle_interval= [KNL]
3572 Set task-shuffle interval (s). Shuffling tasks
3573 allows some CPUs to go into dyntick-idle mode
3574 during the rcutorture test.
3576 rcutorture.shutdown_secs= [KNL]
3577 Set time (s) after boot system shutdown. This
3578 is useful for hands-off automated testing.
3580 rcutorture.stall_cpu= [KNL]
3581 Duration of CPU stall (s) to test RCU CPU stall
3582 warnings, zero to disable.
3584 rcutorture.stall_cpu_holdoff= [KNL]
3585 Time to wait (s) after boot before inducing stall.
3587 rcutorture.stat_interval= [KNL]
3588 Time (s) between statistics printk()s.
3590 rcutorture.stutter= [KNL]
3591 Time (s) to stutter testing, for example, specifying
3592 five seconds causes the test to run for five seconds,
3593 wait for five seconds, and so on. This tests RCU's
3594 ability to transition abruptly to and from idle.
3596 rcutorture.test_boost= [KNL]
3597 Test RCU priority boosting? 0=no, 1=maybe, 2=yes.
3598 "Maybe" means test if the RCU implementation
3599 under test support RCU priority boosting.
3601 rcutorture.test_boost_duration= [KNL]
3602 Duration (s) of each individual boost test.
3604 rcutorture.test_boost_interval= [KNL]
3605 Interval (s) between each boost test.
3607 rcutorture.test_no_idle_hz= [KNL]
3608 Test RCU's dyntick-idle handling. See also the
3609 rcutorture.shuffle_interval parameter.
3611 rcutorture.torture_runnable= [BOOT]
3612 Start rcutorture running at boot time.
3614 rcutorture.torture_type= [KNL]
3615 Specify the RCU implementation to test.
3617 rcutorture.verbose= [KNL]
3618 Enable additional printk() statements.
3620 rcupdate.rcu_cpu_stall_suppress= [KNL]
3621 Suppress RCU CPU stall warning messages.
3623 rcupdate.rcu_cpu_stall_timeout= [KNL]
3624 Set timeout for RCU CPU stall warning messages.
3626 rcupdate.rcu_expedited= [KNL]
3627 Use expedited grace-period primitives, for
3628 example, synchronize_rcu_expedited() instead
3629 of synchronize_rcu(). This reduces latency,
3630 but can increase CPU utilization, degrade
3631 real-time latency, and degrade energy efficiency.
3632 No effect on CONFIG_TINY_RCU kernels.
3634 rcupdate.rcu_normal= [KNL]
3635 Use only normal grace-period primitives,
3636 for example, synchronize_rcu() instead of
3637 synchronize_rcu_expedited(). This improves
3638 real-time latency, CPU utilization, and
3639 energy efficiency, but can expose users to
3640 increased grace-period latency. This parameter
3641 overrides rcupdate.rcu_expedited. No effect on
3642 CONFIG_TINY_RCU kernels.
3644 rcupdate.rcu_normal_after_boot= [KNL]
3645 Once boot has completed (that is, after
3646 rcu_end_inkernel_boot() has been invoked), use
3647 only normal grace-period primitives. No effect
3648 on CONFIG_TINY_RCU kernels.
3650 rcupdate.rcu_task_stall_timeout= [KNL]
3651 Set timeout in jiffies for RCU task stall warning
3652 messages. Disable with a value less than or equal
3655 rcupdate.rcu_self_test= [KNL]
3656 Run the RCU early boot self tests
3658 rcupdate.rcu_self_test_bh= [KNL]
3659 Run the RCU bh early boot self tests
3661 rcupdate.rcu_self_test_sched= [KNL]
3662 Run the RCU sched early boot self tests
3666 Run specified binary instead of /init from the ramdisk,
3667 used for early userspace startup. See initrd.
3670 Format (x86 or x86_64):
3671 [w[arm] | c[old] | h[ard] | s[oft] | g[pio]] \
3673 [[,]b[ios] | a[cpi] | k[bd] | t[riple] | e[fi] | p[ci]] \
3675 Where reboot_mode is one of warm (soft) or cold (hard) or gpio,
3676 reboot_type is one of bios, acpi, kbd, triple, efi, or pci,
3677 reboot_force is either force or not specified,
3678 reboot_cpu is s[mp]#### with #### being the processor
3679 to be used for rebooting.
3682 [KNL, SMP] Set scheduler's default relax_domain_level.
3683 See Documentation/cgroup-v1/cpusets.txt.
3685 relative_sleep_states=
3686 [SUSPEND] Use sleep state labeling where the deepest
3687 state available other than hibernation is always "mem".
3688 Format: { "0" | "1" }
3689 0 -- Traditional sleep state labels.
3690 1 -- Relative sleep state labels.
3692 reserve= [KNL,BUGS] Force the kernel to ignore some iomem area
3694 reservetop= [X86-32]
3696 Reserves a hole at the top of the kernel virtual
3701 Set the amount of memory to reserve for BIOS at
3702 the bottom of the address space.
3704 reset_devices [KNL] Force drivers to reset the underlying device
3705 during initialization.
3708 Specify the partition device for software suspend
3710 {/dev/<dev> | PARTUUID=<uuid> | <int>:<int> | <hex>}
3712 resume_offset= [SWSUSP]
3713 Specify the offset from the beginning of the partition
3714 given by "resume=" at which the swap header is located,
3715 in <PAGE_SIZE> units (needed only for swap files).
3716 See Documentation/power/swsusp-and-swap-files.txt
3718 resumedelay= [HIBERNATION] Delay (in seconds) to pause before attempting to
3719 read the resume files
3721 resumewait [HIBERNATION] Wait (indefinitely) for resume device to show up.
3722 Useful for devices that are detected asynchronously
3723 (e.g. USB and MMC devices).
3725 hibernate= [HIBERNATION]
3726 noresume Don't check if there's a hibernation image
3727 present during boot.
3728 nocompress Don't compress/decompress hibernation images.
3729 no Disable hibernation and resume.
3730 protect_image Turn on image protection during restoration
3731 (that will set all pages holding image data
3732 during restoration read-only).
3734 retain_initrd [RAM] Keep initrd memory after extraction
3736 rfkill.default_state=
3737 0 "airplane mode". All wifi, bluetooth, wimax, gps, fm,
3738 etc. communication is blocked by default.
3741 rfkill.master_switch_mode=
3742 0 The "airplane mode" button does nothing.
3743 1 The "airplane mode" button toggles between everything
3744 blocked and the previous configuration.
3745 2 The "airplane mode" button toggles between everything
3746 blocked and everything unblocked.
3748 rhash_entries= [KNL,NET]
3749 Set number of hash buckets for route cache
3751 ro [KNL] Mount root device read-only on boot
3754 on Mark read-only kernel memory as read-only (default).
3755 off Leave read-only kernel memory writable for debugging.
3758 Enable the uart passthrough on the designated usb port
3759 on Rockchip SoCs. When active, the signals of the
3760 debug-uart get routed to the D+ and D- pins of the usb
3761 port and the regular usb controller gets disabled.
3763 root= [KNL] Root filesystem
3764 See name_to_dev_t comment in init/do_mounts.c.
3766 rootdelay= [KNL] Delay (in seconds) to pause before attempting to
3767 mount the root filesystem
3769 rootflags= [KNL] Set root filesystem mount option string
3771 rootfstype= [KNL] Set root filesystem type
3773 rootwait [KNL] Wait (indefinitely) for root device to show up.
3774 Useful for devices that are detected asynchronously
3775 (e.g. USB and MMC devices).
3777 rproc_mem=nn[KMG][@address]
3778 [KNL,ARM,CMA] Remoteproc physical memory block.
3779 Memory area to be used by remote processor image,
3782 rw [KNL] Mount root device read-write on boot
3784 S [KNL] Run init in single mode
3786 s390_iommu= [HW,S390]
3787 Set s390 IOTLB flushing mode
3789 With strict flushing every unmap operation will result in
3790 an IOTLB flush. Default is lazy flushing before reuse,
3794 See drivers/net/irda/sa1100_ir.c.
3796 sbni= [NET] Granch SBNI12 leased line adapter
3798 sched_debug [KNL] Enables verbose scheduler debug messages.
3800 schedstats= [KNL,X86] Enable or disable scheduled statistics.
3801 Allowed values are enable and disable. This feature
3802 incurs a small amount of overhead in the scheduler
3803 but is useful for debugging and performance tuning.
3805 skew_tick= [KNL] Offset the periodic timer tick per cpu to mitigate
3806 xtime_lock contention on larger systems, and/or RCU lock
3807 contention on all systems with CONFIG_MAXSMP set.
3808 Format: { "0" | "1" }
3809 0 -- disable. (may be 1 via CONFIG_CMDLINE="skew_tick=1"
3811 Note: increases power consumption, thus should only be
3812 enabled if running jitter sensitive (HPC/RT) workloads.
3814 security= [SECURITY] Choose a security module to enable at boot.
3815 If this boot parameter is not specified, only the first
3816 security module asking for security registration will be
3817 loaded. An invalid security module name will be treated
3818 as if no module has been chosen.
3820 selinux= [SELINUX] Disable or enable SELinux at boot time.
3821 Format: { "0" | "1" }
3822 See security/selinux/Kconfig help text.
3825 Default value is set via kernel config option.
3826 If enabled at boot time, /selinux/disable can be used
3827 later to disable prior to initial policy load.
3829 apparmor= [APPARMOR] Disable or enable AppArmor at boot time
3830 Format: { "0" | "1" }
3831 See security/apparmor/Kconfig help text
3834 Default value is set via kernel config option.
3836 serialnumber [BUGS=X86-32]
3839 Maximal number of shapers.
3841 show_msr= [x86] show boot-time MSR settings
3842 Format: { <integer> }
3843 Show boot-time (BIOS-initialized) MSR settings.
3844 The parameter means the number of CPUs to show,
3845 for example 1 means boot CPU only.
3853 Disable merging of slabs with similar size. May be
3854 necessary if there is some reason to distinguish
3855 allocs to different slabs. Debug options disable
3856 merging on their own.
3857 For more information see Documentation/vm/slub.txt.
3859 slab_max_order= [MM, SLAB]
3860 Determines the maximum allowed order for slabs.
3861 A high setting may cause OOMs due to memory
3862 fragmentation. Defaults to 1 for systems with
3863 more than 32MB of RAM, 0 otherwise.
3865 slub_debug[=options[,slabs]] [MM, SLUB]
3866 Enabling slub_debug allows one to determine the
3867 culprit if slab objects become corrupted. Enabling
3868 slub_debug can create guard zones around objects and
3869 may poison objects when not in use. Also tracks the
3870 last alloc / free. For more information see
3871 Documentation/vm/slub.txt.
3873 slub_max_order= [MM, SLUB]
3874 Determines the maximum allowed order for slabs.
3875 A high setting may cause OOMs due to memory
3876 fragmentation. For more information see
3877 Documentation/vm/slub.txt.
3879 slub_min_objects= [MM, SLUB]
3880 The minimum number of objects per slab. SLUB will
3881 increase the slab order up to slub_max_order to
3882 generate a sufficiently large slab able to contain
3883 the number of objects indicated. The higher the number
3884 of objects the smaller the overhead of tracking slabs
3885 and the less frequently locks need to be acquired.
3886 For more information see Documentation/vm/slub.txt.
3888 slub_min_order= [MM, SLUB]
3889 Determines the minimum page order for slabs. Must be
3890 lower than slub_max_order.
3891 For more information see Documentation/vm/slub.txt.
3893 slub_nomerge [MM, SLUB]
3894 Same with slab_nomerge. This is supported for legacy.
3895 See slab_nomerge for more information.
3898 Format: <io1>[,<io2>[,...,<io8>]]
3900 smsc-ircc2.nopnp [HW] Don't use PNP to discover SMC devices
3901 smsc-ircc2.ircc_cfg= [HW] Device configuration I/O port
3902 smsc-ircc2.ircc_sir= [HW] SIR base I/O port
3903 smsc-ircc2.ircc_fir= [HW] FIR base I/O port
3904 smsc-ircc2.ircc_irq= [HW] IRQ line
3905 smsc-ircc2.ircc_dma= [HW] DMA channel
3906 smsc-ircc2.ircc_transceiver= [HW] Transceiver type:
3907 0: Toshiba Satellite 1800 (GP data pin select)
3908 1: Fast pin select (default)
3911 smt [KNL,S390] Set the maximum number of threads (logical
3912 CPUs) to use per physical CPU on systems capable of
3913 symmetric multithreading (SMT). Will be capped to the
3914 actual hardware limit.
3916 Default: -1 (no limit)
3919 [KNL] Should the soft-lockup detector generate panics.
3922 softlockup_all_cpu_backtrace=
3923 [KNL] Should the soft-lockup detector generate
3924 backtraces on all cpus.
3927 sonypi.*= [HW] Sony Programmable I/O Control Device driver
3928 See Documentation/laptops/sonypi.txt
3930 spia_io_base= [HW,MTD]
3935 stack_guard_gap= [MM]
3936 override the default stack gap protection. The value
3937 is in page units and it defines how many pages prior
3938 to (for stacks growing down) resp. after (for stacks
3939 growing up) the main stack are reserved for no other
3940 mapping. Default value is 256 pages.
3943 Enabled the stack tracer on boot up.
3945 stacktrace_filter=[function-list]
3946 [FTRACE] Limit the functions that the stack tracer
3947 will trace at boot up. function-list is a comma separated
3948 list of functions. This list can be changed at run
3949 time by the stack_trace_filter file in the debugfs
3950 tracing directory. Note, this enables stack tracing
3951 and the stacktrace above is not needed.
3955 Set the STI (builtin display/keyboard on the HP-PARISC
3956 machines) console (graphic card) which should be used
3957 as the initial boot-console.
3958 See also comment in drivers/video/console/sticore.c.
3961 See comment in drivers/video/console/sticore.c.
3964 Format: bpp:<bpp1>[:<bpp2>[:<bpp3>...]]
3966 sunrpc.min_resvport=
3967 sunrpc.max_resvport=
3969 SunRPC servers often require that client requests
3970 originate from a privileged port (i.e. a port in the
3971 range 0 < portnr < 1024).
3972 An administrator who wishes to reserve some of these
3973 ports for other uses may adjust the range that the
3974 kernel's sunrpc client considers to be privileged
3975 using these two parameters to set the minimum and
3976 maximum port values.
3978 sunrpc.svc_rpc_per_connection_limit=
3980 Limit the number of requests that the server will
3981 process in parallel from a single connection.
3982 The default value is 0 (no limit).
3986 Control how the NFS server code allocates CPUs to
3987 service thread pools. Depending on how many NICs
3988 you have and where their interrupts are bound, this
3989 option will affect which CPUs will do NFS serving.
3990 Note: this parameter cannot be changed while the
3991 NFS server is running.
3993 auto the server chooses an appropriate mode
3994 automatically using heuristics
3995 global a single global pool contains all CPUs
3996 percpu one pool for each CPU
3997 pernode one pool for each NUMA node (equivalent
3998 to global on non-NUMA machines)
4000 sunrpc.tcp_slot_table_entries=
4001 sunrpc.udp_slot_table_entries=
4003 Sets the upper limit on the number of simultaneous
4004 RPC calls that can be sent from the client to a
4005 server. Increasing these values may allow you to
4006 improve throughput, but will also increase the
4007 amount of memory reserved for use by the client.
4009 suspend.pm_test_delay=
4011 Sets the number of seconds to remain in a suspend test
4012 mode before resuming the system (see
4013 /sys/power/pm_test). Only available when CONFIG_PM_DEBUG
4014 is set. Default value is 5.
4017 [KNL] Enable accounting of swap in memory resource
4018 controller if no parameter or 1 is given or disable
4019 it if 0 is given (See Documentation/cgroup-v1/memory.txt)
4021 swiotlb= [ARM,IA-64,PPC,MIPS,X86]
4022 Format: { <int> | force | noforce }
4023 <int> -- Number of I/O TLB slabs
4024 force -- force using of bounce buffers even if they
4025 wouldn't be automatically used by the kernel
4026 noforce -- Never use bounce buffers (for debugging)
4030 sysfs.deprecated=0|1 [KNL]
4031 Enable/disable old style sysfs layout for old udev
4032 on older distributions. When this option is enabled
4033 very new udev will not work anymore. When this option
4034 is disabled (or CONFIG_SYSFS_DEPRECATED not compiled)
4035 in older udev will not work anymore.
4036 Default depends on CONFIG_SYSFS_DEPRECATED_V2 set in
4037 the kernel configuration.
4039 sysrq_always_enabled
4041 Ignore sysrq setting - this boot parameter will
4042 neutralize any effect of /proc/sys/kernel/sysrq.
4043 Useful for debugging.
4045 tcpmhash_entries= [KNL,NET]
4046 Set the number of tcp_metrics_hash slots.
4047 Default value is 8192 or 16384 depending on total
4048 ram pages. This is used to specify the TCP metrics
4049 cache size. See Documentation/networking/ip-sysctl.txt
4050 "tcp_no_metrics_save" section for more details.
4054 test_suspend= [SUSPEND][,N]
4055 Specify "mem" (for Suspend-to-RAM) or "standby" (for
4056 standby suspend) or "freeze" (for suspend type freeze)
4057 as the system sleep state during system startup with
4058 the optional capability to repeat N number of times.
4059 The system is woken from this state using a
4060 wakeup-capable RTC alarm.
4062 thash_entries= [KNL,NET]
4063 Set number of hash buckets for TCP connection
4065 thermal.act= [HW,ACPI]
4066 -1: disable all active trip points in all thermal zones
4067 <degrees C>: override all lowest active trip points
4069 thermal.crt= [HW,ACPI]
4070 -1: disable all critical trip points in all thermal zones
4071 <degrees C>: override all critical trip points
4073 thermal.nocrt= [HW,ACPI]
4074 Set to disable actions on ACPI thermal zone
4075 critical and hot trip points.
4077 thermal.off= [HW,ACPI]
4078 1: disable ACPI thermal control
4080 thermal.psv= [HW,ACPI]
4081 -1: disable all passive trip points
4082 <degrees C>: override all passive trip points to this
4085 thermal.tzp= [HW,ACPI]
4086 Specify global default ACPI thermal zone polling rate
4087 <deci-seconds>: poll all this frequency
4088 0: no polling (default)
4091 Force threading of all interrupt handlers except those
4092 marked explicitly IRQF_NO_THREAD.
4095 Enable the Transcendent memory driver if built-in.
4097 tmem.cleancache=0|1 [KNL, XEN]
4098 Default is on (1). Disable the usage of the cleancache
4099 API to send anonymous pages to the hypervisor.
4101 tmem.frontswap=0|1 [KNL, XEN]
4102 Default is on (1). Disable the usage of the frontswap
4103 API to send swap pages to the hypervisor. If disabled
4104 the selfballooning and selfshrinking are force disabled.
4106 tmem.selfballooning=0|1 [KNL, XEN]
4107 Default is on (1). Disable the driving of swap pages
4110 tmem.selfshrinking=0|1 [KNL, XEN]
4111 Default is on (1). Partial swapoff that immediately
4112 transfers pages from Xen hypervisor back to the
4113 kernel based on different criteria.
4117 Specify if the kernel should make use of the cpu
4118 topology information if the hardware supports this.
4119 The scheduler will make use of this information and
4120 e.g. base its process migration decisions on it.
4123 topology_updates= [KNL, PPC, NUMA]
4125 Specify if the kernel should ignore (off)
4126 topology updates sent by the hypervisor to this
4131 tpm_suspend_pcr=[HW,TPM]
4132 Format: integer pcr id
4133 Specify that at suspend time, the tpm driver
4134 should extend the specified pcr with zeros,
4135 as a workaround for some chips which fail to
4136 flush the last written pcr on TPM_SaveState.
4137 This will guarantee that all the other pcrs
4140 trace_buf_size=nn[KMG]
4141 [FTRACE] will set tracing buffer size on each cpu.
4143 trace_event=[event-list]
4144 [FTRACE] Set and start specified trace events in order
4145 to facilitate early boot debugging. The event-list is a
4146 comma separated list of trace events to enable. See
4147 also Documentation/trace/events.txt
4149 trace_options=[option-list]
4150 [FTRACE] Enable or disable tracer options at boot.
4151 The option-list is a comma delimited list of options
4152 that can be enabled or disabled just as if you were
4153 to echo the option name into
4155 /sys/kernel/debug/tracing/trace_options
4157 For example, to enable stacktrace option (to dump the
4158 stack trace of each event), add to the command line:
4160 trace_options=stacktrace
4162 See also Documentation/trace/ftrace.txt "trace options"
4166 Have the tracepoints sent to printk as well as the
4167 tracing ring buffer. This is useful for early boot up
4168 where the system hangs or reboots and does not give the
4169 option for reading the tracing buffer or performing a
4170 ftrace_dump_on_oops.
4172 To turn off having tracepoints sent to printk,
4173 echo 0 > /proc/sys/kernel/tracepoint_printk
4174 Note, echoing 1 into this file without the
4175 tracepoint_printk kernel cmdline option has no effect.
4179 Having tracepoints sent to printk() and activating high
4180 frequency tracepoints such as irq or sched, can cause
4181 the system to live lock.
4184 [FTRACE] enable this option to disable tracing when a
4185 warning is hit. This turns off "tracing_on". Tracing can
4186 be enabled again by echoing '1' into the "tracing_on"
4187 file located in /sys/kernel/debug/tracing/
4189 This option is useful, as it disables the trace before
4190 the WARNING dump is called, which prevents the trace to
4191 be filled with content caused by the warning output.
4193 This option can also be set at run time via the sysctl
4194 option: kernel/traceoff_on_warning
4196 transparent_hugepage=
4198 Format: [always|madvise|never]
4199 Can be used to control the default behavior of the system
4200 with respect to transparent hugepages.
4201 See Documentation/vm/transhuge.txt for more details.
4203 tsc= Disable clocksource stability checks for TSC.
4205 [x86] reliable: mark tsc clocksource as reliable, this
4206 disables clocksource verification at runtime, as well
4207 as the stability checks done at bootup. Used to enable
4208 high-resolution timer mode on older hardware, and in
4209 virtualized environment.
4210 [x86] noirqtime: Do not use TSC to do irq accounting.
4211 Used to run time disable IRQ_TIME_ACCOUNTING on any
4212 platforms where RDTSC is slow and this accounting
4215 turbografx.map[2|3]= [HW,JOY]
4216 TurboGraFX parallel port interface
4218 <port#>,<js1>,<js2>,<js3>,<js4>,<js5>,<js6>,<js7>
4219 See also Documentation/input/joystick-parport.txt
4221 udbg-immortal [PPC] When debugging early kernel crashes that
4222 happen after console_init() and before a proper
4223 console driver takes over, this boot options might
4224 help "seeing" what's going on.
4226 uhash_entries= [KNL,NET]
4227 Set number of hash buckets for UDP/UDP-Lite connections
4230 [USB] Ignore overcurrent events (default N).
4231 Some badly-designed motherboards generate lots of
4232 bogus events, for ports that aren't wired to
4233 anything. Set this parameter to avoid log spamming.
4234 Note that genuine overcurrent events won't be
4238 [X86] Cause panic on unknown NMI.
4240 usbcore.authorized_default=
4241 [USB] Default USB device authorization:
4242 (default -1 = authorized except for wireless USB,
4243 0 = not authorized, 1 = authorized)
4245 usbcore.autosuspend=
4246 [USB] The autosuspend time delay (in seconds) used
4247 for newly-detected USB devices (default 2). This
4248 is the time required before an idle device will be
4249 autosuspended. Devices for which the delay is set
4250 to a negative value won't be autosuspended at all.
4252 usbcore.usbfs_snoop=
4253 [USB] Set to log all usbfs traffic (default 0 = off).
4255 usbcore.usbfs_snoop_max=
4256 [USB] Maximum number of bytes to snoop in each URB
4259 usbcore.blinkenlights=
4260 [USB] Set to cycle leds on hubs (default 0 = off).
4262 usbcore.old_scheme_first=
4263 [USB] Start with the old device initialization
4264 scheme (default 0 = off).
4266 usbcore.usbfs_memory_mb=
4267 [USB] Memory limit (in MB) for buffers allocated by
4268 usbfs (default = 16, 0 = max = 2047).
4270 usbcore.use_both_schemes=
4271 [USB] Try the other device initialization scheme
4272 if the first one fails (default 1 = enabled).
4274 usbcore.initial_descriptor_timeout=
4275 [USB] Specifies timeout for the initial 64-byte
4276 USB_REQ_GET_DESCRIPTOR request in milliseconds
4277 (default 5000 = 5.0 seconds).
4279 usbcore.nousb [USB] Disable the USB subsystem
4282 [USBHID] The interval which mice are to be polled at.
4284 usb-storage.delay_use=
4285 [UMS] The delay in seconds before a new device is
4286 scanned for Logical Units (default 1).
4289 [UMS] A list of quirks entries to supplement or
4290 override the built-in unusual_devs list. List
4291 entries are separated by commas. Each entry has
4292 the form VID:PID:Flags where VID and PID are Vendor
4293 and Product ID values (4-digit hex numbers) and
4294 Flags is a set of characters, each corresponding
4295 to a common usb-storage quirk flag as follows:
4296 a = SANE_SENSE (collect more than 18 bytes
4298 b = BAD_SENSE (don't collect more than 18
4299 bytes of sense data);
4300 c = FIX_CAPACITY (decrease the reported
4301 device capacity by one sector);
4302 d = NO_READ_DISC_INFO (don't use
4303 READ_DISC_INFO command);
4304 e = NO_READ_CAPACITY_16 (don't use
4305 READ_CAPACITY_16 command);
4306 f = NO_REPORT_OPCODES (don't use report opcodes
4308 g = MAX_SECTORS_240 (don't transfer more than
4309 240 sectors at a time, uas only);
4310 h = CAPACITY_HEURISTICS (decrease the
4311 reported device capacity by one
4312 sector if the number is odd);
4313 i = IGNORE_DEVICE (don't bind to this
4315 j = NO_REPORT_LUNS (don't use report luns
4317 l = NOT_LOCKABLE (don't try to lock and
4318 unlock ejectable media);
4319 m = MAX_SECTORS_64 (don't transfer more
4320 than 64 sectors = 32 KB at a time);
4321 n = INITIAL_READ10 (force a retry of the
4322 initial READ(10) command);
4323 o = CAPACITY_OK (accept the capacity
4324 reported by the device);
4325 p = WRITE_CACHE (the device cache is ON
4327 r = IGNORE_RESIDUE (the device reports
4328 bogus residue values);
4329 s = SINGLE_LUN (the device has only one
4331 t = NO_ATA_1X (don't allow ATA(12) and ATA(16)
4332 commands, uas only);
4333 u = IGNORE_UAS (don't bind to the uas driver);
4334 w = NO_WP_DETECT (don't test whether the
4335 medium is write-protected).
4336 y = ALWAYS_SYNC (issue a SYNCHRONIZE_CACHE
4337 even if the device claims no cache)
4338 Example: quirks=0419:aaf5:rl,0421:0433:rc
4340 user_debug= [KNL,ARM]
4342 See arch/arm/Kconfig.debug help text.
4343 1 - undefined instruction events
4345 4 - invalid data aborts
4348 Example: user_debug=31
4351 [X86] Flags controlling user PTE allocations.
4353 nohigh = do not allocate PTE pages in
4354 HIGHMEM regardless of setting
4358 On X86_32, this is an alias for vdso32=. Otherwise:
4360 vdso=1: enable VDSO (the default)
4361 vdso=0: disable VDSO mapping
4363 vdso32= [X86] Control the 32-bit vDSO
4364 vdso32=1: enable 32-bit VDSO
4365 vdso32=0 or vdso32=2: disable 32-bit VDSO
4367 See the help text for CONFIG_COMPAT_VDSO for more
4368 details. If CONFIG_COMPAT_VDSO is set, the default is
4369 vdso32=0; otherwise, the default is vdso32=1.
4371 For compatibility with older kernels, vdso32=2 is an
4374 Try vdso32=0 if you encounter an error that says:
4375 dl_main: Assertion `(void *) ph->p_vaddr == _rtld_local._dl_sysinfo_dso' failed!
4378 vector=percpu: enable percpu vector domain
4380 video= [FB] Frame buffer configuration
4381 See Documentation/fb/modedb.txt.
4383 video.brightness_switch_enabled= [0,1]
4384 If set to 1, on receiving an ACPI notify event
4385 generated by hotkey, video driver will adjust brightness
4386 level and then send out the event to user space through
4387 the allocated input device; If set to 0, video driver
4388 will only send out the event without touching backlight
4393 [VMMIO] Memory mapped virtio (platform) device.
4395 <size>@<baseaddr>:<irq>[:<id>]
4397 <size> := size (can use standard suffixes
4399 <baseaddr> := physical base address
4400 <irq> := interrupt number (as passed to
4402 <id> := (optional) platform device id
4404 virtio_mmio.device=1K@0x100b0000:48:7
4406 Can be used multiple times for multiple devices.
4408 vga= [BOOT,X86-32] Select a particular video mode
4409 See Documentation/x86/boot.txt and
4410 Documentation/svga.txt.
4411 Use vga=ask for menu.
4412 This is actually a boot loader parameter; the value is
4413 passed to the kernel using a special protocol.
4415 vmalloc=nn[KMG] [KNL,BOOT] Forces the vmalloc area to have an exact
4416 size of <nn>. This can be used to increase the
4417 minimum size (128MB on x86). It can also be used to
4418 decrease the size and leave more room for directly
4421 vmhalt= [KNL,S390] Perform z/VM CP command after system halt.
4424 vmpanic= [KNL,S390] Perform z/VM CP command after kernel panic.
4427 vmpoff= [KNL,S390] Perform z/VM CP command after power off.
4431 Controls the behavior of vsyscalls (i.e. calls to
4432 fixed addresses of 0xffffffffff600x00 from legacy
4433 code). Most statically-linked binaries and older
4434 versions of glibc use these calls. Because these
4435 functions are at fixed addresses, they make nice
4436 targets for exploits that can control RIP.
4438 emulate [default] Vsyscalls turn into traps and are
4439 emulated reasonably safely.
4441 native Vsyscalls are native syscall instructions.
4442 This is a little bit faster than trapping
4443 and makes a few dynamic recompilers work
4444 better than they would in emulation mode.
4445 It also makes exploits much easier to write.
4447 none Vsyscalls don't work at all. This makes
4448 them quite hard to use for exploits but
4449 might break your system.
4451 vt.color= [VT] Default text color.
4452 Format: 0xYX, X = foreground, Y = background.
4453 Default: 0x07 = light gray on black.
4455 vt.cur_default= [VT] Default cursor shape.
4456 Format: 0xCCBBAA, where AA, BB, and CC are the same as
4457 the parameters of the <Esc>[?A;B;Cc escape sequence;
4458 see VGA-softcursor.txt. Default: 2 = underline.
4460 vt.default_blu= [VT]
4461 Format: <blue0>,<blue1>,<blue2>,...,<blue15>
4462 Change the default blue palette of the console.
4463 This is a 16-member array composed of values
4466 vt.default_grn= [VT]
4467 Format: <green0>,<green1>,<green2>,...,<green15>
4468 Change the default green palette of the console.
4469 This is a 16-member array composed of values
4472 vt.default_red= [VT]
4473 Format: <red0>,<red1>,<red2>,...,<red15>
4474 Change the default red palette of the console.
4475 This is a 16-member array composed of values
4481 Set system-wide default UTF-8 mode for all tty's.
4482 Default is 1, i.e. UTF-8 mode is enabled for all
4483 newly opened terminals.
4485 vt.global_cursor_default=
4488 Set system-wide default for whether a cursor
4489 is shown on new VTs. Default is -1,
4490 i.e. cursors will be created by default unless
4491 overridden by individual drivers. 0 will hide
4492 cursors, 1 will display them.
4494 vt.italic= [VT] Default color for italic text; 0-15.
4497 vt.underline= [VT] Default color for underlined text; 0-15.
4500 watchdog timers [HW,WDT] For information on watchdog timers,
4501 see Documentation/watchdog/watchdog-parameters.txt
4502 or other driver-specific files in the
4503 Documentation/watchdog/ directory.
4505 workqueue.watchdog_thresh=
4506 If CONFIG_WQ_WATCHDOG is configured, workqueue can
4507 warn stall conditions and dump internal state to
4508 help debugging. 0 disables workqueue stall
4509 detection; otherwise, it's the stall threshold
4510 duration in seconds. The default value is 30 and
4511 it can be updated at runtime by writing to the
4512 corresponding sysfs file.
4514 workqueue.disable_numa
4515 By default, all work items queued to unbound
4516 workqueues are affine to the NUMA nodes they're
4517 issued on, which results in better behavior in
4518 general. If NUMA affinity needs to be disabled for
4519 whatever reason, this option can be used. Note
4520 that this also can be controlled per-workqueue for
4521 workqueues visible under /sys/bus/workqueue/.
4523 workqueue.power_efficient
4524 Per-cpu workqueues are generally preferred because
4525 they show better performance thanks to cache
4526 locality; unfortunately, per-cpu workqueues tend to
4527 be more power hungry than unbound workqueues.
4529 Enabling this makes the per-cpu workqueues which
4530 were observed to contribute significantly to power
4531 consumption unbound, leading to measurably lower
4532 power usage at the cost of small performance
4535 The default value of this parameter is determined by
4536 the config option CONFIG_WQ_POWER_EFFICIENT_DEFAULT.
4538 workqueue.debug_force_rr_cpu
4539 Workqueue used to implicitly guarantee that work
4540 items queued without explicit CPU specified are put
4541 on the local CPU. This guarantee is no longer true
4542 and while local CPU is still preferred work items
4543 may be put on foreign CPUs. This debug option
4544 forces round-robin CPU selection to flush out
4545 usages which depend on the now broken guarantee.
4546 When enabled, memory and cache locality will be
4549 x2apic_phys [X86-64,APIC] Use x2apic physical mode instead of
4550 default x2apic cluster mode on platforms
4553 x86_intel_mid_timer= [X86-32,APBT]
4554 Choose timer option for x86 Intel MID platform.
4555 Two valid options are apbt timer only and lapic timer
4556 plus one apbt timer for broadcast timer.
4557 x86_intel_mid_timer=apbt_only | lapic_and_apbt
4559 xen_512gb_limit [KNL,X86-64,XEN]
4560 Restricts the kernel running paravirtualized under Xen
4561 to use only up to 512 GB of RAM. The reason to do so is
4562 crash analysis tools and Xen tools for doing domain
4563 save/restore/migration must be enabled to handle larger
4566 xen_emul_unplug= [HW,X86,XEN]
4567 Unplug Xen emulated devices
4568 Format: [unplug0,][unplug1]
4569 ide-disks -- unplug primary master IDE devices
4570 aux-ide-disks -- unplug non-primary-master IDE devices
4571 nics -- unplug network devices
4572 all -- unplug all emulated devices (NICs and IDE disks)
4573 unnecessary -- unplugging emulated devices is
4574 unnecessary even if the host did not respond to
4576 never -- do not unplug even if version check succeeds
4578 xen_nopvspin [X86,XEN]
4579 Disables the ticketlock slowpath using Xen PV
4583 Disables the PV optimizations forcing the HVM guest to
4584 run as generic HVM guest with no PV drivers.
4586 xirc2ps_cs= [NET,PCMCIA]
4588 <irq>,<irq_mask>,<io>,<full_duplex>,<do_sound>,<lockup_hack>[,<irq2>[,<irq3>[,<irq4>]]]
4590 ______________________________________________________________________
4594 Add more DRM drivers.