1*9b9355a2SAndrew Clayton.. _kernelparameters: 2*9b9355a2SAndrew Clayton 37358bb2fSJonathan CorbetThe kernel's command-line parameters 47358bb2fSJonathan Corbet==================================== 59d85025bSMauro Carvalho Chehab 69d85025bSMauro Carvalho ChehabThe following is a consolidated list of the kernel parameters as 79d85025bSMauro Carvalho Chehabimplemented by the __setup(), core_param() and module_param() macros 89d85025bSMauro Carvalho Chehaband sorted into English Dictionary order (defined as ignoring all 99d85025bSMauro Carvalho Chehabpunctuation and sorting digits before letters in a case insensitive 109d85025bSMauro Carvalho Chehabmanner), and with descriptions where known. 119d85025bSMauro Carvalho Chehab 129d85025bSMauro Carvalho ChehabThe kernel parses parameters from the kernel command line up to "--"; 139d85025bSMauro Carvalho Chehabif it doesn't recognize a parameter and it doesn't contain a '.', the 149d85025bSMauro Carvalho Chehabparameter gets passed to init: parameters with '=' go into init's 159d85025bSMauro Carvalho Chehabenvironment, others are passed as command line arguments to init. 169d85025bSMauro Carvalho ChehabEverything after "--" is passed as an argument to init. 179d85025bSMauro Carvalho Chehab 189d85025bSMauro Carvalho ChehabModule parameters can be specified in two ways: via the kernel command 199d85025bSMauro Carvalho Chehabline with a module name prefix, or via modprobe, e.g.:: 209d85025bSMauro Carvalho Chehab 219d85025bSMauro Carvalho Chehab (kernel command line) usbcore.blinkenlights=1 229d85025bSMauro Carvalho Chehab (modprobe command line) modprobe usbcore blinkenlights=1 239d85025bSMauro Carvalho Chehab 249d85025bSMauro Carvalho ChehabParameters for modules which are built into the kernel need to be 259d85025bSMauro Carvalho Chehabspecified on the kernel command line. modprobe looks through the 269d85025bSMauro Carvalho Chehabkernel command line (/proc/cmdline) and collects module parameters 279d85025bSMauro Carvalho Chehabwhen it loads a module, so the kernel command line can be used for 289d85025bSMauro Carvalho Chehabloadable modules too. 299d85025bSMauro Carvalho Chehab 309d85025bSMauro Carvalho ChehabHyphens (dashes) and underscores are equivalent in parameter names, so:: 319d85025bSMauro Carvalho Chehab 329d85025bSMauro Carvalho Chehab log_buf_len=1M print-fatal-signals=1 339d85025bSMauro Carvalho Chehab 349d85025bSMauro Carvalho Chehabcan also be entered as:: 359d85025bSMauro Carvalho Chehab 369d85025bSMauro Carvalho Chehab log-buf-len=1M print_fatal_signals=1 379d85025bSMauro Carvalho Chehab 389d85025bSMauro Carvalho ChehabDouble-quotes can be used to protect spaces in values, e.g.:: 399d85025bSMauro Carvalho Chehab 409d85025bSMauro Carvalho Chehab param="spaces in here" 419d85025bSMauro Carvalho Chehab 429d85025bSMauro Carvalho Chehabcpu lists: 439d85025bSMauro Carvalho Chehab---------- 449d85025bSMauro Carvalho Chehab 459d85025bSMauro Carvalho ChehabSome kernel parameters take a list of CPUs as a value, e.g. isolcpus, 469d85025bSMauro Carvalho Chehabnohz_full, irqaffinity, rcu_nocbs. The format of this list is: 479d85025bSMauro Carvalho Chehab 489d85025bSMauro Carvalho Chehab <cpu number>,...,<cpu number> 499d85025bSMauro Carvalho Chehab 509d85025bSMauro Carvalho Chehabor 519d85025bSMauro Carvalho Chehab 529d85025bSMauro Carvalho Chehab <cpu number>-<cpu number> 539d85025bSMauro Carvalho Chehab (must be a positive range in ascending order) 549d85025bSMauro Carvalho Chehab 559d85025bSMauro Carvalho Chehabor a mixture 569d85025bSMauro Carvalho Chehab 579d85025bSMauro Carvalho Chehab<cpu number>,...,<cpu number>-<cpu number> 589d85025bSMauro Carvalho Chehab 599d85025bSMauro Carvalho ChehabNote that for the special case of a range one can split the range into equal 609d85025bSMauro Carvalho Chehabsized groups and for each group use some amount from the beginning of that 619d85025bSMauro Carvalho Chehabgroup: 629d85025bSMauro Carvalho Chehab 639d85025bSMauro Carvalho Chehab <cpu number>-cpu number>:<used size>/<group size> 649d85025bSMauro Carvalho Chehab 659d85025bSMauro Carvalho ChehabFor example one can add to the command line following parameter: 669d85025bSMauro Carvalho Chehab 679d85025bSMauro Carvalho Chehab isolcpus=1,2,10-20,100-2000:2/25 689d85025bSMauro Carvalho Chehab 699d85025bSMauro Carvalho Chehabwhere the final item represents CPUs 100,101,125,126,150,151,... 709d85025bSMauro Carvalho Chehab 719d85025bSMauro Carvalho Chehab 729d85025bSMauro Carvalho Chehab 739d85025bSMauro Carvalho ChehabThis document may not be entirely up to date and comprehensive. The command 749d85025bSMauro Carvalho Chehab"modinfo -p ${modulename}" shows a current list of all parameters of a loadable 759d85025bSMauro Carvalho Chehabmodule. Loadable modules, after being loaded into the running kernel, also 769d85025bSMauro Carvalho Chehabreveal their parameters in /sys/module/${modulename}/parameters/. Some of these 779d85025bSMauro Carvalho Chehabparameters may be changed at runtime by the command 789d85025bSMauro Carvalho Chehab``echo -n ${value} > /sys/module/${modulename}/parameters/${parm}``. 799d85025bSMauro Carvalho Chehab 809d85025bSMauro Carvalho ChehabThe parameters listed below are only valid if certain kernel build options were 819d85025bSMauro Carvalho Chehabenabled and if respective hardware is present. The text in square brackets at 829d85025bSMauro Carvalho Chehabthe beginning of each description states the restrictions within which a 839d85025bSMauro Carvalho Chehabparameter is applicable:: 849d85025bSMauro Carvalho Chehab 859d85025bSMauro Carvalho Chehab ACPI ACPI support is enabled. 869d85025bSMauro Carvalho Chehab AGP AGP (Accelerated Graphics Port) is enabled. 879d85025bSMauro Carvalho Chehab ALSA ALSA sound support is enabled. 889d85025bSMauro Carvalho Chehab APIC APIC support is enabled. 899d85025bSMauro Carvalho Chehab APM Advanced Power Management support is enabled. 909d85025bSMauro Carvalho Chehab ARM ARM architecture is enabled. 919d85025bSMauro Carvalho Chehab AVR32 AVR32 architecture is enabled. 929d85025bSMauro Carvalho Chehab AX25 Appropriate AX.25 support is enabled. 939d85025bSMauro Carvalho Chehab BLACKFIN Blackfin architecture is enabled. 949d85025bSMauro Carvalho Chehab CLK Common clock infrastructure is enabled. 959d85025bSMauro Carvalho Chehab CMA Contiguous Memory Area support is enabled. 969d85025bSMauro Carvalho Chehab DRM Direct Rendering Management support is enabled. 979d85025bSMauro Carvalho Chehab DYNAMIC_DEBUG Build in debug messages and enable them at runtime 989d85025bSMauro Carvalho Chehab EDD BIOS Enhanced Disk Drive Services (EDD) is enabled 999d85025bSMauro Carvalho Chehab EFI EFI Partitioning (GPT) is enabled 1009d85025bSMauro Carvalho Chehab EIDE EIDE/ATAPI support is enabled. 1019d85025bSMauro Carvalho Chehab EVM Extended Verification Module 1029d85025bSMauro Carvalho Chehab FB The frame buffer device is enabled. 1039d85025bSMauro Carvalho Chehab FTRACE Function tracing enabled. 1049d85025bSMauro Carvalho Chehab GCOV GCOV profiling is enabled. 1059d85025bSMauro Carvalho Chehab HW Appropriate hardware is enabled. 1069d85025bSMauro Carvalho Chehab IA-64 IA-64 architecture is enabled. 1079d85025bSMauro Carvalho Chehab IMA Integrity measurement architecture is enabled. 1089d85025bSMauro Carvalho Chehab IOSCHED More than one I/O scheduler is enabled. 1099d85025bSMauro Carvalho Chehab IP_PNP IP DHCP, BOOTP, or RARP is enabled. 1109d85025bSMauro Carvalho Chehab IPV6 IPv6 support is enabled. 1119d85025bSMauro Carvalho Chehab ISAPNP ISA PnP code is enabled. 1129d85025bSMauro Carvalho Chehab ISDN Appropriate ISDN support is enabled. 1139d85025bSMauro Carvalho Chehab JOY Appropriate joystick support is enabled. 1149d85025bSMauro Carvalho Chehab KGDB Kernel debugger support is enabled. 1159d85025bSMauro Carvalho Chehab KVM Kernel Virtual Machine support is enabled. 1169d85025bSMauro Carvalho Chehab LIBATA Libata driver is enabled 1179d85025bSMauro Carvalho Chehab LP Printer support is enabled. 1189d85025bSMauro Carvalho Chehab LOOP Loopback device support is enabled. 1199d85025bSMauro Carvalho Chehab M68k M68k architecture is enabled. 1209d85025bSMauro Carvalho Chehab These options have more detailed description inside of 1219d85025bSMauro Carvalho Chehab Documentation/m68k/kernel-options.txt. 1229d85025bSMauro Carvalho Chehab MDA MDA console support is enabled. 1239d85025bSMauro Carvalho Chehab MIPS MIPS architecture is enabled. 1249d85025bSMauro Carvalho Chehab MOUSE Appropriate mouse support is enabled. 1259d85025bSMauro Carvalho Chehab MSI Message Signaled Interrupts (PCI). 1269d85025bSMauro Carvalho Chehab MTD MTD (Memory Technology Device) support is enabled. 1279d85025bSMauro Carvalho Chehab NET Appropriate network support is enabled. 1289d85025bSMauro Carvalho Chehab NUMA NUMA support is enabled. 1299d85025bSMauro Carvalho Chehab NFS Appropriate NFS support is enabled. 1309d85025bSMauro Carvalho Chehab OSS OSS sound support is enabled. 1319d85025bSMauro Carvalho Chehab PV_OPS A paravirtualized kernel is enabled. 1329d85025bSMauro Carvalho Chehab PARIDE The ParIDE (parallel port IDE) subsystem is enabled. 1339d85025bSMauro Carvalho Chehab PARISC The PA-RISC architecture is enabled. 1349d85025bSMauro Carvalho Chehab PCI PCI bus support is enabled. 1359d85025bSMauro Carvalho Chehab PCIE PCI Express support is enabled. 1369d85025bSMauro Carvalho Chehab PCMCIA The PCMCIA subsystem is enabled. 1379d85025bSMauro Carvalho Chehab PNP Plug & Play support is enabled. 1389d85025bSMauro Carvalho Chehab PPC PowerPC architecture is enabled. 1399d85025bSMauro Carvalho Chehab PPT Parallel port support is enabled. 1409d85025bSMauro Carvalho Chehab PS2 Appropriate PS/2 support is enabled. 1419d85025bSMauro Carvalho Chehab RAM RAM disk support is enabled. 1429d85025bSMauro Carvalho Chehab S390 S390 architecture is enabled. 1439d85025bSMauro Carvalho Chehab SCSI Appropriate SCSI support is enabled. 1449d85025bSMauro Carvalho Chehab A lot of drivers have their options described inside 1459d85025bSMauro Carvalho Chehab the Documentation/scsi/ sub-directory. 1469d85025bSMauro Carvalho Chehab SECURITY Different security models are enabled. 1479d85025bSMauro Carvalho Chehab SELINUX SELinux support is enabled. 1489d85025bSMauro Carvalho Chehab APPARMOR AppArmor support is enabled. 1499d85025bSMauro Carvalho Chehab SERIAL Serial support is enabled. 1509d85025bSMauro Carvalho Chehab SH SuperH architecture is enabled. 1519d85025bSMauro Carvalho Chehab SMP The kernel is an SMP kernel. 1529d85025bSMauro Carvalho Chehab SPARC Sparc architecture is enabled. 1539d85025bSMauro Carvalho Chehab SWSUSP Software suspend (hibernation) is enabled. 1549d85025bSMauro Carvalho Chehab SUSPEND System suspend states are enabled. 1559d85025bSMauro Carvalho Chehab TPM TPM drivers are enabled. 1569d85025bSMauro Carvalho Chehab TS Appropriate touchscreen support is enabled. 1579d85025bSMauro Carvalho Chehab UMS USB Mass Storage support is enabled. 1589d85025bSMauro Carvalho Chehab USB USB support is enabled. 1599d85025bSMauro Carvalho Chehab USBHID USB Human Interface Device support is enabled. 1609d85025bSMauro Carvalho Chehab V4L Video For Linux support is enabled. 1619d85025bSMauro Carvalho Chehab VMMIO Driver for memory mapped virtio devices is enabled. 1629d85025bSMauro Carvalho Chehab VGA The VGA console has been enabled. 1639d85025bSMauro Carvalho Chehab VT Virtual terminal support is enabled. 1649d85025bSMauro Carvalho Chehab WDT Watchdog support is enabled. 1659d85025bSMauro Carvalho Chehab XT IBM PC/XT MFM hard disk support is enabled. 1669d85025bSMauro Carvalho Chehab X86-32 X86-32, aka i386 architecture is enabled. 1679d85025bSMauro Carvalho Chehab X86-64 X86-64 architecture is enabled. 1689d85025bSMauro Carvalho Chehab More X86-64 boot options can be found in 1699d85025bSMauro Carvalho Chehab Documentation/x86/x86_64/boot-options.txt . 1709d85025bSMauro Carvalho Chehab X86 Either 32-bit or 64-bit x86 (same as X86-32+X86-64) 1719d85025bSMauro Carvalho Chehab X86_UV SGI UV support is enabled. 1729d85025bSMauro Carvalho Chehab XEN Xen support is enabled 1739d85025bSMauro Carvalho Chehab 1749d85025bSMauro Carvalho ChehabIn addition, the following text indicates that the option:: 1759d85025bSMauro Carvalho Chehab 1769d85025bSMauro Carvalho Chehab BUGS= Relates to possible processor bugs on the said processor. 1779d85025bSMauro Carvalho Chehab KNL Is a kernel start-up parameter. 1789d85025bSMauro Carvalho Chehab BOOT Is a boot loader parameter. 1799d85025bSMauro Carvalho Chehab 1809d85025bSMauro Carvalho ChehabParameters denoted with BOOT are actually interpreted by the boot 1819d85025bSMauro Carvalho Chehabloader, and have no meaning to the kernel directly. 1829d85025bSMauro Carvalho ChehabDo not modify the syntax of boot loader parameters without extreme 1839d85025bSMauro Carvalho Chehabneed or coordination with <Documentation/x86/boot.txt>. 1849d85025bSMauro Carvalho Chehab 1859d85025bSMauro Carvalho ChehabThere are also arch-specific kernel-parameters not documented here. 1869d85025bSMauro Carvalho ChehabSee for example <Documentation/x86/x86_64/boot-options.txt>. 1879d85025bSMauro Carvalho Chehab 1889d85025bSMauro Carvalho ChehabNote that ALL kernel parameters listed below are CASE SENSITIVE, and that 1899d85025bSMauro Carvalho Chehaba trailing = on the name of any parameter states that that parameter will 1909d85025bSMauro Carvalho Chehabbe entered as an environment variable, whereas its absence indicates that 1919d85025bSMauro Carvalho Chehabit will appear as a kernel argument readable via /proc/cmdline by programs 1929d85025bSMauro Carvalho Chehabrunning once the system is up. 1939d85025bSMauro Carvalho Chehab 1949d85025bSMauro Carvalho ChehabThe number of kernel parameters is not limited, but the length of the 1959d85025bSMauro Carvalho Chehabcomplete command line (parameters including spaces etc.) is limited to 1969d85025bSMauro Carvalho Chehaba fixed number of characters. This limit depends on the architecture 1979d85025bSMauro Carvalho Chehaband is between 256 and 4096 characters. It is defined in the file 1989d85025bSMauro Carvalho Chehab./include/asm/setup.h as COMMAND_LINE_SIZE. 1999d85025bSMauro Carvalho Chehab 2009d85025bSMauro Carvalho ChehabFinally, the [KMG] suffix is commonly described after a number of kernel 2019d85025bSMauro Carvalho Chehabparameter values. These 'K', 'M', and 'G' letters represent the _binary_ 2029f02a486STamara Diaconitamultipliers 'Kilo', 'Mega', and 'Giga', equaling 2^10, 2^20, and 2^30 203e52347bdSJani Nikulabytes respectively. Such letter suffixes can also be entirely omitted: 2049d85025bSMauro Carvalho Chehab 205e52347bdSJani Nikula.. include:: kernel-parameters.txt 206e52347bdSJani Nikula :literal: 2079d85025bSMauro Carvalho Chehab 2089d85025bSMauro Carvalho ChehabTodo 2099d85025bSMauro Carvalho Chehab---- 2109d85025bSMauro Carvalho Chehab 2119d85025bSMauro Carvalho Chehab Add more DRM drivers. 212