About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / admin-guide / kernel-parameters.rst

Custom Search

Based on kernel version 4.16.1. Page generated on 2018-04-09 11:52 EST.

1	.. _kernelparameters:
3	The kernel's command-line parameters
4	====================================
6	The following is a consolidated list of the kernel parameters as
7	implemented by the __setup(), core_param() and module_param() macros
8	and sorted into English Dictionary order (defined as ignoring all
9	punctuation and sorting digits before letters in a case insensitive
10	manner), and with descriptions where known.
12	The kernel parses parameters from the kernel command line up to "--";
13	if it doesn't recognize a parameter and it doesn't contain a '.', the
14	parameter gets passed to init: parameters with '=' go into init's
15	environment, others are passed as command line arguments to init.
16	Everything after "--" is passed as an argument to init.
18	Module parameters can be specified in two ways: via the kernel command
19	line with a module name prefix, or via modprobe, e.g.::
21		(kernel command line) usbcore.blinkenlights=1
22		(modprobe command line) modprobe usbcore blinkenlights=1
24	Parameters for modules which are built into the kernel need to be
25	specified on the kernel command line.  modprobe looks through the
26	kernel command line (/proc/cmdline) and collects module parameters
27	when it loads a module, so the kernel command line can be used for
28	loadable modules too.
30	Hyphens (dashes) and underscores are equivalent in parameter names, so::
32		log_buf_len=1M print-fatal-signals=1
34	can also be entered as::
36		log-buf-len=1M print_fatal_signals=1
38	Double-quotes can be used to protect spaces in values, e.g.::
40		param="spaces in here"
42	cpu lists:
43	----------
45	Some kernel parameters take a list of CPUs as a value, e.g.  isolcpus,
46	nohz_full, irqaffinity, rcu_nocbs.  The format of this list is:
48		<cpu number>,...,<cpu number>
50	or
52		<cpu number>-<cpu number>
53		(must be a positive range in ascending order)
55	or a mixture
57	<cpu number>,...,<cpu number>-<cpu number>
59	Note that for the special case of a range one can split the range into equal
60	sized groups and for each group use some amount from the beginning of that
61	group:
63		<cpu number>-cpu number>:<used size>/<group size>
65	For example one can add to the command line following parameter:
67		isolcpus=1,2,10-20,100-2000:2/25
69	where the final item represents CPUs 100,101,125,126,150,151,...
73	This document may not be entirely up to date and comprehensive. The command
74	"modinfo -p ${modulename}" shows a current list of all parameters of a loadable
75	module. Loadable modules, after being loaded into the running kernel, also
76	reveal their parameters in /sys/module/${modulename}/parameters/. Some of these
77	parameters may be changed at runtime by the command
78	``echo -n ${value} > /sys/module/${modulename}/parameters/${parm}``.
80	The parameters listed below are only valid if certain kernel build options were
81	enabled and if respective hardware is present. The text in square brackets at
82	the beginning of each description states the restrictions within which a
83	parameter is applicable::
85		ACPI	ACPI support is enabled.
86		AGP	AGP (Accelerated Graphics Port) is enabled.
87		ALSA	ALSA sound support is enabled.
88		APIC	APIC support is enabled.
89		APM	Advanced Power Management support is enabled.
90		ARM	ARM architecture is enabled.
91		AX25	Appropriate AX.25 support is enabled.
92		BLACKFIN Blackfin architecture is enabled.
93		CLK	Common clock infrastructure is enabled.
94		CMA	Contiguous Memory Area support is enabled.
95		DRM	Direct Rendering Management support is enabled.
96		DYNAMIC_DEBUG Build in debug messages and enable them at runtime
97		EDD	BIOS Enhanced Disk Drive Services (EDD) is enabled
98		EFI	EFI Partitioning (GPT) is enabled
99		EIDE	EIDE/ATAPI support is enabled.
100		EVM	Extended Verification Module
101		FB	The frame buffer device is enabled.
102		FTRACE	Function tracing enabled.
103		GCOV	GCOV profiling is enabled.
104		HW	Appropriate hardware is enabled.
105		IA-64	IA-64 architecture is enabled.
106		IMA     Integrity measurement architecture is enabled.
107		IOSCHED	More than one I/O scheduler is enabled.
108		IP_PNP	IP DHCP, BOOTP, or RARP is enabled.
109		IPV6	IPv6 support is enabled.
110		ISAPNP	ISA PnP code is enabled.
111		ISDN	Appropriate ISDN support is enabled.
112		ISOL	CPU Isolation is enabled.
113		JOY	Appropriate joystick support is enabled.
114		KGDB	Kernel debugger support is enabled.
115		KVM	Kernel Virtual Machine support is enabled.
116		LIBATA  Libata driver is enabled
117		LP	Printer support is enabled.
118		LOOP	Loopback device support is enabled.
119		M68k	M68k architecture is enabled.
120				These options have more detailed description inside of
121				Documentation/m68k/kernel-options.txt.
122		MDA	MDA console support is enabled.
123		MIPS	MIPS architecture is enabled.
124		MOUSE	Appropriate mouse support is enabled.
125		MSI	Message Signaled Interrupts (PCI).
126		MTD	MTD (Memory Technology Device) support is enabled.
127		NET	Appropriate network support is enabled.
128		NUMA	NUMA support is enabled.
129		NFS	Appropriate NFS support is enabled.
130		OSS	OSS sound support is enabled.
131		PV_OPS	A paravirtualized kernel is enabled.
132		PARIDE	The ParIDE (parallel port IDE) subsystem is enabled.
133		PARISC	The PA-RISC architecture is enabled.
134		PCI	PCI bus support is enabled.
135		PCIE	PCI Express support is enabled.
136		PCMCIA	The PCMCIA subsystem is enabled.
137		PNP	Plug & Play support is enabled.
138		PPC	PowerPC architecture is enabled.
139		PPT	Parallel port support is enabled.
140		PS2	Appropriate PS/2 support is enabled.
141		RAM	RAM disk support is enabled.
142		RDT	Intel Resource Director Technology.
143		S390	S390 architecture is enabled.
144		SCSI	Appropriate SCSI support is enabled.
145				A lot of drivers have their options described inside
146				the Documentation/scsi/ sub-directory.
147		SECURITY Different security models are enabled.
148		SELINUX SELinux support is enabled.
149		APPARMOR AppArmor support is enabled.
150		SERIAL	Serial support is enabled.
151		SH	SuperH architecture is enabled.
152		SMP	The kernel is an SMP kernel.
153		SPARC	Sparc architecture is enabled.
154		SWSUSP	Software suspend (hibernation) is enabled.
155		SUSPEND	System suspend states are enabled.
156		TPM	TPM drivers are enabled.
157		TS	Appropriate touchscreen support is enabled.
158		UMS	USB Mass Storage support is enabled.
159		USB	USB support is enabled.
160		USBHID	USB Human Interface Device support is enabled.
161		V4L	Video For Linux support is enabled.
162		VMMIO   Driver for memory mapped virtio devices is enabled.
163		VGA	The VGA console has been enabled.
164		VT	Virtual terminal support is enabled.
165		WDT	Watchdog support is enabled.
166		XT	IBM PC/XT MFM hard disk support is enabled.
167		X86-32	X86-32, aka i386 architecture is enabled.
168		X86-64	X86-64 architecture is enabled.
169				More X86-64 boot options can be found in
170				Documentation/x86/x86_64/boot-options.txt .
171		X86	Either 32-bit or 64-bit x86 (same as X86-32+X86-64)
172		X86_UV	SGI UV support is enabled.
173		XEN	Xen support is enabled
175	In addition, the following text indicates that the option::
177		BUGS=	Relates to possible processor bugs on the said processor.
178		KNL	Is a kernel start-up parameter.
179		BOOT	Is a boot loader parameter.
181	Parameters denoted with BOOT are actually interpreted by the boot
182	loader, and have no meaning to the kernel directly.
183	Do not modify the syntax of boot loader parameters without extreme
184	need or coordination with <Documentation/x86/boot.txt>.
186	There are also arch-specific kernel-parameters not documented here.
187	See for example <Documentation/x86/x86_64/boot-options.txt>.
189	Note that ALL kernel parameters listed below are CASE SENSITIVE, and that
190	a trailing = on the name of any parameter states that that parameter will
191	be entered as an environment variable, whereas its absence indicates that
192	it will appear as a kernel argument readable via /proc/cmdline by programs
193	running once the system is up.
195	The number of kernel parameters is not limited, but the length of the
196	complete command line (parameters including spaces etc.) is limited to
197	a fixed number of characters. This limit depends on the architecture
198	and is between 256 and 4096 characters. It is defined in the file
199	./include/asm/setup.h as COMMAND_LINE_SIZE.
201	Finally, the [KMG] suffix is commonly described after a number of kernel
202	parameter values. These 'K', 'M', and 'G' letters represent the _binary_
203	multipliers 'Kilo', 'Mega', and 'Giga', equaling 2^10, 2^20, and 2^30
204	bytes respectively. Such letter suffixes can also be entirely omitted:
206	.. include:: kernel-parameters.txt
207	   :literal:
209	Todo
210	----
212		Add more DRM drivers.
Hide Line Numbers
About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Information is copyright its respective author. All material is available from the Linux Kernel Source distributed under a GPL License. This page is provided as a free service by mjmwired.net.