162306a36Sopenharmony_ci	acpi=		[HW,ACPI,X86,ARM64,RISCV64]
262306a36Sopenharmony_ci			Advanced Configuration and Power Interface
362306a36Sopenharmony_ci			Format: { force | on | off | strict | noirq | rsdt |
462306a36Sopenharmony_ci				  copy_dsdt }
562306a36Sopenharmony_ci			force -- enable ACPI if default was off
662306a36Sopenharmony_ci			on -- enable ACPI but allow fallback to DT [arm64,riscv64]
762306a36Sopenharmony_ci			off -- disable ACPI if default was on
862306a36Sopenharmony_ci			noirq -- do not use ACPI for IRQ routing
962306a36Sopenharmony_ci			strict -- Be less tolerant of platforms that are not
1062306a36Sopenharmony_ci				strictly ACPI specification compliant.
1162306a36Sopenharmony_ci			rsdt -- prefer RSDT over (default) XSDT
1262306a36Sopenharmony_ci			copy_dsdt -- copy DSDT to memory
1362306a36Sopenharmony_ci			For ARM64 and RISCV64, ONLY "acpi=off", "acpi=on" or
1462306a36Sopenharmony_ci			"acpi=force" are available
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ci			See also Documentation/power/runtime_pm.rst, pci=noacpi
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ci	acpi_apic_instance=	[ACPI, IOAPIC]
1962306a36Sopenharmony_ci			Format: <int>
2062306a36Sopenharmony_ci			2: use 2nd APIC table, if available
2162306a36Sopenharmony_ci			1,0: use 1st APIC table
2262306a36Sopenharmony_ci			default: 0
2362306a36Sopenharmony_ci
2462306a36Sopenharmony_ci	acpi_backlight=	[HW,ACPI]
2562306a36Sopenharmony_ci			{ vendor | video | native | none }
2662306a36Sopenharmony_ci			If set to vendor, prefer vendor-specific driver
2762306a36Sopenharmony_ci			(e.g. thinkpad_acpi, sony_acpi, etc.) instead
2862306a36Sopenharmony_ci			of the ACPI video.ko driver.
2962306a36Sopenharmony_ci			If set to video, use the ACPI video.ko driver.
3062306a36Sopenharmony_ci			If set to native, use the device's native backlight mode.
3162306a36Sopenharmony_ci			If set to none, disable the ACPI backlight interface.
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ci	acpi_force_32bit_fadt_addr
3462306a36Sopenharmony_ci			force FADT to use 32 bit addresses rather than the
3562306a36Sopenharmony_ci			64 bit X_* addresses. Some firmware have broken 64
3662306a36Sopenharmony_ci			bit addresses for force ACPI ignore these and use
3762306a36Sopenharmony_ci			the older legacy 32 bit addresses.
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_ci	acpica_no_return_repair [HW, ACPI]
4062306a36Sopenharmony_ci			Disable AML predefined validation mechanism
4162306a36Sopenharmony_ci			This mechanism can repair the evaluation result to make
4262306a36Sopenharmony_ci			the return objects more ACPI specification compliant.
4362306a36Sopenharmony_ci			This option is useful for developers to identify the
4462306a36Sopenharmony_ci			root cause of an AML interpreter issue when the issue
4562306a36Sopenharmony_ci			has something to do with the repair mechanism.
4662306a36Sopenharmony_ci
4762306a36Sopenharmony_ci	acpi.debug_layer=	[HW,ACPI,ACPI_DEBUG]
4862306a36Sopenharmony_ci	acpi.debug_level=	[HW,ACPI,ACPI_DEBUG]
4962306a36Sopenharmony_ci			Format: <int>
5062306a36Sopenharmony_ci			CONFIG_ACPI_DEBUG must be enabled to produce any ACPI
5162306a36Sopenharmony_ci			debug output.  Bits in debug_layer correspond to a
5262306a36Sopenharmony_ci			_COMPONENT in an ACPI source file, e.g.,
5362306a36Sopenharmony_ci			    #define _COMPONENT ACPI_EVENTS
5462306a36Sopenharmony_ci			Bits in debug_level correspond to a level in
5562306a36Sopenharmony_ci			ACPI_DEBUG_PRINT statements, e.g.,
5662306a36Sopenharmony_ci			    ACPI_DEBUG_PRINT((ACPI_DB_INFO, ...
5762306a36Sopenharmony_ci			The debug_level mask defaults to "info".  See
5862306a36Sopenharmony_ci			Documentation/firmware-guide/acpi/debug.rst for more information about
5962306a36Sopenharmony_ci			debug layers and levels.
6062306a36Sopenharmony_ci
6162306a36Sopenharmony_ci			Enable processor driver info messages:
6262306a36Sopenharmony_ci			    acpi.debug_layer=0x20000000
6362306a36Sopenharmony_ci			Enable AML "Debug" output, i.e., stores to the Debug
6462306a36Sopenharmony_ci			object while interpreting AML:
6562306a36Sopenharmony_ci			    acpi.debug_layer=0xffffffff acpi.debug_level=0x2
6662306a36Sopenharmony_ci			Enable all messages related to ACPI hardware:
6762306a36Sopenharmony_ci			    acpi.debug_layer=0x2 acpi.debug_level=0xffffffff
6862306a36Sopenharmony_ci
6962306a36Sopenharmony_ci			Some values produce so much output that the system is
7062306a36Sopenharmony_ci			unusable.  The "log_buf_len" parameter may be useful
7162306a36Sopenharmony_ci			if you need to capture more output.
7262306a36Sopenharmony_ci
7362306a36Sopenharmony_ci	acpi_enforce_resources=	[ACPI]
7462306a36Sopenharmony_ci			{ strict | lax | no }
7562306a36Sopenharmony_ci			Check for resource conflicts between native drivers
7662306a36Sopenharmony_ci			and ACPI OperationRegions (SystemIO and SystemMemory
7762306a36Sopenharmony_ci			only). IO ports and memory declared in ACPI might be
7862306a36Sopenharmony_ci			used by the ACPI subsystem in arbitrary AML code and
7962306a36Sopenharmony_ci			can interfere with legacy drivers.
8062306a36Sopenharmony_ci			strict (default): access to resources claimed by ACPI
8162306a36Sopenharmony_ci			is denied; legacy drivers trying to access reserved
8262306a36Sopenharmony_ci			resources will fail to bind to device using them.
8362306a36Sopenharmony_ci			lax: access to resources claimed by ACPI is allowed;
8462306a36Sopenharmony_ci			legacy drivers trying to access reserved resources
8562306a36Sopenharmony_ci			will bind successfully but a warning message is logged.
8662306a36Sopenharmony_ci			no: ACPI OperationRegions are not marked as reserved,
8762306a36Sopenharmony_ci			no further checks are performed.
8862306a36Sopenharmony_ci
8962306a36Sopenharmony_ci	acpi_force_table_verification	[HW,ACPI]
9062306a36Sopenharmony_ci			Enable table checksum verification during early stage.
9162306a36Sopenharmony_ci			By default, this is disabled due to x86 early mapping
9262306a36Sopenharmony_ci			size limitation.
9362306a36Sopenharmony_ci
9462306a36Sopenharmony_ci	acpi_irq_balance [HW,ACPI]
9562306a36Sopenharmony_ci			ACPI will balance active IRQs
9662306a36Sopenharmony_ci			default in APIC mode
9762306a36Sopenharmony_ci
9862306a36Sopenharmony_ci	acpi_irq_nobalance [HW,ACPI]
9962306a36Sopenharmony_ci			ACPI will not move active IRQs (default)
10062306a36Sopenharmony_ci			default in PIC mode
10162306a36Sopenharmony_ci
10262306a36Sopenharmony_ci	acpi_irq_isa=	[HW,ACPI] If irq_balance, mark listed IRQs used by ISA
10362306a36Sopenharmony_ci			Format: <irq>,<irq>...
10462306a36Sopenharmony_ci
10562306a36Sopenharmony_ci	acpi_irq_pci=	[HW,ACPI] If irq_balance, clear listed IRQs for
10662306a36Sopenharmony_ci			use by PCI
10762306a36Sopenharmony_ci			Format: <irq>,<irq>...
10862306a36Sopenharmony_ci
10962306a36Sopenharmony_ci	acpi_mask_gpe=	[HW,ACPI]
11062306a36Sopenharmony_ci			Due to the existence of _Lxx/_Exx, some GPEs triggered
11162306a36Sopenharmony_ci			by unsupported hardware/firmware features can result in
11262306a36Sopenharmony_ci			GPE floodings that cannot be automatically disabled by
11362306a36Sopenharmony_ci			the GPE dispatcher.
11462306a36Sopenharmony_ci			This facility can be used to prevent such uncontrolled
11562306a36Sopenharmony_ci			GPE floodings.
11662306a36Sopenharmony_ci			Format: <byte> or <bitmap-list>
11762306a36Sopenharmony_ci
11862306a36Sopenharmony_ci	acpi_no_auto_serialize	[HW,ACPI]
11962306a36Sopenharmony_ci			Disable auto-serialization of AML methods
12062306a36Sopenharmony_ci			AML control methods that contain the opcodes to create
12162306a36Sopenharmony_ci			named objects will be marked as "Serialized" by the
12262306a36Sopenharmony_ci			auto-serialization feature.
12362306a36Sopenharmony_ci			This feature is enabled by default.
12462306a36Sopenharmony_ci			This option allows to turn off the feature.
12562306a36Sopenharmony_ci
12662306a36Sopenharmony_ci	acpi_no_memhotplug [ACPI] Disable memory hotplug.  Useful for kdump
12762306a36Sopenharmony_ci			   kernels.
12862306a36Sopenharmony_ci
12962306a36Sopenharmony_ci	acpi_no_static_ssdt	[HW,ACPI]
13062306a36Sopenharmony_ci			Disable installation of static SSDTs at early boot time
13162306a36Sopenharmony_ci			By default, SSDTs contained in the RSDT/XSDT will be
13262306a36Sopenharmony_ci			installed automatically and they will appear under
13362306a36Sopenharmony_ci			/sys/firmware/acpi/tables.
13462306a36Sopenharmony_ci			This option turns off this feature.
13562306a36Sopenharmony_ci			Note that specifying this option does not affect
13662306a36Sopenharmony_ci			dynamic table installation which will install SSDT
13762306a36Sopenharmony_ci			tables to /sys/firmware/acpi/tables/dynamic.
13862306a36Sopenharmony_ci
13962306a36Sopenharmony_ci	acpi_no_watchdog	[HW,ACPI,WDT]
14062306a36Sopenharmony_ci			Ignore the ACPI-based watchdog interface (WDAT) and let
14162306a36Sopenharmony_ci			a native driver control the watchdog device instead.
14262306a36Sopenharmony_ci
14362306a36Sopenharmony_ci	acpi_rsdp=	[ACPI,EFI,KEXEC]
14462306a36Sopenharmony_ci			Pass the RSDP address to the kernel, mostly used
14562306a36Sopenharmony_ci			on machines running EFI runtime service to boot the
14662306a36Sopenharmony_ci			second kernel for kdump.
14762306a36Sopenharmony_ci
14862306a36Sopenharmony_ci	acpi_os_name=	[HW,ACPI] Tell ACPI BIOS the name of the OS
14962306a36Sopenharmony_ci			Format: To spoof as Windows 98: ="Microsoft Windows"
15062306a36Sopenharmony_ci
15162306a36Sopenharmony_ci	acpi_rev_override [ACPI] Override the _REV object to return 5 (instead
15262306a36Sopenharmony_ci			of 2 which is mandated by ACPI 6) as the supported ACPI
15362306a36Sopenharmony_ci			specification revision (when using this switch, it may
15462306a36Sopenharmony_ci			be necessary to carry out a cold reboot _twice_ in a
15562306a36Sopenharmony_ci			row to make it take effect on the platform firmware).
15662306a36Sopenharmony_ci
15762306a36Sopenharmony_ci	acpi_osi=	[HW,ACPI] Modify list of supported OS interface strings
15862306a36Sopenharmony_ci			acpi_osi="string1"	# add string1
15962306a36Sopenharmony_ci			acpi_osi="!string2"	# remove string2
16062306a36Sopenharmony_ci			acpi_osi=!*		# remove all strings
16162306a36Sopenharmony_ci			acpi_osi=!		# disable all built-in OS vendor
16262306a36Sopenharmony_ci						  strings
16362306a36Sopenharmony_ci			acpi_osi=!!		# enable all built-in OS vendor
16462306a36Sopenharmony_ci						  strings
16562306a36Sopenharmony_ci			acpi_osi=		# disable all strings
16662306a36Sopenharmony_ci
16762306a36Sopenharmony_ci			'acpi_osi=!' can be used in combination with single or
16862306a36Sopenharmony_ci			multiple 'acpi_osi="string1"' to support specific OS
16962306a36Sopenharmony_ci			vendor string(s).  Note that such command can only
17062306a36Sopenharmony_ci			affect the default state of the OS vendor strings, thus
17162306a36Sopenharmony_ci			it cannot affect the default state of the feature group
17262306a36Sopenharmony_ci			strings and the current state of the OS vendor strings,
17362306a36Sopenharmony_ci			specifying it multiple times through kernel command line
17462306a36Sopenharmony_ci			is meaningless.  This command is useful when one do not
17562306a36Sopenharmony_ci			care about the state of the feature group strings which
17662306a36Sopenharmony_ci			should be controlled by the OSPM.
17762306a36Sopenharmony_ci			Examples:
17862306a36Sopenharmony_ci			  1. 'acpi_osi=! acpi_osi="Windows 2000"' is equivalent
17962306a36Sopenharmony_ci			     to 'acpi_osi="Windows 2000" acpi_osi=!', they all
18062306a36Sopenharmony_ci			     can make '_OSI("Windows 2000")' TRUE.
18162306a36Sopenharmony_ci
18262306a36Sopenharmony_ci			'acpi_osi=' cannot be used in combination with other
18362306a36Sopenharmony_ci			'acpi_osi=' command lines, the _OSI method will not
18462306a36Sopenharmony_ci			exist in the ACPI namespace.  NOTE that such command can
18562306a36Sopenharmony_ci			only affect the _OSI support state, thus specifying it
18662306a36Sopenharmony_ci			multiple times through kernel command line is also
18762306a36Sopenharmony_ci			meaningless.
18862306a36Sopenharmony_ci			Examples:
18962306a36Sopenharmony_ci			  1. 'acpi_osi=' can make 'CondRefOf(_OSI, Local1)'
19062306a36Sopenharmony_ci			     FALSE.
19162306a36Sopenharmony_ci
19262306a36Sopenharmony_ci			'acpi_osi=!*' can be used in combination with single or
19362306a36Sopenharmony_ci			multiple 'acpi_osi="string1"' to support specific
19462306a36Sopenharmony_ci			string(s).  Note that such command can affect the
19562306a36Sopenharmony_ci			current state of both the OS vendor strings and the
19662306a36Sopenharmony_ci			feature group strings, thus specifying it multiple times
19762306a36Sopenharmony_ci			through kernel command line is meaningful.  But it may
19862306a36Sopenharmony_ci			still not able to affect the final state of a string if
19962306a36Sopenharmony_ci			there are quirks related to this string.  This command
20062306a36Sopenharmony_ci			is useful when one want to control the state of the
20162306a36Sopenharmony_ci			feature group strings to debug BIOS issues related to
20262306a36Sopenharmony_ci			the OSPM features.
20362306a36Sopenharmony_ci			Examples:
20462306a36Sopenharmony_ci			  1. 'acpi_osi="Module Device" acpi_osi=!*' can make
20562306a36Sopenharmony_ci			     '_OSI("Module Device")' FALSE.
20662306a36Sopenharmony_ci			  2. 'acpi_osi=!* acpi_osi="Module Device"' can make
20762306a36Sopenharmony_ci			     '_OSI("Module Device")' TRUE.
20862306a36Sopenharmony_ci			  3. 'acpi_osi=! acpi_osi=!* acpi_osi="Windows 2000"' is
20962306a36Sopenharmony_ci			     equivalent to
21062306a36Sopenharmony_ci			     'acpi_osi=!* acpi_osi=! acpi_osi="Windows 2000"'
21162306a36Sopenharmony_ci			     and
21262306a36Sopenharmony_ci			     'acpi_osi=!* acpi_osi="Windows 2000" acpi_osi=!',
21362306a36Sopenharmony_ci			     they all will make '_OSI("Windows 2000")' TRUE.
21462306a36Sopenharmony_ci
21562306a36Sopenharmony_ci	acpi_pm_good	[X86]
21662306a36Sopenharmony_ci			Override the pmtimer bug detection: force the kernel
21762306a36Sopenharmony_ci			to assume that this machine's pmtimer latches its value
21862306a36Sopenharmony_ci			and always returns good values.
21962306a36Sopenharmony_ci
22062306a36Sopenharmony_ci	acpi_sci=	[HW,ACPI] ACPI System Control Interrupt trigger mode
22162306a36Sopenharmony_ci			Format: { level | edge | high | low }
22262306a36Sopenharmony_ci
22362306a36Sopenharmony_ci	acpi_skip_timer_override [HW,ACPI]
22462306a36Sopenharmony_ci			Recognize and ignore IRQ0/pin2 Interrupt Override.
22562306a36Sopenharmony_ci			For broken nForce2 BIOS resulting in XT-PIC timer.
22662306a36Sopenharmony_ci
22762306a36Sopenharmony_ci	acpi_sleep=	[HW,ACPI] Sleep options
22862306a36Sopenharmony_ci			Format: { s3_bios, s3_mode, s3_beep, s4_hwsig,
22962306a36Sopenharmony_ci				  s4_nohwsig, old_ordering, nonvs,
23062306a36Sopenharmony_ci				  sci_force_enable, nobl }
23162306a36Sopenharmony_ci			See Documentation/power/video.rst for information on
23262306a36Sopenharmony_ci			s3_bios and s3_mode.
23362306a36Sopenharmony_ci			s3_beep is for debugging; it makes the PC's speaker beep
23462306a36Sopenharmony_ci			as soon as the kernel's real-mode entry point is called.
23562306a36Sopenharmony_ci			s4_hwsig causes the kernel to check the ACPI hardware
23662306a36Sopenharmony_ci			signature during resume from hibernation, and gracefully
23762306a36Sopenharmony_ci			refuse to resume if it has changed. This complies with
23862306a36Sopenharmony_ci			the ACPI specification but not with reality, since
23962306a36Sopenharmony_ci			Windows does not do this and many laptops do change it
24062306a36Sopenharmony_ci			on docking. So the default behaviour is to allow resume
24162306a36Sopenharmony_ci			and simply warn when the signature changes, unless the
24262306a36Sopenharmony_ci			s4_hwsig option is enabled.
24362306a36Sopenharmony_ci			s4_nohwsig prevents ACPI hardware signature from being
24462306a36Sopenharmony_ci			used (or even warned about) during resume.
24562306a36Sopenharmony_ci			old_ordering causes the ACPI 1.0 ordering of the _PTS
24662306a36Sopenharmony_ci			control method, with respect to putting devices into
24762306a36Sopenharmony_ci			low power states, to be enforced (the ACPI 2.0 ordering
24862306a36Sopenharmony_ci			of _PTS is used by default).
24962306a36Sopenharmony_ci			nonvs prevents the kernel from saving/restoring the
25062306a36Sopenharmony_ci			ACPI NVS memory during suspend/hibernation and resume.
25162306a36Sopenharmony_ci			sci_force_enable causes the kernel to set SCI_EN directly
25262306a36Sopenharmony_ci			on resume from S1/S3 (which is against the ACPI spec,
25362306a36Sopenharmony_ci			but some broken systems don't work without it).
25462306a36Sopenharmony_ci			nobl causes the internal blacklist of systems known to
25562306a36Sopenharmony_ci			behave incorrectly in some ways with respect to system
25662306a36Sopenharmony_ci			suspend and resume to be ignored (use wisely).
25762306a36Sopenharmony_ci
25862306a36Sopenharmony_ci	acpi_use_timer_override [HW,ACPI]
25962306a36Sopenharmony_ci			Use timer override. For some broken Nvidia NF5 boards
26062306a36Sopenharmony_ci			that require a timer override, but don't have HPET
26162306a36Sopenharmony_ci
26262306a36Sopenharmony_ci	add_efi_memmap	[EFI; X86] Include EFI memory map in
26362306a36Sopenharmony_ci			kernel's map of available physical RAM.
26462306a36Sopenharmony_ci
26562306a36Sopenharmony_ci	agp=		[AGP]
26662306a36Sopenharmony_ci			{ off | try_unsupported }
26762306a36Sopenharmony_ci			off: disable AGP support
26862306a36Sopenharmony_ci			try_unsupported: try to drive unsupported chipsets
26962306a36Sopenharmony_ci				(may crash computer or cause data corruption)
27062306a36Sopenharmony_ci
27162306a36Sopenharmony_ci	ALSA		[HW,ALSA]
27262306a36Sopenharmony_ci			See Documentation/sound/alsa-configuration.rst
27362306a36Sopenharmony_ci
27462306a36Sopenharmony_ci	alignment=	[KNL,ARM]
27562306a36Sopenharmony_ci			Allow the default userspace alignment fault handler
27662306a36Sopenharmony_ci			behaviour to be specified.  Bit 0 enables warnings,
27762306a36Sopenharmony_ci			bit 1 enables fixups, and bit 2 sends a segfault.
27862306a36Sopenharmony_ci
27962306a36Sopenharmony_ci	align_va_addr=	[X86-64]
28062306a36Sopenharmony_ci			Align virtual addresses by clearing slice [14:12] when
28162306a36Sopenharmony_ci			allocating a VMA at process creation time. This option
28262306a36Sopenharmony_ci			gives you up to 3% performance improvement on AMD F15h
28362306a36Sopenharmony_ci			machines (where it is enabled by default) for a
28462306a36Sopenharmony_ci			CPU-intensive style benchmark, and it can vary highly in
28562306a36Sopenharmony_ci			a microbenchmark depending on workload and compiler.
28662306a36Sopenharmony_ci
28762306a36Sopenharmony_ci			32: only for 32-bit processes
28862306a36Sopenharmony_ci			64: only for 64-bit processes
28962306a36Sopenharmony_ci			on: enable for both 32- and 64-bit processes
29062306a36Sopenharmony_ci			off: disable for both 32- and 64-bit processes
29162306a36Sopenharmony_ci
29262306a36Sopenharmony_ci	alloc_snapshot	[FTRACE]
29362306a36Sopenharmony_ci			Allocate the ftrace snapshot buffer on boot up when the
29462306a36Sopenharmony_ci			main buffer is allocated. This is handy if debugging
29562306a36Sopenharmony_ci			and you need to use tracing_snapshot() on boot up, and
29662306a36Sopenharmony_ci			do not want to use tracing_snapshot_alloc() as it needs
29762306a36Sopenharmony_ci			to be done where GFP_KERNEL allocations are allowed.
29862306a36Sopenharmony_ci
29962306a36Sopenharmony_ci	allow_mismatched_32bit_el0 [ARM64]
30062306a36Sopenharmony_ci			Allow execve() of 32-bit applications and setting of the
30162306a36Sopenharmony_ci			PER_LINUX32 personality on systems where only a strict
30262306a36Sopenharmony_ci			subset of the CPUs support 32-bit EL0. When this
30362306a36Sopenharmony_ci			parameter is present, the set of CPUs supporting 32-bit
30462306a36Sopenharmony_ci			EL0 is indicated by /sys/devices/system/cpu/aarch32_el0
30562306a36Sopenharmony_ci			and hot-unplug operations may be restricted.
30662306a36Sopenharmony_ci
30762306a36Sopenharmony_ci			See Documentation/arch/arm64/asymmetric-32bit.rst for more
30862306a36Sopenharmony_ci			information.
30962306a36Sopenharmony_ci
31062306a36Sopenharmony_ci	amd_iommu=	[HW,X86-64]
31162306a36Sopenharmony_ci			Pass parameters to the AMD IOMMU driver in the system.
31262306a36Sopenharmony_ci			Possible values are:
31362306a36Sopenharmony_ci			fullflush - Deprecated, equivalent to iommu.strict=1
31462306a36Sopenharmony_ci			off	  - do not initialize any AMD IOMMU found in
31562306a36Sopenharmony_ci				    the system
31662306a36Sopenharmony_ci			force_isolation - Force device isolation for all
31762306a36Sopenharmony_ci					  devices. The IOMMU driver is not
31862306a36Sopenharmony_ci					  allowed anymore to lift isolation
31962306a36Sopenharmony_ci					  requirements as needed. This option
32062306a36Sopenharmony_ci					  does not override iommu=pt
32162306a36Sopenharmony_ci			force_enable - Force enable the IOMMU on platforms known
32262306a36Sopenharmony_ci				       to be buggy with IOMMU enabled. Use this
32362306a36Sopenharmony_ci				       option with care.
32462306a36Sopenharmony_ci			pgtbl_v1     - Use v1 page table for DMA-API (Default).
32562306a36Sopenharmony_ci			pgtbl_v2     - Use v2 page table for DMA-API.
32662306a36Sopenharmony_ci			irtcachedis  - Disable Interrupt Remapping Table (IRT) caching.
32762306a36Sopenharmony_ci
32862306a36Sopenharmony_ci	amd_iommu_dump=	[HW,X86-64]
32962306a36Sopenharmony_ci			Enable AMD IOMMU driver option to dump the ACPI table
33062306a36Sopenharmony_ci			for AMD IOMMU. With this option enabled, AMD IOMMU
33162306a36Sopenharmony_ci			driver will print ACPI tables for AMD IOMMU during
33262306a36Sopenharmony_ci			IOMMU initialization.
33362306a36Sopenharmony_ci
33462306a36Sopenharmony_ci	amd_iommu_intr=	[HW,X86-64]
33562306a36Sopenharmony_ci			Specifies one of the following AMD IOMMU interrupt
33662306a36Sopenharmony_ci			remapping modes:
33762306a36Sopenharmony_ci			legacy     - Use legacy interrupt remapping mode.
33862306a36Sopenharmony_ci			vapic      - Use virtual APIC mode, which allows IOMMU
33962306a36Sopenharmony_ci			             to inject interrupts directly into guest.
34062306a36Sopenharmony_ci			             This mode requires kvm-amd.avic=1.
34162306a36Sopenharmony_ci			             (Default when IOMMU HW support is present.)
34262306a36Sopenharmony_ci
34362306a36Sopenharmony_ci	amd_pstate=	[X86]
34462306a36Sopenharmony_ci			disable
34562306a36Sopenharmony_ci			  Do not enable amd_pstate as the default
34662306a36Sopenharmony_ci			  scaling driver for the supported processors
34762306a36Sopenharmony_ci			passive
34862306a36Sopenharmony_ci			  Use amd_pstate with passive mode as a scaling driver.
34962306a36Sopenharmony_ci			  In this mode autonomous selection is disabled.
35062306a36Sopenharmony_ci			  Driver requests a desired performance level and platform
35162306a36Sopenharmony_ci			  tries to match the same performance level if it is
35262306a36Sopenharmony_ci			  satisfied by guaranteed performance level.
35362306a36Sopenharmony_ci			active
35462306a36Sopenharmony_ci			  Use amd_pstate_epp driver instance as the scaling driver,
35562306a36Sopenharmony_ci			  driver provides a hint to the hardware if software wants
35662306a36Sopenharmony_ci			  to bias toward performance (0x0) or energy efficiency (0xff)
35762306a36Sopenharmony_ci			  to the CPPC firmware. then CPPC power algorithm will
35862306a36Sopenharmony_ci			  calculate the runtime workload and adjust the realtime cores
35962306a36Sopenharmony_ci			  frequency.
36062306a36Sopenharmony_ci			guided
36162306a36Sopenharmony_ci			  Activate guided autonomous mode. Driver requests minimum and
36262306a36Sopenharmony_ci			  maximum performance level and the platform autonomously
36362306a36Sopenharmony_ci			  selects a performance level in this range and appropriate
36462306a36Sopenharmony_ci			  to the current workload.
36562306a36Sopenharmony_ci
36662306a36Sopenharmony_ci	amijoy.map=	[HW,JOY] Amiga joystick support
36762306a36Sopenharmony_ci			Map of devices attached to JOY0DAT and JOY1DAT
36862306a36Sopenharmony_ci			Format: <a>,<b>
36962306a36Sopenharmony_ci			See also Documentation/input/joydev/joystick.rst
37062306a36Sopenharmony_ci
37162306a36Sopenharmony_ci	analog.map=	[HW,JOY] Analog joystick and gamepad support
37262306a36Sopenharmony_ci			Specifies type or capabilities of an analog joystick
37362306a36Sopenharmony_ci			connected to one of 16 gameports
37462306a36Sopenharmony_ci			Format: <type1>,<type2>,..<type16>
37562306a36Sopenharmony_ci
37662306a36Sopenharmony_ci	apc=		[HW,SPARC]
37762306a36Sopenharmony_ci			Power management functions (SPARCstation-4/5 + deriv.)
37862306a36Sopenharmony_ci			Format: noidle
37962306a36Sopenharmony_ci			Disable APC CPU standby support. SPARCstation-Fox does
38062306a36Sopenharmony_ci			not play well with APC CPU idle - disable it if you have
38162306a36Sopenharmony_ci			APC and your system crashes randomly.
38262306a36Sopenharmony_ci
38362306a36Sopenharmony_ci	apic=		[APIC,X86] Advanced Programmable Interrupt Controller
38462306a36Sopenharmony_ci			Change the output verbosity while booting
38562306a36Sopenharmony_ci			Format: { quiet (default) | verbose | debug }
38662306a36Sopenharmony_ci			Change the amount of debugging information output
38762306a36Sopenharmony_ci			when initialising the APIC and IO-APIC components.
38862306a36Sopenharmony_ci			For X86-32, this can also be used to specify an APIC
38962306a36Sopenharmony_ci			driver name.
39062306a36Sopenharmony_ci			Format: apic=driver_name
39162306a36Sopenharmony_ci			Examples: apic=bigsmp
39262306a36Sopenharmony_ci
39362306a36Sopenharmony_ci	apic_extnmi=	[APIC,X86] External NMI delivery setting
39462306a36Sopenharmony_ci			Format: { bsp (default) | all | none }
39562306a36Sopenharmony_ci			bsp:  External NMI is delivered only to CPU 0
39662306a36Sopenharmony_ci			all:  External NMIs are broadcast to all CPUs as a
39762306a36Sopenharmony_ci			      backup of CPU 0
39862306a36Sopenharmony_ci			none: External NMI is masked for all CPUs. This is
39962306a36Sopenharmony_ci			      useful so that a dump capture kernel won't be
40062306a36Sopenharmony_ci			      shot down by NMI
40162306a36Sopenharmony_ci
40262306a36Sopenharmony_ci	autoconf=	[IPV6]
40362306a36Sopenharmony_ci			See Documentation/networking/ipv6.rst.
40462306a36Sopenharmony_ci
40562306a36Sopenharmony_ci	apm=		[APM] Advanced Power Management
40662306a36Sopenharmony_ci			See header of arch/x86/kernel/apm_32.c.
40762306a36Sopenharmony_ci
40862306a36Sopenharmony_ci	apparmor=	[APPARMOR] Disable or enable AppArmor at boot time
40962306a36Sopenharmony_ci			Format: { "0" | "1" }
41062306a36Sopenharmony_ci			See security/apparmor/Kconfig help text
41162306a36Sopenharmony_ci			0 -- disable.
41262306a36Sopenharmony_ci			1 -- enable.
41362306a36Sopenharmony_ci			Default value is set via kernel config option.
41462306a36Sopenharmony_ci
41562306a36Sopenharmony_ci	arcrimi=	[HW,NET] ARCnet - "RIM I" (entirely mem-mapped) cards
41662306a36Sopenharmony_ci			Format: <io>,<irq>,<nodeID>
41762306a36Sopenharmony_ci
41862306a36Sopenharmony_ci	arm64.nobti	[ARM64] Unconditionally disable Branch Target
41962306a36Sopenharmony_ci			Identification support
42062306a36Sopenharmony_ci
42162306a36Sopenharmony_ci	arm64.nomops	[ARM64] Unconditionally disable Memory Copy and Memory
42262306a36Sopenharmony_ci			Set instructions support
42362306a36Sopenharmony_ci
42462306a36Sopenharmony_ci	arm64.nomte	[ARM64] Unconditionally disable Memory Tagging Extension
42562306a36Sopenharmony_ci			support
42662306a36Sopenharmony_ci
42762306a36Sopenharmony_ci	arm64.nopauth	[ARM64] Unconditionally disable Pointer Authentication
42862306a36Sopenharmony_ci			support
42962306a36Sopenharmony_ci
43062306a36Sopenharmony_ci	arm64.nosme	[ARM64] Unconditionally disable Scalable Matrix
43162306a36Sopenharmony_ci			Extension support
43262306a36Sopenharmony_ci
43362306a36Sopenharmony_ci	arm64.nosve	[ARM64] Unconditionally disable Scalable Vector
43462306a36Sopenharmony_ci			Extension support
43562306a36Sopenharmony_ci
43662306a36Sopenharmony_ci	ataflop=	[HW,M68k]
43762306a36Sopenharmony_ci
43862306a36Sopenharmony_ci	atarimouse=	[HW,MOUSE] Atari Mouse
43962306a36Sopenharmony_ci
44062306a36Sopenharmony_ci	atkbd.extra=	[HW] Enable extra LEDs and keys on IBM RapidAccess,
44162306a36Sopenharmony_ci			EzKey and similar keyboards
44262306a36Sopenharmony_ci
44362306a36Sopenharmony_ci	atkbd.reset=	[HW] Reset keyboard during initialization
44462306a36Sopenharmony_ci
44562306a36Sopenharmony_ci	atkbd.set=	[HW] Select keyboard code set
44662306a36Sopenharmony_ci			Format: <int> (2 = AT (default), 3 = PS/2)
44762306a36Sopenharmony_ci
44862306a36Sopenharmony_ci	atkbd.scroll=	[HW] Enable scroll wheel on MS Office and similar
44962306a36Sopenharmony_ci			keyboards
45062306a36Sopenharmony_ci
45162306a36Sopenharmony_ci	atkbd.softraw=	[HW] Choose between synthetic and real raw mode
45262306a36Sopenharmony_ci			Format: <bool> (0 = real, 1 = synthetic (default))
45362306a36Sopenharmony_ci
45462306a36Sopenharmony_ci	atkbd.softrepeat= [HW]
45562306a36Sopenharmony_ci			Use software keyboard repeat
45662306a36Sopenharmony_ci
45762306a36Sopenharmony_ci	audit=		[KNL] Enable the audit sub-system
45862306a36Sopenharmony_ci			Format: { "0" | "1" | "off" | "on" }
45962306a36Sopenharmony_ci			0 | off - kernel audit is disabled and can not be
46062306a36Sopenharmony_ci			    enabled until the next reboot
46162306a36Sopenharmony_ci			unset - kernel audit is initialized but disabled and
46262306a36Sopenharmony_ci			    will be fully enabled by the userspace auditd.
46362306a36Sopenharmony_ci			1 | on - kernel audit is initialized and partially
46462306a36Sopenharmony_ci			    enabled, storing at most audit_backlog_limit
46562306a36Sopenharmony_ci			    messages in RAM until it is fully enabled by the
46662306a36Sopenharmony_ci			    userspace auditd.
46762306a36Sopenharmony_ci			Default: unset
46862306a36Sopenharmony_ci
46962306a36Sopenharmony_ci	audit_backlog_limit= [KNL] Set the audit queue size limit.
47062306a36Sopenharmony_ci			Format: <int> (must be >=0)
47162306a36Sopenharmony_ci			Default: 64
47262306a36Sopenharmony_ci
47362306a36Sopenharmony_ci	bau=		[X86_UV] Enable the BAU on SGI UV.  The default
47462306a36Sopenharmony_ci			behavior is to disable the BAU (i.e. bau=0).
47562306a36Sopenharmony_ci			Format: { "0" | "1" }
47662306a36Sopenharmony_ci			0 - Disable the BAU.
47762306a36Sopenharmony_ci			1 - Enable the BAU.
47862306a36Sopenharmony_ci			unset - Disable the BAU.
47962306a36Sopenharmony_ci
48062306a36Sopenharmony_ci	baycom_epp=	[HW,AX25]
48162306a36Sopenharmony_ci			Format: <io>,<mode>
48262306a36Sopenharmony_ci
48362306a36Sopenharmony_ci	baycom_par=	[HW,AX25] BayCom Parallel Port AX.25 Modem
48462306a36Sopenharmony_ci			Format: <io>,<mode>
48562306a36Sopenharmony_ci			See header of drivers/net/hamradio/baycom_par.c.
48662306a36Sopenharmony_ci
48762306a36Sopenharmony_ci	baycom_ser_fdx=	[HW,AX25]
48862306a36Sopenharmony_ci			BayCom Serial Port AX.25 Modem (Full Duplex Mode)
48962306a36Sopenharmony_ci			Format: <io>,<irq>,<mode>[,<baud>]
49062306a36Sopenharmony_ci			See header of drivers/net/hamradio/baycom_ser_fdx.c.
49162306a36Sopenharmony_ci
49262306a36Sopenharmony_ci	baycom_ser_hdx=	[HW,AX25]
49362306a36Sopenharmony_ci			BayCom Serial Port AX.25 Modem (Half Duplex Mode)
49462306a36Sopenharmony_ci			Format: <io>,<irq>,<mode>
49562306a36Sopenharmony_ci			See header of drivers/net/hamradio/baycom_ser_hdx.c.
49662306a36Sopenharmony_ci
49762306a36Sopenharmony_ci	bert_disable	[ACPI]
49862306a36Sopenharmony_ci			Disable BERT OS support on buggy BIOSes.
49962306a36Sopenharmony_ci
50062306a36Sopenharmony_ci	bgrt_disable	[ACPI][X86]
50162306a36Sopenharmony_ci			Disable BGRT to avoid flickering OEM logo.
50262306a36Sopenharmony_ci
50362306a36Sopenharmony_ci	blkdevparts=	Manual partition parsing of block device(s) for
50462306a36Sopenharmony_ci			embedded devices based on command line input.
50562306a36Sopenharmony_ci			See Documentation/block/cmdline-partition.rst
50662306a36Sopenharmony_ci
50762306a36Sopenharmony_ci	boot_delay=	Milliseconds to delay each printk during boot.
50862306a36Sopenharmony_ci			Only works if CONFIG_BOOT_PRINTK_DELAY is enabled,
50962306a36Sopenharmony_ci			and you may also have to specify "lpj=".  Boot_delay
51062306a36Sopenharmony_ci			values larger than 10 seconds (10000) are assumed
51162306a36Sopenharmony_ci			erroneous and ignored.
51262306a36Sopenharmony_ci			Format: integer
51362306a36Sopenharmony_ci
51462306a36Sopenharmony_ci	bootconfig	[KNL]
51562306a36Sopenharmony_ci			Extended command line options can be added to an initrd
51662306a36Sopenharmony_ci			and this will cause the kernel to look for it.
51762306a36Sopenharmony_ci
51862306a36Sopenharmony_ci			See Documentation/admin-guide/bootconfig.rst
51962306a36Sopenharmony_ci
52062306a36Sopenharmony_ci	bttv.card=	[HW,V4L] bttv (bt848 + bt878 based grabber cards)
52162306a36Sopenharmony_ci	bttv.radio=	Most important insmod options are available as
52262306a36Sopenharmony_ci			kernel args too.
52362306a36Sopenharmony_ci	bttv.pll=	See Documentation/admin-guide/media/bttv.rst
52462306a36Sopenharmony_ci	bttv.tuner=
52562306a36Sopenharmony_ci
52662306a36Sopenharmony_ci	bulk_remove=off	[PPC]  This parameter disables the use of the pSeries
52762306a36Sopenharmony_ci			firmware feature for flushing multiple hpte entries
52862306a36Sopenharmony_ci			at a time.
52962306a36Sopenharmony_ci
53062306a36Sopenharmony_ci	c101=		[NET] Moxa C101 synchronous serial card
53162306a36Sopenharmony_ci
53262306a36Sopenharmony_ci	cachesize=	[BUGS=X86-32] Override level 2 CPU cache size detection.
53362306a36Sopenharmony_ci			Sometimes CPU hardware bugs make them report the cache
53462306a36Sopenharmony_ci			size incorrectly. The kernel will attempt work arounds
53562306a36Sopenharmony_ci			to fix known problems, but for some CPUs it is not
53662306a36Sopenharmony_ci			possible to determine what the correct size should be.
53762306a36Sopenharmony_ci			This option provides an override for these situations.
53862306a36Sopenharmony_ci
53962306a36Sopenharmony_ci	carrier_timeout=
54062306a36Sopenharmony_ci			[NET] Specifies amount of time (in seconds) that
54162306a36Sopenharmony_ci			the kernel should wait for a network carrier. By default
54262306a36Sopenharmony_ci			it waits 120 seconds.
54362306a36Sopenharmony_ci
54462306a36Sopenharmony_ci	ca_keys=	[KEYS] This parameter identifies a specific key(s) on
54562306a36Sopenharmony_ci			the system trusted keyring to be used for certificate
54662306a36Sopenharmony_ci			trust validation.
54762306a36Sopenharmony_ci			format: { id:<keyid> | builtin }
54862306a36Sopenharmony_ci
54962306a36Sopenharmony_ci	cca=		[MIPS] Override the kernel pages' cache coherency
55062306a36Sopenharmony_ci			algorithm.  Accepted values range from 0 to 7
55162306a36Sopenharmony_ci			inclusive. See arch/mips/include/asm/pgtable-bits.h
55262306a36Sopenharmony_ci			for platform specific values (SB1, Loongson3 and
55362306a36Sopenharmony_ci			others).
55462306a36Sopenharmony_ci
55562306a36Sopenharmony_ci	ccw_timeout_log	[S390]
55662306a36Sopenharmony_ci			See Documentation/arch/s390/common_io.rst for details.
55762306a36Sopenharmony_ci
55862306a36Sopenharmony_ci	cgroup_disable=	[KNL] Disable a particular controller or optional feature
55962306a36Sopenharmony_ci			Format: {name of the controller(s) or feature(s) to disable}
56062306a36Sopenharmony_ci			The effects of cgroup_disable=foo are:
56162306a36Sopenharmony_ci			- foo isn't auto-mounted if you mount all cgroups in
56262306a36Sopenharmony_ci			  a single hierarchy
56362306a36Sopenharmony_ci			- foo isn't visible as an individually mountable
56462306a36Sopenharmony_ci			  subsystem
56562306a36Sopenharmony_ci			- if foo is an optional feature then the feature is
56662306a36Sopenharmony_ci			  disabled and corresponding cgroup files are not
56762306a36Sopenharmony_ci			  created
56862306a36Sopenharmony_ci			{Currently only "memory" controller deal with this and
56962306a36Sopenharmony_ci			cut the overhead, others just disable the usage. So
57062306a36Sopenharmony_ci			only cgroup_disable=memory is actually worthy}
57162306a36Sopenharmony_ci			Specifying "pressure" disables per-cgroup pressure
57262306a36Sopenharmony_ci			stall information accounting feature
57362306a36Sopenharmony_ci
57462306a36Sopenharmony_ci	cgroup_no_v1=	[KNL] Disable cgroup controllers and named hierarchies in v1
57562306a36Sopenharmony_ci			Format: { { controller | "all" | "named" }
57662306a36Sopenharmony_ci			          [,{ controller | "all" | "named" }...] }
57762306a36Sopenharmony_ci			Like cgroup_disable, but only applies to cgroup v1;
57862306a36Sopenharmony_ci			the blacklisted controllers remain available in cgroup2.
57962306a36Sopenharmony_ci			"all" blacklists all controllers and "named" disables
58062306a36Sopenharmony_ci			named mounts. Specifying both "all" and "named" disables
58162306a36Sopenharmony_ci			all v1 hierarchies.
58262306a36Sopenharmony_ci
58362306a36Sopenharmony_ci	cgroup.memory=	[KNL] Pass options to the cgroup memory controller.
58462306a36Sopenharmony_ci			Format: <string>
58562306a36Sopenharmony_ci			nosocket -- Disable socket memory accounting.
58662306a36Sopenharmony_ci			nokmem -- Disable kernel memory accounting.
58762306a36Sopenharmony_ci			nobpf -- Disable BPF memory accounting.
58862306a36Sopenharmony_ci
58962306a36Sopenharmony_ci	checkreqprot=	[SELINUX] Set initial checkreqprot flag value.
59062306a36Sopenharmony_ci			Format: { "0" | "1" }
59162306a36Sopenharmony_ci			See security/selinux/Kconfig help text.
59262306a36Sopenharmony_ci			0 -- check protection applied by kernel (includes
59362306a36Sopenharmony_ci				any implied execute protection).
59462306a36Sopenharmony_ci			1 -- check protection requested by application.
59562306a36Sopenharmony_ci			Default value is set via a kernel config option.
59662306a36Sopenharmony_ci			Value can be changed at runtime via
59762306a36Sopenharmony_ci				/sys/fs/selinux/checkreqprot.
59862306a36Sopenharmony_ci			Setting checkreqprot to 1 is deprecated.
59962306a36Sopenharmony_ci
60062306a36Sopenharmony_ci	cio_ignore=	[S390]
60162306a36Sopenharmony_ci			See Documentation/arch/s390/common_io.rst for details.
60262306a36Sopenharmony_ci
60362306a36Sopenharmony_ci	clearcpuid=X[,X...] [X86]
60462306a36Sopenharmony_ci			Disable CPUID feature X for the kernel. See
60562306a36Sopenharmony_ci			arch/x86/include/asm/cpufeatures.h for the valid bit
60662306a36Sopenharmony_ci			numbers X. Note the Linux-specific bits are not necessarily
60762306a36Sopenharmony_ci			stable over kernel options, but the vendor-specific
60862306a36Sopenharmony_ci			ones should be.
60962306a36Sopenharmony_ci			X can also be a string as appearing in the flags: line
61062306a36Sopenharmony_ci			in /proc/cpuinfo which does not have the above
61162306a36Sopenharmony_ci			instability issue. However, not all features have names
61262306a36Sopenharmony_ci			in /proc/cpuinfo.
61362306a36Sopenharmony_ci			Note that using this option will taint your kernel.
61462306a36Sopenharmony_ci			Also note that user programs calling CPUID directly
61562306a36Sopenharmony_ci			or using the feature without checking anything
61662306a36Sopenharmony_ci			will still see it. This just prevents it from
61762306a36Sopenharmony_ci			being used by the kernel or shown in /proc/cpuinfo.
61862306a36Sopenharmony_ci			Also note the kernel might malfunction if you disable
61962306a36Sopenharmony_ci			some critical bits.
62062306a36Sopenharmony_ci
62162306a36Sopenharmony_ci	clk_ignore_unused
62262306a36Sopenharmony_ci			[CLK]
62362306a36Sopenharmony_ci			Prevents the clock framework from automatically gating
62462306a36Sopenharmony_ci			clocks that have not been explicitly enabled by a Linux
62562306a36Sopenharmony_ci			device driver but are enabled in hardware at reset or
62662306a36Sopenharmony_ci			by the bootloader/firmware. Note that this does not
62762306a36Sopenharmony_ci			force such clocks to be always-on nor does it reserve
62862306a36Sopenharmony_ci			those clocks in any way. This parameter is useful for
62962306a36Sopenharmony_ci			debug and development, but should not be needed on a
63062306a36Sopenharmony_ci			platform with proper driver support.  For more
63162306a36Sopenharmony_ci			information, see Documentation/driver-api/clk.rst.
63262306a36Sopenharmony_ci
63362306a36Sopenharmony_ci	clock=		[BUGS=X86-32, HW] gettimeofday clocksource override.
63462306a36Sopenharmony_ci			[Deprecated]
63562306a36Sopenharmony_ci			Forces specified clocksource (if available) to be used
63662306a36Sopenharmony_ci			when calculating gettimeofday(). If specified
63762306a36Sopenharmony_ci			clocksource is not available, it defaults to PIT.
63862306a36Sopenharmony_ci			Format: { pit | tsc | cyclone | pmtmr }
63962306a36Sopenharmony_ci
64062306a36Sopenharmony_ci	clocksource=	Override the default clocksource
64162306a36Sopenharmony_ci			Format: <string>
64262306a36Sopenharmony_ci			Override the default clocksource and use the clocksource
64362306a36Sopenharmony_ci			with the name specified.
64462306a36Sopenharmony_ci			Some clocksource names to choose from, depending on
64562306a36Sopenharmony_ci			the platform:
64662306a36Sopenharmony_ci			[all] jiffies (this is the base, fallback clocksource)
64762306a36Sopenharmony_ci			[ACPI] acpi_pm
64862306a36Sopenharmony_ci			[ARM] imx_timer1,OSTS,netx_timer,mpu_timer2,
64962306a36Sopenharmony_ci				pxa_timer,timer3,32k_counter,timer0_1
65062306a36Sopenharmony_ci			[X86-32] pit,hpet,tsc;
65162306a36Sopenharmony_ci				scx200_hrt on Geode; cyclone on IBM x440
65262306a36Sopenharmony_ci			[MIPS] MIPS
65362306a36Sopenharmony_ci			[PARISC] cr16
65462306a36Sopenharmony_ci			[S390] tod
65562306a36Sopenharmony_ci			[SH] SuperH
65662306a36Sopenharmony_ci			[SPARC64] tick
65762306a36Sopenharmony_ci			[X86-64] hpet,tsc
65862306a36Sopenharmony_ci
65962306a36Sopenharmony_ci	clocksource.arm_arch_timer.evtstrm=
66062306a36Sopenharmony_ci			[ARM,ARM64]
66162306a36Sopenharmony_ci			Format: <bool>
66262306a36Sopenharmony_ci			Enable/disable the eventstream feature of the ARM
66362306a36Sopenharmony_ci			architected timer so that code using WFE-based polling
66462306a36Sopenharmony_ci			loops can be debugged more effectively on production
66562306a36Sopenharmony_ci			systems.
66662306a36Sopenharmony_ci
66762306a36Sopenharmony_ci	clocksource.max_cswd_read_retries= [KNL]
66862306a36Sopenharmony_ci			Number of clocksource_watchdog() retries due to
66962306a36Sopenharmony_ci			external delays before the clock will be marked
67062306a36Sopenharmony_ci			unstable.  Defaults to two retries, that is,
67162306a36Sopenharmony_ci			three attempts to read the clock under test.
67262306a36Sopenharmony_ci
67362306a36Sopenharmony_ci	clocksource.verify_n_cpus= [KNL]
67462306a36Sopenharmony_ci			Limit the number of CPUs checked for clocksources
67562306a36Sopenharmony_ci			marked with CLOCK_SOURCE_VERIFY_PERCPU that
67662306a36Sopenharmony_ci			are marked unstable due to excessive skew.
67762306a36Sopenharmony_ci			A negative value says to check all CPUs, while
67862306a36Sopenharmony_ci			zero says not to check any.  Values larger than
67962306a36Sopenharmony_ci			nr_cpu_ids are silently truncated to nr_cpu_ids.
68062306a36Sopenharmony_ci			The actual CPUs are chosen randomly, with
68162306a36Sopenharmony_ci			no replacement if the same CPU is chosen twice.
68262306a36Sopenharmony_ci
68362306a36Sopenharmony_ci	clocksource-wdtest.holdoff= [KNL]
68462306a36Sopenharmony_ci			Set the time in seconds that the clocksource
68562306a36Sopenharmony_ci			watchdog test waits before commencing its tests.
68662306a36Sopenharmony_ci			Defaults to zero when built as a module and to
68762306a36Sopenharmony_ci			10 seconds when built into the kernel.
68862306a36Sopenharmony_ci
68962306a36Sopenharmony_ci	cma=nn[MG]@[start[MG][-end[MG]]]
69062306a36Sopenharmony_ci			[KNL,CMA]
69162306a36Sopenharmony_ci			Sets the size of kernel global memory area for
69262306a36Sopenharmony_ci			contiguous memory allocations and optionally the
69362306a36Sopenharmony_ci			placement constraint by the physical address range of
69462306a36Sopenharmony_ci			memory allocations. A value of 0 disables CMA
69562306a36Sopenharmony_ci			altogether. For more information, see
69662306a36Sopenharmony_ci			kernel/dma/contiguous.c
69762306a36Sopenharmony_ci
69862306a36Sopenharmony_ci	cma_pernuma=nn[MG]
69962306a36Sopenharmony_ci			[KNL,CMA]
70062306a36Sopenharmony_ci			Sets the size of kernel per-numa memory area for
70162306a36Sopenharmony_ci			contiguous memory allocations. A value of 0 disables
70262306a36Sopenharmony_ci			per-numa CMA altogether. And If this option is not
70362306a36Sopenharmony_ci			specified, the default value is 0.
70462306a36Sopenharmony_ci			With per-numa CMA enabled, DMA users on node nid will
70562306a36Sopenharmony_ci			first try to allocate buffer from the pernuma area
70662306a36Sopenharmony_ci			which is located in node nid, if the allocation fails,
70762306a36Sopenharmony_ci			they will fallback to the global default memory area.
70862306a36Sopenharmony_ci
70962306a36Sopenharmony_ci	numa_cma=<node>:nn[MG][,<node>:nn[MG]]
71062306a36Sopenharmony_ci			[KNL,CMA]
71162306a36Sopenharmony_ci			Sets the size of kernel numa memory area for
71262306a36Sopenharmony_ci			contiguous memory allocations. It will reserve CMA
71362306a36Sopenharmony_ci			area for the specified node.
71462306a36Sopenharmony_ci
71562306a36Sopenharmony_ci			With numa CMA enabled, DMA users on node nid will
71662306a36Sopenharmony_ci			first try to allocate buffer from the numa area
71762306a36Sopenharmony_ci			which is located in node nid, if the allocation fails,
71862306a36Sopenharmony_ci			they will fallback to the global default memory area.
71962306a36Sopenharmony_ci
72062306a36Sopenharmony_ci	cmo_free_hint=	[PPC] Format: { yes | no }
72162306a36Sopenharmony_ci			Specify whether pages are marked as being inactive
72262306a36Sopenharmony_ci			when they are freed.  This is used in CMO environments
72362306a36Sopenharmony_ci			to determine OS memory pressure for page stealing by
72462306a36Sopenharmony_ci			a hypervisor.
72562306a36Sopenharmony_ci			Default: yes
72662306a36Sopenharmony_ci
72762306a36Sopenharmony_ci	coherent_pool=nn[KMG]	[ARM,KNL]
72862306a36Sopenharmony_ci			Sets the size of memory pool for coherent, atomic dma
72962306a36Sopenharmony_ci			allocations, by default set to 256K.
73062306a36Sopenharmony_ci
73162306a36Sopenharmony_ci	com20020=	[HW,NET] ARCnet - COM20020 chipset
73262306a36Sopenharmony_ci			Format:
73362306a36Sopenharmony_ci			<io>[,<irq>[,<nodeID>[,<backplane>[,<ckp>[,<timeout>]]]]]
73462306a36Sopenharmony_ci
73562306a36Sopenharmony_ci	com90io=	[HW,NET] ARCnet - COM90xx chipset (IO-mapped buffers)
73662306a36Sopenharmony_ci			Format: <io>[,<irq>]
73762306a36Sopenharmony_ci
73862306a36Sopenharmony_ci	com90xx=	[HW,NET]
73962306a36Sopenharmony_ci			ARCnet - COM90xx chipset (memory-mapped buffers)
74062306a36Sopenharmony_ci			Format: <io>[,<irq>[,<memstart>]]
74162306a36Sopenharmony_ci
74262306a36Sopenharmony_ci	condev=		[HW,S390] console device
74362306a36Sopenharmony_ci	conmode=
74462306a36Sopenharmony_ci
74562306a36Sopenharmony_ci	con3215_drop=	[S390] 3215 console drop mode.
74662306a36Sopenharmony_ci			Format: y|n|Y|N|1|0
74762306a36Sopenharmony_ci			When set to true, drop data on the 3215 console when
74862306a36Sopenharmony_ci			the console buffer is full. In this case the
74962306a36Sopenharmony_ci			operator using a 3270 terminal emulator (for example
75062306a36Sopenharmony_ci			x3270) does not have to enter the clear key for the
75162306a36Sopenharmony_ci			console output to advance and the kernel to continue.
75262306a36Sopenharmony_ci			This leads to a much faster boot time when a 3270
75362306a36Sopenharmony_ci			terminal emulator is active. If no 3270 terminal
75462306a36Sopenharmony_ci			emulator is used, this parameter has no effect.
75562306a36Sopenharmony_ci
75662306a36Sopenharmony_ci	console=	[KNL] Output console device and options.
75762306a36Sopenharmony_ci
75862306a36Sopenharmony_ci		tty<n>	Use the virtual console device <n>.
75962306a36Sopenharmony_ci
76062306a36Sopenharmony_ci		ttyS<n>[,options]
76162306a36Sopenharmony_ci		ttyUSB0[,options]
76262306a36Sopenharmony_ci			Use the specified serial port.  The options are of
76362306a36Sopenharmony_ci			the form "bbbbpnf", where "bbbb" is the baud rate,
76462306a36Sopenharmony_ci			"p" is parity ("n", "o", or "e"), "n" is number of
76562306a36Sopenharmony_ci			bits, and "f" is flow control ("r" for RTS or
76662306a36Sopenharmony_ci			omit it).  Default is "9600n8".
76762306a36Sopenharmony_ci
76862306a36Sopenharmony_ci			See Documentation/admin-guide/serial-console.rst for more
76962306a36Sopenharmony_ci			information.  See
77062306a36Sopenharmony_ci			Documentation/networking/netconsole.rst for an
77162306a36Sopenharmony_ci			alternative.
77262306a36Sopenharmony_ci
77362306a36Sopenharmony_ci		uart[8250],io,<addr>[,options]
77462306a36Sopenharmony_ci		uart[8250],mmio,<addr>[,options]
77562306a36Sopenharmony_ci		uart[8250],mmio16,<addr>[,options]
77662306a36Sopenharmony_ci		uart[8250],mmio32,<addr>[,options]
77762306a36Sopenharmony_ci		uart[8250],0x<addr>[,options]
77862306a36Sopenharmony_ci			Start an early, polled-mode console on the 8250/16550
77962306a36Sopenharmony_ci			UART at the specified I/O port or MMIO address,
78062306a36Sopenharmony_ci			switching to the matching ttyS device later.
78162306a36Sopenharmony_ci			MMIO inter-register address stride is either 8-bit
78262306a36Sopenharmony_ci			(mmio), 16-bit (mmio16), or 32-bit (mmio32).
78362306a36Sopenharmony_ci			If none of [io|mmio|mmio16|mmio32], <addr> is assumed
78462306a36Sopenharmony_ci			to be equivalent to 'mmio'. 'options' are specified in
78562306a36Sopenharmony_ci			the same format described for ttyS above; if unspecified,
78662306a36Sopenharmony_ci			the h/w is not re-initialized.
78762306a36Sopenharmony_ci
78862306a36Sopenharmony_ci		hvc<n>	Use the hypervisor console device <n>. This is for
78962306a36Sopenharmony_ci			both Xen and PowerPC hypervisors.
79062306a36Sopenharmony_ci
79162306a36Sopenharmony_ci		{ null | "" }
79262306a36Sopenharmony_ci			Use to disable console output, i.e., to have kernel
79362306a36Sopenharmony_ci			console messages discarded.
79462306a36Sopenharmony_ci			This must be the only console= parameter used on the
79562306a36Sopenharmony_ci			kernel command line.
79662306a36Sopenharmony_ci
79762306a36Sopenharmony_ci		If the device connected to the port is not a TTY but a braille
79862306a36Sopenharmony_ci		device, prepend "brl," before the device type, for instance
79962306a36Sopenharmony_ci			console=brl,ttyS0
80062306a36Sopenharmony_ci		For now, only VisioBraille is supported.
80162306a36Sopenharmony_ci
80262306a36Sopenharmony_ci	console_msg_format=
80362306a36Sopenharmony_ci			[KNL] Change console messages format
80462306a36Sopenharmony_ci		default
80562306a36Sopenharmony_ci			By default we print messages on consoles in
80662306a36Sopenharmony_ci			"[time stamp] text\n" format (time stamp may not be
80762306a36Sopenharmony_ci			printed, depending on CONFIG_PRINTK_TIME or
80862306a36Sopenharmony_ci			`printk_time' param).
80962306a36Sopenharmony_ci		syslog
81062306a36Sopenharmony_ci			Switch to syslog format: "<%u>[time stamp] text\n"
81162306a36Sopenharmony_ci			IOW, each message will have a facility and loglevel
81262306a36Sopenharmony_ci			prefix. The format is similar to one used by syslog()
81362306a36Sopenharmony_ci			syscall, or to executing "dmesg -S --raw" or to reading
81462306a36Sopenharmony_ci			from /proc/kmsg.
81562306a36Sopenharmony_ci
81662306a36Sopenharmony_ci	consoleblank=	[KNL] The console blank (screen saver) timeout in
81762306a36Sopenharmony_ci			seconds. A value of 0 disables the blank timer.
81862306a36Sopenharmony_ci			Defaults to 0.
81962306a36Sopenharmony_ci
82062306a36Sopenharmony_ci	coredump_filter=
82162306a36Sopenharmony_ci			[KNL] Change the default value for
82262306a36Sopenharmony_ci			/proc/<pid>/coredump_filter.
82362306a36Sopenharmony_ci			See also Documentation/filesystems/proc.rst.
82462306a36Sopenharmony_ci
82562306a36Sopenharmony_ci	coresight_cpu_debug.enable
82662306a36Sopenharmony_ci			[ARM,ARM64]
82762306a36Sopenharmony_ci			Format: <bool>
82862306a36Sopenharmony_ci			Enable/disable the CPU sampling based debugging.
82962306a36Sopenharmony_ci			0: default value, disable debugging
83062306a36Sopenharmony_ci			1: enable debugging at boot time
83162306a36Sopenharmony_ci
83262306a36Sopenharmony_ci	cpcihp_generic=	[HW,PCI] Generic port I/O CompactPCI driver
83362306a36Sopenharmony_ci			Format:
83462306a36Sopenharmony_ci			<first_slot>,<last_slot>,<port>,<enum_bit>[,<debug>]
83562306a36Sopenharmony_ci
83662306a36Sopenharmony_ci	cpuidle.off=1	[CPU_IDLE]
83762306a36Sopenharmony_ci			disable the cpuidle sub-system
83862306a36Sopenharmony_ci
83962306a36Sopenharmony_ci	cpuidle.governor=
84062306a36Sopenharmony_ci			[CPU_IDLE] Name of the cpuidle governor to use.
84162306a36Sopenharmony_ci
84262306a36Sopenharmony_ci	cpufreq.off=1	[CPU_FREQ]
84362306a36Sopenharmony_ci			disable the cpufreq sub-system
84462306a36Sopenharmony_ci
84562306a36Sopenharmony_ci	cpufreq.default_governor=
84662306a36Sopenharmony_ci			[CPU_FREQ] Name of the default cpufreq governor or
84762306a36Sopenharmony_ci			policy to use. This governor must be registered in the
84862306a36Sopenharmony_ci			kernel before the cpufreq driver probes.
84962306a36Sopenharmony_ci
85062306a36Sopenharmony_ci	cpu_init_udelay=N
85162306a36Sopenharmony_ci			[X86] Delay for N microsec between assert and de-assert
85262306a36Sopenharmony_ci			of APIC INIT to start processors.  This delay occurs
85362306a36Sopenharmony_ci			on every CPU online, such as boot, and resume from suspend.
85462306a36Sopenharmony_ci			Default: 10000
85562306a36Sopenharmony_ci
85662306a36Sopenharmony_ci	cpuhp.parallel=
85762306a36Sopenharmony_ci			[SMP] Enable/disable parallel bringup of secondary CPUs
85862306a36Sopenharmony_ci			Format: <bool>
85962306a36Sopenharmony_ci			Default is enabled if CONFIG_HOTPLUG_PARALLEL=y. Otherwise
86062306a36Sopenharmony_ci			the parameter has no effect.
86162306a36Sopenharmony_ci
86262306a36Sopenharmony_ci	crash_kexec_post_notifiers
86362306a36Sopenharmony_ci			Run kdump after running panic-notifiers and dumping
86462306a36Sopenharmony_ci			kmsg. This only for the users who doubt kdump always
86562306a36Sopenharmony_ci			succeeds in any situation.
86662306a36Sopenharmony_ci			Note that this also increases risks of kdump failure,
86762306a36Sopenharmony_ci			because some panic notifiers can make the crashed
86862306a36Sopenharmony_ci			kernel more unstable.
86962306a36Sopenharmony_ci
87062306a36Sopenharmony_ci	crashkernel=size[KMG][@offset[KMG]]
87162306a36Sopenharmony_ci			[KNL] Using kexec, Linux can switch to a 'crash kernel'
87262306a36Sopenharmony_ci			upon panic. This parameter reserves the physical
87362306a36Sopenharmony_ci			memory region [offset, offset + size] for that kernel
87462306a36Sopenharmony_ci			image. If '@offset' is omitted, then a suitable offset
87562306a36Sopenharmony_ci			is selected automatically.
87662306a36Sopenharmony_ci			[KNL, X86-64, ARM64, RISCV] Select a region under 4G first, and
87762306a36Sopenharmony_ci			fall back to reserve region above 4G when '@offset'
87862306a36Sopenharmony_ci			hasn't been specified.
87962306a36Sopenharmony_ci			See Documentation/admin-guide/kdump/kdump.rst for further details.
88062306a36Sopenharmony_ci
88162306a36Sopenharmony_ci	crashkernel=range1:size1[,range2:size2,...][@offset]
88262306a36Sopenharmony_ci			[KNL] Same as above, but depends on the memory
88362306a36Sopenharmony_ci			in the running system. The syntax of range is
88462306a36Sopenharmony_ci			start-[end] where start and end are both
88562306a36Sopenharmony_ci			a memory unit (amount[KMG]). See also
88662306a36Sopenharmony_ci			Documentation/admin-guide/kdump/kdump.rst for an example.
88762306a36Sopenharmony_ci
88862306a36Sopenharmony_ci	crashkernel=size[KMG],high
88962306a36Sopenharmony_ci			[KNL, X86-64, ARM64, RISCV] range could be above 4G.
89062306a36Sopenharmony_ci			Allow kernel to allocate physical memory region from top,
89162306a36Sopenharmony_ci			so could be above 4G if system have more than 4G ram
89262306a36Sopenharmony_ci			installed. Otherwise memory region will be allocated
89362306a36Sopenharmony_ci			below 4G, if available.
89462306a36Sopenharmony_ci			It will be ignored if crashkernel=X is specified.
89562306a36Sopenharmony_ci	crashkernel=size[KMG],low
89662306a36Sopenharmony_ci			[KNL, X86-64, ARM64, RISCV] range under 4G. When crashkernel=X,high
89762306a36Sopenharmony_ci			is passed, kernel could allocate physical memory region
89862306a36Sopenharmony_ci			above 4G, that cause second kernel crash on system
89962306a36Sopenharmony_ci			that require some amount of low memory, e.g. swiotlb
90062306a36Sopenharmony_ci			requires at least 64M+32K low memory, also enough extra
90162306a36Sopenharmony_ci			low memory is needed to make sure DMA buffers for 32-bit
90262306a36Sopenharmony_ci			devices won't run out. Kernel would try to allocate
90362306a36Sopenharmony_ci			default	size of memory below 4G automatically. The default
90462306a36Sopenharmony_ci			size is	platform dependent.
90562306a36Sopenharmony_ci			  --> x86: max(swiotlb_size_or_default() + 8MiB, 256MiB)
90662306a36Sopenharmony_ci			  --> arm64: 128MiB
90762306a36Sopenharmony_ci			  --> riscv: 128MiB
90862306a36Sopenharmony_ci			This one lets the user specify own low range under 4G
90962306a36Sopenharmony_ci			for second kernel instead.
91062306a36Sopenharmony_ci			0: to disable low allocation.
91162306a36Sopenharmony_ci			It will be ignored when crashkernel=X,high is not used
91262306a36Sopenharmony_ci			or memory reserved is below 4G.
91362306a36Sopenharmony_ci
91462306a36Sopenharmony_ci	cryptomgr.notests
91562306a36Sopenharmony_ci			[KNL] Disable crypto self-tests
91662306a36Sopenharmony_ci
91762306a36Sopenharmony_ci	cs89x0_dma=	[HW,NET]
91862306a36Sopenharmony_ci			Format: <dma>
91962306a36Sopenharmony_ci
92062306a36Sopenharmony_ci	cs89x0_media=	[HW,NET]
92162306a36Sopenharmony_ci			Format: { rj45 | aui | bnc }
92262306a36Sopenharmony_ci
92362306a36Sopenharmony_ci	csdlock_debug=	[KNL] Enable or disable debug add-ons of cross-CPU
92462306a36Sopenharmony_ci			function call handling. When switched on,
92562306a36Sopenharmony_ci			additional debug data is printed to the console
92662306a36Sopenharmony_ci			in case a hanging CPU is detected, and that
92762306a36Sopenharmony_ci			CPU is pinged again in order to try to resolve
92862306a36Sopenharmony_ci			the hang situation.  The default value of this
92962306a36Sopenharmony_ci			option depends on the CSD_LOCK_WAIT_DEBUG_DEFAULT
93062306a36Sopenharmony_ci			Kconfig option.
93162306a36Sopenharmony_ci
93262306a36Sopenharmony_ci	dasd=		[HW,NET]
93362306a36Sopenharmony_ci			See header of drivers/s390/block/dasd_devmap.c.
93462306a36Sopenharmony_ci
93562306a36Sopenharmony_ci	db9.dev[2|3]=	[HW,JOY] Multisystem joystick support via parallel port
93662306a36Sopenharmony_ci			(one device per port)
93762306a36Sopenharmony_ci			Format: <port#>,<type>
93862306a36Sopenharmony_ci			See also Documentation/input/devices/joystick-parport.rst
93962306a36Sopenharmony_ci
94062306a36Sopenharmony_ci	debug		[KNL] Enable kernel debugging (events log level).
94162306a36Sopenharmony_ci
94262306a36Sopenharmony_ci	debug_boot_weak_hash
94362306a36Sopenharmony_ci			[KNL] Enable printing [hashed] pointers early in the
94462306a36Sopenharmony_ci			boot sequence.  If enabled, we use a weak hash instead
94562306a36Sopenharmony_ci			of siphash to hash pointers.  Use this option if you are
94662306a36Sopenharmony_ci			seeing instances of '(___ptrval___)') and need to see a
94762306a36Sopenharmony_ci			value (hashed pointer) instead. Cryptographically
94862306a36Sopenharmony_ci			insecure, please do not use on production kernels.
94962306a36Sopenharmony_ci
95062306a36Sopenharmony_ci	debug_locks_verbose=
95162306a36Sopenharmony_ci			[KNL] verbose locking self-tests
95262306a36Sopenharmony_ci			Format: <int>
95362306a36Sopenharmony_ci			Print debugging info while doing the locking API
95462306a36Sopenharmony_ci			self-tests.
95562306a36Sopenharmony_ci			Bitmask for the various LOCKTYPE_ tests. Defaults to 0
95662306a36Sopenharmony_ci			(no extra messages), setting it to -1 (all bits set)
95762306a36Sopenharmony_ci			will print _a_lot_ more information - normally only
95862306a36Sopenharmony_ci			useful to lockdep developers.
95962306a36Sopenharmony_ci
96062306a36Sopenharmony_ci	debug_objects	[KNL] Enable object debugging
96162306a36Sopenharmony_ci
96262306a36Sopenharmony_ci	debug_guardpage_minorder=
96362306a36Sopenharmony_ci			[KNL] When CONFIG_DEBUG_PAGEALLOC is set, this
96462306a36Sopenharmony_ci			parameter allows control of the order of pages that will
96562306a36Sopenharmony_ci			be intentionally kept free (and hence protected) by the
96662306a36Sopenharmony_ci			buddy allocator. Bigger value increase the probability
96762306a36Sopenharmony_ci			of catching random memory corruption, but reduce the
96862306a36Sopenharmony_ci			amount of memory for normal system use. The maximum
96962306a36Sopenharmony_ci			possible value is MAX_ORDER/2.  Setting this parameter
97062306a36Sopenharmony_ci			to 1 or 2 should be enough to identify most random
97162306a36Sopenharmony_ci			memory corruption problems caused by bugs in kernel or
97262306a36Sopenharmony_ci			driver code when a CPU writes to (or reads from) a
97362306a36Sopenharmony_ci			random memory location. Note that there exists a class
97462306a36Sopenharmony_ci			of memory corruptions problems caused by buggy H/W or
97562306a36Sopenharmony_ci			F/W or by drivers badly programming DMA (basically when
97662306a36Sopenharmony_ci			memory is written at bus level and the CPU MMU is
97762306a36Sopenharmony_ci			bypassed) which are not detectable by
97862306a36Sopenharmony_ci			CONFIG_DEBUG_PAGEALLOC, hence this option will not help
97962306a36Sopenharmony_ci			tracking down these problems.
98062306a36Sopenharmony_ci
98162306a36Sopenharmony_ci	debug_pagealloc=
98262306a36Sopenharmony_ci			[KNL] When CONFIG_DEBUG_PAGEALLOC is set, this parameter
98362306a36Sopenharmony_ci			enables the feature at boot time. By default, it is
98462306a36Sopenharmony_ci			disabled and the system will work mostly the same as a
98562306a36Sopenharmony_ci			kernel built without CONFIG_DEBUG_PAGEALLOC.
98662306a36Sopenharmony_ci			Note: to get most of debug_pagealloc error reports, it's
98762306a36Sopenharmony_ci			useful to also enable the page_owner functionality.
98862306a36Sopenharmony_ci			on: enable the feature
98962306a36Sopenharmony_ci
99062306a36Sopenharmony_ci	debugfs=    	[KNL] This parameter enables what is exposed to userspace
99162306a36Sopenharmony_ci			and debugfs internal clients.
99262306a36Sopenharmony_ci			Format: { on, no-mount, off }
99362306a36Sopenharmony_ci			on: 	All functions are enabled.
99462306a36Sopenharmony_ci			no-mount:
99562306a36Sopenharmony_ci				Filesystem is not registered but kernel clients can
99662306a36Sopenharmony_ci			        access APIs and a crashkernel can be used to read
99762306a36Sopenharmony_ci				its content. There is nothing to mount.
99862306a36Sopenharmony_ci			off: 	Filesystem is not registered and clients
99962306a36Sopenharmony_ci			        get a -EPERM as result when trying to register files
100062306a36Sopenharmony_ci				or directories within debugfs.
100162306a36Sopenharmony_ci				This is equivalent of the runtime functionality if
100262306a36Sopenharmony_ci				debugfs was not enabled in the kernel at all.
100362306a36Sopenharmony_ci			Default value is set in build-time with a kernel configuration.
100462306a36Sopenharmony_ci
100562306a36Sopenharmony_ci	debugpat	[X86] Enable PAT debugging
100662306a36Sopenharmony_ci
100762306a36Sopenharmony_ci	default_hugepagesz=
100862306a36Sopenharmony_ci			[HW] The size of the default HugeTLB page. This is
100962306a36Sopenharmony_ci			the size represented by the legacy /proc/ hugepages
101062306a36Sopenharmony_ci			APIs.  In addition, this is the default hugetlb size
101162306a36Sopenharmony_ci			used for shmget(), mmap() and mounting hugetlbfs
101262306a36Sopenharmony_ci			filesystems.  If not specified, defaults to the
101362306a36Sopenharmony_ci			architecture's default huge page size.  Huge page
101462306a36Sopenharmony_ci			sizes are architecture dependent.  See also
101562306a36Sopenharmony_ci			Documentation/admin-guide/mm/hugetlbpage.rst.
101662306a36Sopenharmony_ci			Format: size[KMG]
101762306a36Sopenharmony_ci
101862306a36Sopenharmony_ci	deferred_probe_timeout=
101962306a36Sopenharmony_ci			[KNL] Debugging option to set a timeout in seconds for
102062306a36Sopenharmony_ci			deferred probe to give up waiting on dependencies to
102162306a36Sopenharmony_ci			probe. Only specific dependencies (subsystems or
102262306a36Sopenharmony_ci			drivers) that have opted in will be ignored. A timeout
102362306a36Sopenharmony_ci			of 0 will timeout at the end of initcalls. If the time
102462306a36Sopenharmony_ci			out hasn't expired, it'll be restarted by each
102562306a36Sopenharmony_ci			successful driver registration. This option will also
102662306a36Sopenharmony_ci			dump out devices still on the deferred probe list after
102762306a36Sopenharmony_ci			retrying.
102862306a36Sopenharmony_ci
102962306a36Sopenharmony_ci	delayacct	[KNL] Enable per-task delay accounting
103062306a36Sopenharmony_ci
103162306a36Sopenharmony_ci	dell_smm_hwmon.ignore_dmi=
103262306a36Sopenharmony_ci			[HW] Continue probing hardware even if DMI data
103362306a36Sopenharmony_ci			indicates that the driver is running on unsupported
103462306a36Sopenharmony_ci			hardware.
103562306a36Sopenharmony_ci
103662306a36Sopenharmony_ci	dell_smm_hwmon.force=
103762306a36Sopenharmony_ci			[HW] Activate driver even if SMM BIOS signature does
103862306a36Sopenharmony_ci			not match list of supported models and enable otherwise
103962306a36Sopenharmony_ci			blacklisted features.
104062306a36Sopenharmony_ci
104162306a36Sopenharmony_ci	dell_smm_hwmon.power_status=
104262306a36Sopenharmony_ci			[HW] Report power status in /proc/i8k
104362306a36Sopenharmony_ci			(disabled by default).
104462306a36Sopenharmony_ci
104562306a36Sopenharmony_ci	dell_smm_hwmon.restricted=
104662306a36Sopenharmony_ci			[HW] Allow controlling fans only if SYS_ADMIN
104762306a36Sopenharmony_ci			capability is set.
104862306a36Sopenharmony_ci
104962306a36Sopenharmony_ci	dell_smm_hwmon.fan_mult=
105062306a36Sopenharmony_ci			[HW] Factor to multiply fan speed with.
105162306a36Sopenharmony_ci
105262306a36Sopenharmony_ci	dell_smm_hwmon.fan_max=
105362306a36Sopenharmony_ci			[HW] Maximum configurable fan speed.
105462306a36Sopenharmony_ci
105562306a36Sopenharmony_ci	dfltcc=		[HW,S390]
105662306a36Sopenharmony_ci			Format: { on | off | def_only | inf_only | always }
105762306a36Sopenharmony_ci			on:       s390 zlib hardware support for compression on
105862306a36Sopenharmony_ci			          level 1 and decompression (default)
105962306a36Sopenharmony_ci			off:      No s390 zlib hardware support
106062306a36Sopenharmony_ci			def_only: s390 zlib hardware support for deflate
106162306a36Sopenharmony_ci			          only (compression on level 1)
106262306a36Sopenharmony_ci			inf_only: s390 zlib hardware support for inflate
106362306a36Sopenharmony_ci			          only (decompression)
106462306a36Sopenharmony_ci			always:   Same as 'on' but ignores the selected compression
106562306a36Sopenharmony_ci			          level always using hardware support (used for debugging)
106662306a36Sopenharmony_ci
106762306a36Sopenharmony_ci	dhash_entries=	[KNL]
106862306a36Sopenharmony_ci			Set number of hash buckets for dentry cache.
106962306a36Sopenharmony_ci
107062306a36Sopenharmony_ci	disable_1tb_segments [PPC]
107162306a36Sopenharmony_ci			Disables the use of 1TB hash page table segments. This
107262306a36Sopenharmony_ci			causes the kernel to fall back to 256MB segments which
107362306a36Sopenharmony_ci			can be useful when debugging issues that require an SLB
107462306a36Sopenharmony_ci			miss to occur.
107562306a36Sopenharmony_ci
107662306a36Sopenharmony_ci	disable=	[IPV6]
107762306a36Sopenharmony_ci			See Documentation/networking/ipv6.rst.
107862306a36Sopenharmony_ci
107962306a36Sopenharmony_ci	disable_radix	[PPC]
108062306a36Sopenharmony_ci			Disable RADIX MMU mode on POWER9
108162306a36Sopenharmony_ci
108262306a36Sopenharmony_ci	disable_tlbie	[PPC]
108362306a36Sopenharmony_ci			Disable TLBIE instruction. Currently does not work
108462306a36Sopenharmony_ci			with KVM, with HASH MMU, or with coherent accelerators.
108562306a36Sopenharmony_ci
108662306a36Sopenharmony_ci	disable_cpu_apicid= [X86,APIC,SMP]
108762306a36Sopenharmony_ci			Format: <int>
108862306a36Sopenharmony_ci			The number of initial APIC ID for the
108962306a36Sopenharmony_ci			corresponding CPU to be disabled at boot,
109062306a36Sopenharmony_ci			mostly used for the kdump 2nd kernel to
109162306a36Sopenharmony_ci			disable BSP to wake up multiple CPUs without
109262306a36Sopenharmony_ci			causing system reset or hang due to sending
109362306a36Sopenharmony_ci			INIT from AP to BSP.
109462306a36Sopenharmony_ci
109562306a36Sopenharmony_ci	disable_ddw	[PPC/PSERIES]
109662306a36Sopenharmony_ci			Disable Dynamic DMA Window support. Use this
109762306a36Sopenharmony_ci			to workaround buggy firmware.
109862306a36Sopenharmony_ci
109962306a36Sopenharmony_ci	disable_ipv6=	[IPV6]
110062306a36Sopenharmony_ci			See Documentation/networking/ipv6.rst.
110162306a36Sopenharmony_ci
110262306a36Sopenharmony_ci	disable_mtrr_cleanup [X86]
110362306a36Sopenharmony_ci			The kernel tries to adjust MTRR layout from continuous
110462306a36Sopenharmony_ci			to discrete, to make X server driver able to add WB
110562306a36Sopenharmony_ci			entry later. This parameter disables that.
110662306a36Sopenharmony_ci
110762306a36Sopenharmony_ci	disable_mtrr_trim [X86, Intel and AMD only]
110862306a36Sopenharmony_ci			By default the kernel will trim any uncacheable
110962306a36Sopenharmony_ci			memory out of your available memory pool based on
111062306a36Sopenharmony_ci			MTRR settings.  This parameter disables that behavior,
111162306a36Sopenharmony_ci			possibly causing your machine to run very slowly.
111262306a36Sopenharmony_ci
111362306a36Sopenharmony_ci	disable_timer_pin_1 [X86]
111462306a36Sopenharmony_ci			Disable PIN 1 of APIC timer
111562306a36Sopenharmony_ci			Can be useful to work around chipset bugs.
111662306a36Sopenharmony_ci
111762306a36Sopenharmony_ci	dis_ucode_ldr	[X86] Disable the microcode loader.
111862306a36Sopenharmony_ci
111962306a36Sopenharmony_ci	dma_debug=off	If the kernel is compiled with DMA_API_DEBUG support,
112062306a36Sopenharmony_ci			this option disables the debugging code at boot.
112162306a36Sopenharmony_ci
112262306a36Sopenharmony_ci	dma_debug_entries=<number>
112362306a36Sopenharmony_ci			This option allows to tune the number of preallocated
112462306a36Sopenharmony_ci			entries for DMA-API debugging code. One entry is
112562306a36Sopenharmony_ci			required per DMA-API allocation. Use this if the
112662306a36Sopenharmony_ci			DMA-API debugging code disables itself because the
112762306a36Sopenharmony_ci			architectural default is too low.
112862306a36Sopenharmony_ci
112962306a36Sopenharmony_ci	dma_debug_driver=<driver_name>
113062306a36Sopenharmony_ci			With this option the DMA-API debugging driver
113162306a36Sopenharmony_ci			filter feature can be enabled at boot time. Just
113262306a36Sopenharmony_ci			pass the driver to filter for as the parameter.
113362306a36Sopenharmony_ci			The filter can be disabled or changed to another
113462306a36Sopenharmony_ci			driver later using sysfs.
113562306a36Sopenharmony_ci
113662306a36Sopenharmony_ci	reg_file_data_sampling=
113762306a36Sopenharmony_ci			[X86] Controls mitigation for Register File Data
113862306a36Sopenharmony_ci			Sampling (RFDS) vulnerability. RFDS is a CPU
113962306a36Sopenharmony_ci			vulnerability which may allow userspace to infer
114062306a36Sopenharmony_ci			kernel data values previously stored in floating point
114162306a36Sopenharmony_ci			registers, vector registers, or integer registers.
114262306a36Sopenharmony_ci			RFDS only affects Intel Atom processors.
114362306a36Sopenharmony_ci
114462306a36Sopenharmony_ci			on:	Turns ON the mitigation.
114562306a36Sopenharmony_ci			off:	Turns OFF the mitigation.
114662306a36Sopenharmony_ci
114762306a36Sopenharmony_ci			This parameter overrides the compile time default set
114862306a36Sopenharmony_ci			by CONFIG_MITIGATION_RFDS. Mitigation cannot be
114962306a36Sopenharmony_ci			disabled when other VERW based mitigations (like MDS)
115062306a36Sopenharmony_ci			are enabled. In order to disable RFDS mitigation all
115162306a36Sopenharmony_ci			VERW based mitigations need to be disabled.
115262306a36Sopenharmony_ci
115362306a36Sopenharmony_ci			For details see:
115462306a36Sopenharmony_ci			Documentation/admin-guide/hw-vuln/reg-file-data-sampling.rst
115562306a36Sopenharmony_ci
115662306a36Sopenharmony_ci	driver_async_probe=  [KNL]
115762306a36Sopenharmony_ci			List of driver names to be probed asynchronously. *
115862306a36Sopenharmony_ci			matches with all driver names. If * is specified, the
115962306a36Sopenharmony_ci			rest of the listed driver names are those that will NOT
116062306a36Sopenharmony_ci			match the *.
116162306a36Sopenharmony_ci			Format: <driver_name1>,<driver_name2>...
116262306a36Sopenharmony_ci
116362306a36Sopenharmony_ci	drm.edid_firmware=[<connector>:]<file>[,[<connector>:]<file>]
116462306a36Sopenharmony_ci			Broken monitors, graphic adapters, KVMs and EDIDless
116562306a36Sopenharmony_ci			panels may send no or incorrect EDID data sets.
116662306a36Sopenharmony_ci			This parameter allows to specify an EDID data sets
116762306a36Sopenharmony_ci			in the /lib/firmware directory that are used instead.
116862306a36Sopenharmony_ci			Generic built-in EDID data sets are used, if one of
116962306a36Sopenharmony_ci			edid/1024x768.bin, edid/1280x1024.bin,
117062306a36Sopenharmony_ci			edid/1680x1050.bin, or edid/1920x1080.bin is given
117162306a36Sopenharmony_ci			and no file with the same name exists. Details and
117262306a36Sopenharmony_ci			instructions how to build your own EDID data are
117362306a36Sopenharmony_ci			available in Documentation/admin-guide/edid.rst. An EDID
117462306a36Sopenharmony_ci			data set will only be used for a particular connector,
117562306a36Sopenharmony_ci			if its name and a colon are prepended to the EDID
117662306a36Sopenharmony_ci			name. Each connector may use a unique EDID data
117762306a36Sopenharmony_ci			set by separating the files with a comma.  An EDID
117862306a36Sopenharmony_ci			data set with no connector name will be used for
117962306a36Sopenharmony_ci			any connectors not explicitly specified.
118062306a36Sopenharmony_ci
118162306a36Sopenharmony_ci	dscc4.setup=	[NET]
118262306a36Sopenharmony_ci
118362306a36Sopenharmony_ci	dt_cpu_ftrs=	[PPC]
118462306a36Sopenharmony_ci			Format: {"off" | "known"}
118562306a36Sopenharmony_ci			Control how the dt_cpu_ftrs device-tree binding is
118662306a36Sopenharmony_ci			used for CPU feature discovery and setup (if it
118762306a36Sopenharmony_ci			exists).
118862306a36Sopenharmony_ci			off: Do not use it, fall back to legacy cpu table.
118962306a36Sopenharmony_ci			known: Do not pass through unknown features to guests
119062306a36Sopenharmony_ci			or userspace, only those that the kernel is aware of.
119162306a36Sopenharmony_ci
119262306a36Sopenharmony_ci	dump_apple_properties	[X86]
119362306a36Sopenharmony_ci			Dump name and content of EFI device properties on
119462306a36Sopenharmony_ci			x86 Macs.  Useful for driver authors to determine
119562306a36Sopenharmony_ci			what data is available or for reverse-engineering.
119662306a36Sopenharmony_ci
119762306a36Sopenharmony_ci	dyndbg[="val"]		[KNL,DYNAMIC_DEBUG]
119862306a36Sopenharmony_ci	<module>.dyndbg[="val"]
119962306a36Sopenharmony_ci			Enable debug messages at boot time.  See
120062306a36Sopenharmony_ci			Documentation/admin-guide/dynamic-debug-howto.rst
120162306a36Sopenharmony_ci			for details.
120262306a36Sopenharmony_ci
120362306a36Sopenharmony_ci	early_ioremap_debug [KNL]
120462306a36Sopenharmony_ci			Enable debug messages in early_ioremap support. This
120562306a36Sopenharmony_ci			is useful for tracking down temporary early mappings
120662306a36Sopenharmony_ci			which are not unmapped.
120762306a36Sopenharmony_ci
120862306a36Sopenharmony_ci	earlycon=	[KNL] Output early console device and options.
120962306a36Sopenharmony_ci
121062306a36Sopenharmony_ci			When used with no options, the early console is
121162306a36Sopenharmony_ci			determined by stdout-path property in device tree's
121262306a36Sopenharmony_ci			chosen node or the ACPI SPCR table if supported by
121362306a36Sopenharmony_ci			the platform.
121462306a36Sopenharmony_ci
121562306a36Sopenharmony_ci		cdns,<addr>[,options]
121662306a36Sopenharmony_ci			Start an early, polled-mode console on a Cadence
121762306a36Sopenharmony_ci			(xuartps) serial port at the specified address. Only
121862306a36Sopenharmony_ci			supported option is baud rate. If baud rate is not
121962306a36Sopenharmony_ci			specified, the serial port must already be setup and
122062306a36Sopenharmony_ci			configured.
122162306a36Sopenharmony_ci
122262306a36Sopenharmony_ci		uart[8250],io,<addr>[,options[,uartclk]]
122362306a36Sopenharmony_ci		uart[8250],mmio,<addr>[,options[,uartclk]]
122462306a36Sopenharmony_ci		uart[8250],mmio32,<addr>[,options[,uartclk]]
122562306a36Sopenharmony_ci		uart[8250],mmio32be,<addr>[,options[,uartclk]]
122662306a36Sopenharmony_ci		uart[8250],0x<addr>[,options]
122762306a36Sopenharmony_ci			Start an early, polled-mode console on the 8250/16550
122862306a36Sopenharmony_ci			UART at the specified I/O port or MMIO address.
122962306a36Sopenharmony_ci			MMIO inter-register address stride is either 8-bit
123062306a36Sopenharmony_ci			(mmio) or 32-bit (mmio32 or mmio32be).
123162306a36Sopenharmony_ci			If none of [io|mmio|mmio32|mmio32be], <addr> is assumed
123262306a36Sopenharmony_ci			to be equivalent to 'mmio'. 'options' are specified
123362306a36Sopenharmony_ci			in the same format described for "console=ttyS<n>"; if
123462306a36Sopenharmony_ci			unspecified, the h/w is not initialized. 'uartclk' is
123562306a36Sopenharmony_ci			the uart clock frequency; if unspecified, it is set
123662306a36Sopenharmony_ci			to 'BASE_BAUD' * 16.
123762306a36Sopenharmony_ci
123862306a36Sopenharmony_ci		pl011,<addr>
123962306a36Sopenharmony_ci		pl011,mmio32,<addr>
124062306a36Sopenharmony_ci			Start an early, polled-mode console on a pl011 serial
124162306a36Sopenharmony_ci			port at the specified address. The pl011 serial port
124262306a36Sopenharmony_ci			must already be setup and configured. Options are not
124362306a36Sopenharmony_ci			yet supported.  If 'mmio32' is specified, then only
124462306a36Sopenharmony_ci			the driver will use only 32-bit accessors to read/write
124562306a36Sopenharmony_ci			the device registers.
124662306a36Sopenharmony_ci
124762306a36Sopenharmony_ci		liteuart,<addr>
124862306a36Sopenharmony_ci			Start an early console on a litex serial port at the
124962306a36Sopenharmony_ci			specified address. The serial port must already be
125062306a36Sopenharmony_ci			setup and configured. Options are not yet supported.
125162306a36Sopenharmony_ci
125262306a36Sopenharmony_ci		meson,<addr>
125362306a36Sopenharmony_ci			Start an early, polled-mode console on a meson serial
125462306a36Sopenharmony_ci			port at the specified address. The serial port must
125562306a36Sopenharmony_ci			already be setup and configured. Options are not yet
125662306a36Sopenharmony_ci			supported.
125762306a36Sopenharmony_ci
125862306a36Sopenharmony_ci		msm_serial,<addr>
125962306a36Sopenharmony_ci			Start an early, polled-mode console on an msm serial
126062306a36Sopenharmony_ci			port at the specified address. The serial port
126162306a36Sopenharmony_ci			must already be setup and configured. Options are not
126262306a36Sopenharmony_ci			yet supported.
126362306a36Sopenharmony_ci
126462306a36Sopenharmony_ci		msm_serial_dm,<addr>
126562306a36Sopenharmony_ci			Start an early, polled-mode console on an msm serial
126662306a36Sopenharmony_ci			dm port at the specified address. The serial port
126762306a36Sopenharmony_ci			must already be setup and configured. Options are not
126862306a36Sopenharmony_ci			yet supported.
126962306a36Sopenharmony_ci
127062306a36Sopenharmony_ci		owl,<addr>
127162306a36Sopenharmony_ci			Start an early, polled-mode console on a serial port
127262306a36Sopenharmony_ci			of an Actions Semi SoC, such as S500 or S900, at the
127362306a36Sopenharmony_ci			specified address. The serial port must already be
127462306a36Sopenharmony_ci			setup and configured. Options are not yet supported.
127562306a36Sopenharmony_ci
127662306a36Sopenharmony_ci		rda,<addr>
127762306a36Sopenharmony_ci			Start an early, polled-mode console on a serial port
127862306a36Sopenharmony_ci			of an RDA Micro SoC, such as RDA8810PL, at the
127962306a36Sopenharmony_ci			specified address. The serial port must already be
128062306a36Sopenharmony_ci			setup and configured. Options are not yet supported.
128162306a36Sopenharmony_ci
128262306a36Sopenharmony_ci		sbi
128362306a36Sopenharmony_ci			Use RISC-V SBI (Supervisor Binary Interface) for early
128462306a36Sopenharmony_ci			console.
128562306a36Sopenharmony_ci
128662306a36Sopenharmony_ci		smh	Use ARM semihosting calls for early console.
128762306a36Sopenharmony_ci
128862306a36Sopenharmony_ci		s3c2410,<addr>
128962306a36Sopenharmony_ci		s3c2412,<addr>
129062306a36Sopenharmony_ci		s3c2440,<addr>
129162306a36Sopenharmony_ci		s3c6400,<addr>
129262306a36Sopenharmony_ci		s5pv210,<addr>
129362306a36Sopenharmony_ci		exynos4210,<addr>
129462306a36Sopenharmony_ci			Use early console provided by serial driver available
129562306a36Sopenharmony_ci			on Samsung SoCs, requires selecting proper type and
129662306a36Sopenharmony_ci			a correct base address of the selected UART port. The
129762306a36Sopenharmony_ci			serial port must already be setup and configured.
129862306a36Sopenharmony_ci			Options are not yet supported.
129962306a36Sopenharmony_ci
130062306a36Sopenharmony_ci		lantiq,<addr>
130162306a36Sopenharmony_ci			Start an early, polled-mode console on a lantiq serial
130262306a36Sopenharmony_ci			(lqasc) port at the specified address. The serial port
130362306a36Sopenharmony_ci			must already be setup and configured. Options are not
130462306a36Sopenharmony_ci			yet supported.
130562306a36Sopenharmony_ci
130662306a36Sopenharmony_ci		lpuart,<addr>
130762306a36Sopenharmony_ci		lpuart32,<addr>
130862306a36Sopenharmony_ci			Use early console provided by Freescale LP UART driver
130962306a36Sopenharmony_ci			found on Freescale Vybrid and QorIQ LS1021A processors.
131062306a36Sopenharmony_ci			A valid base address must be provided, and the serial
131162306a36Sopenharmony_ci			port must already be setup and configured.
131262306a36Sopenharmony_ci
131362306a36Sopenharmony_ci		ec_imx21,<addr>
131462306a36Sopenharmony_ci		ec_imx6q,<addr>
131562306a36Sopenharmony_ci			Start an early, polled-mode, output-only console on the
131662306a36Sopenharmony_ci			Freescale i.MX UART at the specified address. The UART
131762306a36Sopenharmony_ci			must already be setup and configured.
131862306a36Sopenharmony_ci
131962306a36Sopenharmony_ci		ar3700_uart,<addr>
132062306a36Sopenharmony_ci			Start an early, polled-mode console on the
132162306a36Sopenharmony_ci			Armada 3700 serial port at the specified
132262306a36Sopenharmony_ci			address. The serial port must already be setup
132362306a36Sopenharmony_ci			and configured. Options are not yet supported.
132462306a36Sopenharmony_ci
132562306a36Sopenharmony_ci		qcom_geni,<addr>
132662306a36Sopenharmony_ci			Start an early, polled-mode console on a Qualcomm
132762306a36Sopenharmony_ci			Generic Interface (GENI) based serial port at the
132862306a36Sopenharmony_ci			specified address. The serial port must already be
132962306a36Sopenharmony_ci			setup and configured. Options are not yet supported.
133062306a36Sopenharmony_ci
133162306a36Sopenharmony_ci		efifb,[options]
133262306a36Sopenharmony_ci			Start an early, unaccelerated console on the EFI
133362306a36Sopenharmony_ci			memory mapped framebuffer (if available). On cache
133462306a36Sopenharmony_ci			coherent non-x86 systems that use system memory for
133562306a36Sopenharmony_ci			the framebuffer, pass the 'ram' option so that it is
133662306a36Sopenharmony_ci			mapped with the correct attributes.
133762306a36Sopenharmony_ci
133862306a36Sopenharmony_ci		linflex,<addr>
133962306a36Sopenharmony_ci			Use early console provided by Freescale LINFlexD UART
134062306a36Sopenharmony_ci			serial driver for NXP S32V234 SoCs. A valid base
134162306a36Sopenharmony_ci			address must be provided, and the serial port must
134262306a36Sopenharmony_ci			already be setup and configured.
134362306a36Sopenharmony_ci
134462306a36Sopenharmony_ci	earlyprintk=	[X86,SH,ARM,M68k,S390]
134562306a36Sopenharmony_ci			earlyprintk=vga
134662306a36Sopenharmony_ci			earlyprintk=sclp
134762306a36Sopenharmony_ci			earlyprintk=xen
134862306a36Sopenharmony_ci			earlyprintk=serial[,ttySn[,baudrate]]
134962306a36Sopenharmony_ci			earlyprintk=serial[,0x...[,baudrate]]
135062306a36Sopenharmony_ci			earlyprintk=ttySn[,baudrate]
135162306a36Sopenharmony_ci			earlyprintk=dbgp[debugController#]
135262306a36Sopenharmony_ci			earlyprintk=pciserial[,force],bus:device.function[,baudrate]
135362306a36Sopenharmony_ci			earlyprintk=xdbc[xhciController#]
135462306a36Sopenharmony_ci
135562306a36Sopenharmony_ci			earlyprintk is useful when the kernel crashes before
135662306a36Sopenharmony_ci			the normal console is initialized. It is not enabled by
135762306a36Sopenharmony_ci			default because it has some cosmetic problems.
135862306a36Sopenharmony_ci
135962306a36Sopenharmony_ci			Append ",keep" to not disable it when the real console
136062306a36Sopenharmony_ci			takes over.
136162306a36Sopenharmony_ci
136262306a36Sopenharmony_ci			Only one of vga, serial, or usb debug port can
136362306a36Sopenharmony_ci			be used at a time.
136462306a36Sopenharmony_ci
136562306a36Sopenharmony_ci			Currently only ttyS0 and ttyS1 may be specified by
136662306a36Sopenharmony_ci			name.  Other I/O ports may be explicitly specified
136762306a36Sopenharmony_ci			on some architectures (x86 and arm at least) by
136862306a36Sopenharmony_ci			replacing ttySn with an I/O port address, like this:
136962306a36Sopenharmony_ci				earlyprintk=serial,0x1008,115200
137062306a36Sopenharmony_ci			You can find the port for a given device in
137162306a36Sopenharmony_ci			/proc/tty/driver/serial:
137262306a36Sopenharmony_ci				2: uart:ST16650V2 port:00001008 irq:18 ...
137362306a36Sopenharmony_ci
137462306a36Sopenharmony_ci			Interaction with the standard serial driver is not
137562306a36Sopenharmony_ci			very good.
137662306a36Sopenharmony_ci
137762306a36Sopenharmony_ci			The VGA output is eventually overwritten by
137862306a36Sopenharmony_ci			the real console.
137962306a36Sopenharmony_ci
138062306a36Sopenharmony_ci			The xen option can only be used in Xen domains.
138162306a36Sopenharmony_ci
138262306a36Sopenharmony_ci			The sclp output can only be used on s390.
138362306a36Sopenharmony_ci
138462306a36Sopenharmony_ci			The optional "force" to "pciserial" enables use of a
138562306a36Sopenharmony_ci			PCI device even when its classcode is not of the
138662306a36Sopenharmony_ci			UART class.
138762306a36Sopenharmony_ci
138862306a36Sopenharmony_ci	edac_report=	[HW,EDAC] Control how to report EDAC event
138962306a36Sopenharmony_ci			Format: {"on" | "off" | "force"}
139062306a36Sopenharmony_ci			on: enable EDAC to report H/W event. May be overridden
139162306a36Sopenharmony_ci			by other higher priority error reporting module.
139262306a36Sopenharmony_ci			off: disable H/W event reporting through EDAC.
139362306a36Sopenharmony_ci			force: enforce the use of EDAC to report H/W event.
139462306a36Sopenharmony_ci			default: on.
139562306a36Sopenharmony_ci
139662306a36Sopenharmony_ci	edd=		[EDD]
139762306a36Sopenharmony_ci			Format: {"off" | "on" | "skip[mbr]"}
139862306a36Sopenharmony_ci
139962306a36Sopenharmony_ci	efi=		[EFI]
140062306a36Sopenharmony_ci			Format: { "debug", "disable_early_pci_dma",
140162306a36Sopenharmony_ci				  "nochunk", "noruntime", "nosoftreserve",
140262306a36Sopenharmony_ci				  "novamap", "no_disable_early_pci_dma" }
140362306a36Sopenharmony_ci			debug: enable misc debug output.
140462306a36Sopenharmony_ci			disable_early_pci_dma: disable the busmaster bit on all
140562306a36Sopenharmony_ci			PCI bridges while in the EFI boot stub.
140662306a36Sopenharmony_ci			nochunk: disable reading files in "chunks" in the EFI
140762306a36Sopenharmony_ci			boot stub, as chunking can cause problems with some
140862306a36Sopenharmony_ci			firmware implementations.
140962306a36Sopenharmony_ci			noruntime : disable EFI runtime services support
141062306a36Sopenharmony_ci			nosoftreserve: The EFI_MEMORY_SP (Specific Purpose)
141162306a36Sopenharmony_ci			attribute may cause the kernel to reserve the
141262306a36Sopenharmony_ci			memory range for a memory mapping driver to
141362306a36Sopenharmony_ci			claim. Specify efi=nosoftreserve to disable this
141462306a36Sopenharmony_ci			reservation and treat the memory by its base type
141562306a36Sopenharmony_ci			(i.e. EFI_CONVENTIONAL_MEMORY / "System RAM").
141662306a36Sopenharmony_ci			novamap: do not call SetVirtualAddressMap().
141762306a36Sopenharmony_ci			no_disable_early_pci_dma: Leave the busmaster bit set
141862306a36Sopenharmony_ci			on all PCI bridges while in the EFI boot stub
141962306a36Sopenharmony_ci
142062306a36Sopenharmony_ci	efi_no_storage_paranoia [EFI; X86]
142162306a36Sopenharmony_ci			Using this parameter you can use more than 50% of
142262306a36Sopenharmony_ci			your efi variable storage. Use this parameter only if
142362306a36Sopenharmony_ci			you are really sure that your UEFI does sane gc and
142462306a36Sopenharmony_ci			fulfills the spec otherwise your board may brick.
142562306a36Sopenharmony_ci
142662306a36Sopenharmony_ci	efi_fake_mem=	nn[KMG]@ss[KMG]:aa[,nn[KMG]@ss[KMG]:aa,..] [EFI; X86]
142762306a36Sopenharmony_ci			Add arbitrary attribute to specific memory range by
142862306a36Sopenharmony_ci			updating original EFI memory map.
142962306a36Sopenharmony_ci			Region of memory which aa attribute is added to is
143062306a36Sopenharmony_ci			from ss to ss+nn.
143162306a36Sopenharmony_ci
143262306a36Sopenharmony_ci			If efi_fake_mem=2G@4G:0x10000,2G@0x10a0000000:0x10000
143362306a36Sopenharmony_ci			is specified, EFI_MEMORY_MORE_RELIABLE(0x10000)
143462306a36Sopenharmony_ci			attribute is added to range 0x100000000-0x180000000 and
143562306a36Sopenharmony_ci			0x10a0000000-0x1120000000.
143662306a36Sopenharmony_ci
143762306a36Sopenharmony_ci			If efi_fake_mem=8G@9G:0x40000 is specified, the
143862306a36Sopenharmony_ci			EFI_MEMORY_SP(0x40000) attribute is added to
143962306a36Sopenharmony_ci			range 0x240000000-0x43fffffff.
144062306a36Sopenharmony_ci
144162306a36Sopenharmony_ci			Using this parameter you can do debugging of EFI memmap
144262306a36Sopenharmony_ci			related features. For example, you can do debugging of
144362306a36Sopenharmony_ci			Address Range Mirroring feature even if your box
144462306a36Sopenharmony_ci			doesn't support it, or mark specific memory as
144562306a36Sopenharmony_ci			"soft reserved".
144662306a36Sopenharmony_ci
144762306a36Sopenharmony_ci	efivar_ssdt=	[EFI; X86] Name of an EFI variable that contains an SSDT
144862306a36Sopenharmony_ci			that is to be dynamically loaded by Linux. If there are
144962306a36Sopenharmony_ci			multiple variables with the same name but with different
145062306a36Sopenharmony_ci			vendor GUIDs, all of them will be loaded. See
145162306a36Sopenharmony_ci			Documentation/admin-guide/acpi/ssdt-overlays.rst for details.
145262306a36Sopenharmony_ci
145362306a36Sopenharmony_ci
145462306a36Sopenharmony_ci	eisa_irq_edge=	[PARISC,HW]
145562306a36Sopenharmony_ci			See header of drivers/parisc/eisa.c.
145662306a36Sopenharmony_ci
145762306a36Sopenharmony_ci	ekgdboc=	[X86,KGDB] Allow early kernel console debugging
145862306a36Sopenharmony_ci			Format: ekgdboc=kbd
145962306a36Sopenharmony_ci
146062306a36Sopenharmony_ci			This is designed to be used in conjunction with
146162306a36Sopenharmony_ci			the boot argument: earlyprintk=vga
146262306a36Sopenharmony_ci
146362306a36Sopenharmony_ci			This parameter works in place of the kgdboc parameter
146462306a36Sopenharmony_ci			but can only be used if the backing tty is available
146562306a36Sopenharmony_ci			very early in the boot process. For early debugging
146662306a36Sopenharmony_ci			via a serial port see kgdboc_earlycon instead.
146762306a36Sopenharmony_ci
146862306a36Sopenharmony_ci	elanfreq=	[X86-32]
146962306a36Sopenharmony_ci			See comment before function elanfreq_setup() in
147062306a36Sopenharmony_ci			arch/x86/kernel/cpu/cpufreq/elanfreq.c.
147162306a36Sopenharmony_ci
147262306a36Sopenharmony_ci	elfcorehdr=[size[KMG]@]offset[KMG] [IA64,PPC,SH,X86,S390]
147362306a36Sopenharmony_ci			Specifies physical address of start of kernel core
147462306a36Sopenharmony_ci			image elf header and optionally the size. Generally
147562306a36Sopenharmony_ci			kexec loader will pass this option to capture kernel.
147662306a36Sopenharmony_ci			See Documentation/admin-guide/kdump/kdump.rst for details.
147762306a36Sopenharmony_ci
147862306a36Sopenharmony_ci	enable_mtrr_cleanup [X86]
147962306a36Sopenharmony_ci			The kernel tries to adjust MTRR layout from continuous
148062306a36Sopenharmony_ci			to discrete, to make X server driver able to add WB
148162306a36Sopenharmony_ci			entry later. This parameter enables that.
148262306a36Sopenharmony_ci
148362306a36Sopenharmony_ci	enable_timer_pin_1 [X86]
148462306a36Sopenharmony_ci			Enable PIN 1 of APIC timer
148562306a36Sopenharmony_ci			Can be useful to work around chipset bugs
148662306a36Sopenharmony_ci			(in particular on some ATI chipsets).
148762306a36Sopenharmony_ci			The kernel tries to set a reasonable default.
148862306a36Sopenharmony_ci
148962306a36Sopenharmony_ci	enforcing=	[SELINUX] Set initial enforcing status.
149062306a36Sopenharmony_ci			Format: {"0" | "1"}
149162306a36Sopenharmony_ci			See security/selinux/Kconfig help text.
149262306a36Sopenharmony_ci			0 -- permissive (log only, no denials).
149362306a36Sopenharmony_ci			1 -- enforcing (deny and log).
149462306a36Sopenharmony_ci			Default value is 0.
149562306a36Sopenharmony_ci			Value can be changed at runtime via
149662306a36Sopenharmony_ci			/sys/fs/selinux/enforce.
149762306a36Sopenharmony_ci
149862306a36Sopenharmony_ci	erst_disable	[ACPI]
149962306a36Sopenharmony_ci			Disable Error Record Serialization Table (ERST)
150062306a36Sopenharmony_ci			support.
150162306a36Sopenharmony_ci
150262306a36Sopenharmony_ci	ether=		[HW,NET] Ethernet cards parameters
150362306a36Sopenharmony_ci			This option is obsoleted by the "netdev=" option, which
150462306a36Sopenharmony_ci			has equivalent usage. See its documentation for details.
150562306a36Sopenharmony_ci
150662306a36Sopenharmony_ci	evm=		[EVM]
150762306a36Sopenharmony_ci			Format: { "fix" }
150862306a36Sopenharmony_ci			Permit 'security.evm' to be updated regardless of
150962306a36Sopenharmony_ci			current integrity status.
151062306a36Sopenharmony_ci
151162306a36Sopenharmony_ci	early_page_ext [KNL] Enforces page_ext initialization to earlier
151262306a36Sopenharmony_ci			stages so cover more early boot allocations.
151362306a36Sopenharmony_ci			Please note that as side effect some optimizations
151462306a36Sopenharmony_ci			might be disabled to achieve that (e.g. parallelized
151562306a36Sopenharmony_ci			memory initialization is disabled) so the boot process
151662306a36Sopenharmony_ci			might take longer, especially on systems with a lot of
151762306a36Sopenharmony_ci			memory. Available with CONFIG_PAGE_EXTENSION=y.
151862306a36Sopenharmony_ci
151962306a36Sopenharmony_ci	failslab=
152062306a36Sopenharmony_ci	fail_usercopy=
152162306a36Sopenharmony_ci	fail_page_alloc=
152262306a36Sopenharmony_ci	fail_make_request=[KNL]
152362306a36Sopenharmony_ci			General fault injection mechanism.
152462306a36Sopenharmony_ci			Format: <interval>,<probability>,<space>,<times>
152562306a36Sopenharmony_ci			See also Documentation/fault-injection/.
152662306a36Sopenharmony_ci
152762306a36Sopenharmony_ci	fb_tunnels=	[NET]
152862306a36Sopenharmony_ci			Format: { initns | none }
152962306a36Sopenharmony_ci			See Documentation/admin-guide/sysctl/net.rst for
153062306a36Sopenharmony_ci			fb_tunnels_only_for_init_ns
153162306a36Sopenharmony_ci
153262306a36Sopenharmony_ci	floppy=		[HW]
153362306a36Sopenharmony_ci			See Documentation/admin-guide/blockdev/floppy.rst.
153462306a36Sopenharmony_ci
153562306a36Sopenharmony_ci	force_pal_cache_flush
153662306a36Sopenharmony_ci			[IA-64] Avoid check_sal_cache_flush which may hang on
153762306a36Sopenharmony_ci			buggy SAL_CACHE_FLUSH implementations. Using this
153862306a36Sopenharmony_ci			parameter will force ia64_sal_cache_flush to call
153962306a36Sopenharmony_ci			ia64_pal_cache_flush instead of SAL_CACHE_FLUSH.
154062306a36Sopenharmony_ci
154162306a36Sopenharmony_ci	forcepae	[X86-32]
154262306a36Sopenharmony_ci			Forcefully enable Physical Address Extension (PAE).
154362306a36Sopenharmony_ci			Many Pentium M systems disable PAE but may have a
154462306a36Sopenharmony_ci			functionally usable PAE implementation.
154562306a36Sopenharmony_ci			Warning: use of this parameter will taint the kernel
154662306a36Sopenharmony_ci			and may cause unknown problems.
154762306a36Sopenharmony_ci
154862306a36Sopenharmony_ci	ftrace=[tracer]
154962306a36Sopenharmony_ci			[FTRACE] will set and start the specified tracer
155062306a36Sopenharmony_ci			as early as possible in order to facilitate early
155162306a36Sopenharmony_ci			boot debugging.
155262306a36Sopenharmony_ci
155362306a36Sopenharmony_ci	ftrace_boot_snapshot
155462306a36Sopenharmony_ci			[FTRACE] On boot up, a snapshot will be taken of the
155562306a36Sopenharmony_ci			ftrace ring buffer that can be read at:
155662306a36Sopenharmony_ci			/sys/kernel/tracing/snapshot.
155762306a36Sopenharmony_ci			This is useful if you need tracing information from kernel
155862306a36Sopenharmony_ci			boot up that is likely to be overridden by user space
155962306a36Sopenharmony_ci			start up functionality.
156062306a36Sopenharmony_ci
156162306a36Sopenharmony_ci			Optionally, the snapshot can also be defined for a tracing
156262306a36Sopenharmony_ci			instance that was created by the trace_instance= command
156362306a36Sopenharmony_ci			line parameter.
156462306a36Sopenharmony_ci
156562306a36Sopenharmony_ci			trace_instance=foo,sched_switch ftrace_boot_snapshot=foo
156662306a36Sopenharmony_ci
156762306a36Sopenharmony_ci			The above will cause the "foo" tracing instance to trigger
156862306a36Sopenharmony_ci			a snapshot at the end of boot up.
156962306a36Sopenharmony_ci
157062306a36Sopenharmony_ci	ftrace_dump_on_oops[=orig_cpu]
157162306a36Sopenharmony_ci			[FTRACE] will dump the trace buffers on oops.
157262306a36Sopenharmony_ci			If no parameter is passed, ftrace will dump
157362306a36Sopenharmony_ci			buffers of all CPUs, but if you pass orig_cpu, it will
157462306a36Sopenharmony_ci			dump only the buffer of the CPU that triggered the
157562306a36Sopenharmony_ci			oops.
157662306a36Sopenharmony_ci
157762306a36Sopenharmony_ci	ftrace_filter=[function-list]
157862306a36Sopenharmony_ci			[FTRACE] Limit the functions traced by the function
157962306a36Sopenharmony_ci			tracer at boot up. function-list is a comma-separated
158062306a36Sopenharmony_ci			list of functions. This list can be changed at run
158162306a36Sopenharmony_ci			time by the set_ftrace_filter file in the debugfs
158262306a36Sopenharmony_ci			tracing directory.
158362306a36Sopenharmony_ci
158462306a36Sopenharmony_ci	ftrace_notrace=[function-list]
158562306a36Sopenharmony_ci			[FTRACE] Do not trace the functions specified in
158662306a36Sopenharmony_ci			function-list. This list can be changed at run time
158762306a36Sopenharmony_ci			by the set_ftrace_notrace file in the debugfs
158862306a36Sopenharmony_ci			tracing directory.
158962306a36Sopenharmony_ci
159062306a36Sopenharmony_ci	ftrace_graph_filter=[function-list]
159162306a36Sopenharmony_ci			[FTRACE] Limit the top level callers functions traced
159262306a36Sopenharmony_ci			by the function graph tracer at boot up.
159362306a36Sopenharmony_ci			function-list is a comma-separated list of functions
159462306a36Sopenharmony_ci			that can be changed at run time by the
159562306a36Sopenharmony_ci			set_graph_function file in the debugfs tracing directory.
159662306a36Sopenharmony_ci
159762306a36Sopenharmony_ci	ftrace_graph_notrace=[function-list]
159862306a36Sopenharmony_ci			[FTRACE] Do not trace from the functions specified in
159962306a36Sopenharmony_ci			function-list.  This list is a comma-separated list of
160062306a36Sopenharmony_ci			functions that can be changed at run time by the
160162306a36Sopenharmony_ci			set_graph_notrace file in the debugfs tracing directory.
160262306a36Sopenharmony_ci
160362306a36Sopenharmony_ci	ftrace_graph_max_depth=<uint>
160462306a36Sopenharmony_ci			[FTRACE] Used with the function graph tracer. This is
160562306a36Sopenharmony_ci			the max depth it will trace into a function. This value
160662306a36Sopenharmony_ci			can be changed at run time by the max_graph_depth file
160762306a36Sopenharmony_ci			in the tracefs tracing directory. default: 0 (no limit)
160862306a36Sopenharmony_ci
160962306a36Sopenharmony_ci	fw_devlink=	[KNL] Create device links between consumer and supplier
161062306a36Sopenharmony_ci			devices by scanning the firmware to infer the
161162306a36Sopenharmony_ci			consumer/supplier relationships. This feature is
161262306a36Sopenharmony_ci			especially useful when drivers are loaded as modules as
161362306a36Sopenharmony_ci			it ensures proper ordering of tasks like device probing
161462306a36Sopenharmony_ci			(suppliers first, then consumers), supplier boot state
161562306a36Sopenharmony_ci			clean up (only after all consumers have probed),
161662306a36Sopenharmony_ci			suspend/resume & runtime PM (consumers first, then
161762306a36Sopenharmony_ci			suppliers).
161862306a36Sopenharmony_ci			Format: { off | permissive | on | rpm }
161962306a36Sopenharmony_ci			off --	Don't create device links from firmware info.
162062306a36Sopenharmony_ci			permissive -- Create device links from firmware info
162162306a36Sopenharmony_ci				but use it only for ordering boot state clean
162262306a36Sopenharmony_ci				up (sync_state() calls).
162362306a36Sopenharmony_ci			on -- 	Create device links from firmware info and use it
162462306a36Sopenharmony_ci				to enforce probe and suspend/resume ordering.
162562306a36Sopenharmony_ci			rpm --	Like "on", but also use to order runtime PM.
162662306a36Sopenharmony_ci
162762306a36Sopenharmony_ci	fw_devlink.strict=<bool>
162862306a36Sopenharmony_ci			[KNL] Treat all inferred dependencies as mandatory
162962306a36Sopenharmony_ci			dependencies. This only applies for fw_devlink=on|rpm.
163062306a36Sopenharmony_ci			Format: <bool>
163162306a36Sopenharmony_ci
163262306a36Sopenharmony_ci	fw_devlink.sync_state =
163362306a36Sopenharmony_ci			[KNL] When all devices that could probe have finished
163462306a36Sopenharmony_ci			probing, this parameter controls what to do with
163562306a36Sopenharmony_ci			devices that haven't yet received their sync_state()
163662306a36Sopenharmony_ci			calls.
163762306a36Sopenharmony_ci			Format: { strict | timeout }
163862306a36Sopenharmony_ci			strict -- Default. Continue waiting on consumers to
163962306a36Sopenharmony_ci				probe successfully.
164062306a36Sopenharmony_ci			timeout -- Give up waiting on consumers and call
164162306a36Sopenharmony_ci				sync_state() on any devices that haven't yet
164262306a36Sopenharmony_ci				received their sync_state() calls after
164362306a36Sopenharmony_ci				deferred_probe_timeout has expired or by
164462306a36Sopenharmony_ci				late_initcall() if !CONFIG_MODULES.
164562306a36Sopenharmony_ci
164662306a36Sopenharmony_ci	gamecon.map[2|3]=
164762306a36Sopenharmony_ci			[HW,JOY] Multisystem joystick and NES/SNES/PSX pad
164862306a36Sopenharmony_ci			support via parallel port (up to 5 devices per port)
164962306a36Sopenharmony_ci			Format: <port#>,<pad1>,<pad2>,<pad3>,<pad4>,<pad5>
165062306a36Sopenharmony_ci			See also Documentation/input/devices/joystick-parport.rst
165162306a36Sopenharmony_ci
165262306a36Sopenharmony_ci	gamma=		[HW,DRM]
165362306a36Sopenharmony_ci
165462306a36Sopenharmony_ci	gart_fix_e820=	[X86-64] disable the fix e820 for K8 GART
165562306a36Sopenharmony_ci			Format: off | on
165662306a36Sopenharmony_ci			default: on
165762306a36Sopenharmony_ci
165862306a36Sopenharmony_ci	gather_data_sampling=
165962306a36Sopenharmony_ci			[X86,INTEL] Control the Gather Data Sampling (GDS)
166062306a36Sopenharmony_ci			mitigation.
166162306a36Sopenharmony_ci
166262306a36Sopenharmony_ci			Gather Data Sampling is a hardware vulnerability which
166362306a36Sopenharmony_ci			allows unprivileged speculative access to data which was
166462306a36Sopenharmony_ci			previously stored in vector registers.
166562306a36Sopenharmony_ci
166662306a36Sopenharmony_ci			This issue is mitigated by default in updated microcode.
166762306a36Sopenharmony_ci			The mitigation may have a performance impact but can be
166862306a36Sopenharmony_ci			disabled. On systems without the microcode mitigation
166962306a36Sopenharmony_ci			disabling AVX serves as a mitigation.
167062306a36Sopenharmony_ci
167162306a36Sopenharmony_ci			force:	Disable AVX to mitigate systems without
167262306a36Sopenharmony_ci				microcode mitigation. No effect if the microcode
167362306a36Sopenharmony_ci				mitigation is present. Known to cause crashes in
167462306a36Sopenharmony_ci				userspace with buggy AVX enumeration.
167562306a36Sopenharmony_ci
167662306a36Sopenharmony_ci			off:	Disable GDS mitigation.
167762306a36Sopenharmony_ci
167862306a36Sopenharmony_ci	gcov_persist=	[GCOV] When non-zero (default), profiling data for
167962306a36Sopenharmony_ci			kernel modules is saved and remains accessible via
168062306a36Sopenharmony_ci			debugfs, even when the module is unloaded/reloaded.
168162306a36Sopenharmony_ci			When zero, profiling data is discarded and associated
168262306a36Sopenharmony_ci			debugfs files are removed at module unload time.
168362306a36Sopenharmony_ci
168462306a36Sopenharmony_ci	goldfish	[X86] Enable the goldfish android emulator platform.
168562306a36Sopenharmony_ci			Don't use this when you are not running on the
168662306a36Sopenharmony_ci			android emulator
168762306a36Sopenharmony_ci
168862306a36Sopenharmony_ci	gpio-mockup.gpio_mockup_ranges
168962306a36Sopenharmony_ci			[HW] Sets the ranges of gpiochip of for this device.
169062306a36Sopenharmony_ci			Format: <start1>,<end1>,<start2>,<end2>...
169162306a36Sopenharmony_ci	gpio-mockup.gpio_mockup_named_lines
169262306a36Sopenharmony_ci			[HW] Let the driver know GPIO lines should be named.
169362306a36Sopenharmony_ci
169462306a36Sopenharmony_ci	gpt		[EFI] Forces disk with valid GPT signature but
169562306a36Sopenharmony_ci			invalid Protective MBR to be treated as GPT. If the
169662306a36Sopenharmony_ci			primary GPT is corrupted, it enables the backup/alternate
169762306a36Sopenharmony_ci			GPT to be used instead.
169862306a36Sopenharmony_ci
169962306a36Sopenharmony_ci	grcan.enable0=	[HW] Configuration of physical interface 0. Determines
170062306a36Sopenharmony_ci			the "Enable 0" bit of the configuration register.
170162306a36Sopenharmony_ci			Format: 0 | 1
170262306a36Sopenharmony_ci			Default: 0
170362306a36Sopenharmony_ci	grcan.enable1=	[HW] Configuration of physical interface 1. Determines
170462306a36Sopenharmony_ci			the "Enable 0" bit of the configuration register.
170562306a36Sopenharmony_ci			Format: 0 | 1
170662306a36Sopenharmony_ci			Default: 0
170762306a36Sopenharmony_ci	grcan.select=	[HW] Select which physical interface to use.
170862306a36Sopenharmony_ci			Format: 0 | 1
170962306a36Sopenharmony_ci			Default: 0
171062306a36Sopenharmony_ci	grcan.txsize=	[HW] Sets the size of the tx buffer.
171162306a36Sopenharmony_ci			Format: <unsigned int> such that (txsize & ~0x1fffc0) == 0.
171262306a36Sopenharmony_ci			Default: 1024
171362306a36Sopenharmony_ci	grcan.rxsize=	[HW] Sets the size of the rx buffer.
171462306a36Sopenharmony_ci			Format: <unsigned int> such that (rxsize & ~0x1fffc0) == 0.
171562306a36Sopenharmony_ci			Default: 1024
171662306a36Sopenharmony_ci
171762306a36Sopenharmony_ci	hardened_usercopy=
171862306a36Sopenharmony_ci			[KNL] Under CONFIG_HARDENED_USERCOPY, whether
171962306a36Sopenharmony_ci			hardening is enabled for this boot. Hardened
172062306a36Sopenharmony_ci			usercopy checking is used to protect the kernel
172162306a36Sopenharmony_ci			from reading or writing beyond known memory
172262306a36Sopenharmony_ci			allocation boundaries as a proactive defense
172362306a36Sopenharmony_ci			against bounds-checking flaws in the kernel's
172462306a36Sopenharmony_ci			copy_to_user()/copy_from_user() interface.
172562306a36Sopenharmony_ci		on	Perform hardened usercopy checks (default).
172662306a36Sopenharmony_ci		off	Disable hardened usercopy checks.
172762306a36Sopenharmony_ci
172862306a36Sopenharmony_ci	hardlockup_all_cpu_backtrace=
172962306a36Sopenharmony_ci			[KNL] Should the hard-lockup detector generate
173062306a36Sopenharmony_ci			backtraces on all cpus.
173162306a36Sopenharmony_ci			Format: 0 | 1
173262306a36Sopenharmony_ci
173362306a36Sopenharmony_ci	hashdist=	[KNL,NUMA] Large hashes allocated during boot
173462306a36Sopenharmony_ci			are distributed across NUMA nodes.  Defaults on
173562306a36Sopenharmony_ci			for 64-bit NUMA, off otherwise.
173662306a36Sopenharmony_ci			Format: 0 | 1 (for off | on)
173762306a36Sopenharmony_ci
173862306a36Sopenharmony_ci	hcl=		[IA-64] SGI's Hardware Graph compatibility layer
173962306a36Sopenharmony_ci
174062306a36Sopenharmony_ci	hd=		[EIDE] (E)IDE hard drive subsystem geometry
174162306a36Sopenharmony_ci			Format: <cyl>,<head>,<sect>
174262306a36Sopenharmony_ci
174362306a36Sopenharmony_ci	hest_disable	[ACPI]
174462306a36Sopenharmony_ci			Disable Hardware Error Source Table (HEST) support;
174562306a36Sopenharmony_ci			corresponding firmware-first mode error processing
174662306a36Sopenharmony_ci			logic will be disabled.
174762306a36Sopenharmony_ci
174862306a36Sopenharmony_ci	hibernate=	[HIBERNATION]
174962306a36Sopenharmony_ci		noresume	Don't check if there's a hibernation image
175062306a36Sopenharmony_ci				present during boot.
175162306a36Sopenharmony_ci		nocompress	Don't compress/decompress hibernation images.
175262306a36Sopenharmony_ci		no		Disable hibernation and resume.
175362306a36Sopenharmony_ci		protect_image	Turn on image protection during restoration
175462306a36Sopenharmony_ci				(that will set all pages holding image data
175562306a36Sopenharmony_ci				during restoration read-only).
175662306a36Sopenharmony_ci
175762306a36Sopenharmony_ci	highmem=nn[KMG]	[KNL,BOOT] forces the highmem zone to have an exact
175862306a36Sopenharmony_ci			size of <nn>. This works even on boxes that have no
175962306a36Sopenharmony_ci			highmem otherwise. This also works to reduce highmem
176062306a36Sopenharmony_ci			size on bigger boxes.
176162306a36Sopenharmony_ci
176262306a36Sopenharmony_ci	highres=	[KNL] Enable/disable high resolution timer mode.
176362306a36Sopenharmony_ci			Valid parameters: "on", "off"
176462306a36Sopenharmony_ci			Default: "on"
176562306a36Sopenharmony_ci
176662306a36Sopenharmony_ci	hlt		[BUGS=ARM,SH]
176762306a36Sopenharmony_ci
176862306a36Sopenharmony_ci	hostname=	[KNL] Set the hostname (aka UTS nodename).
176962306a36Sopenharmony_ci			Format: <string>
177062306a36Sopenharmony_ci			This allows setting the system's hostname during early
177162306a36Sopenharmony_ci			startup. This sets the name returned by gethostname.
177262306a36Sopenharmony_ci			Using this parameter to set the hostname makes it
177362306a36Sopenharmony_ci			possible to ensure the hostname is correctly set before
177462306a36Sopenharmony_ci			any userspace processes run, avoiding the possibility
177562306a36Sopenharmony_ci			that a process may call gethostname before the hostname
177662306a36Sopenharmony_ci			has been explicitly set, resulting in the calling
177762306a36Sopenharmony_ci			process getting an incorrect result. The string must
177862306a36Sopenharmony_ci			not exceed the maximum allowed hostname length (usually
177962306a36Sopenharmony_ci			64 characters) and will be truncated otherwise.
178062306a36Sopenharmony_ci
178162306a36Sopenharmony_ci	hpet=		[X86-32,HPET] option to control HPET usage
178262306a36Sopenharmony_ci			Format: { enable (default) | disable | force |
178362306a36Sopenharmony_ci				verbose }
178462306a36Sopenharmony_ci			disable: disable HPET and use PIT instead
178562306a36Sopenharmony_ci			force: allow force enabled of undocumented chips (ICH4,
178662306a36Sopenharmony_ci				VIA, nVidia)
178762306a36Sopenharmony_ci			verbose: show contents of HPET registers during setup
178862306a36Sopenharmony_ci
178962306a36Sopenharmony_ci	hpet_mmap=	[X86, HPET_MMAP] Allow userspace to mmap HPET
179062306a36Sopenharmony_ci			registers.  Default set by CONFIG_HPET_MMAP_DEFAULT.
179162306a36Sopenharmony_ci
179262306a36Sopenharmony_ci	hugepages=	[HW] Number of HugeTLB pages to allocate at boot.
179362306a36Sopenharmony_ci			If this follows hugepagesz (below), it specifies
179462306a36Sopenharmony_ci			the number of pages of hugepagesz to be allocated.
179562306a36Sopenharmony_ci			If this is the first HugeTLB parameter on the command
179662306a36Sopenharmony_ci			line, it specifies the number of pages to allocate for
179762306a36Sopenharmony_ci			the default huge page size. If using node format, the
179862306a36Sopenharmony_ci			number of pages to allocate per-node can be specified.
179962306a36Sopenharmony_ci			See also Documentation/admin-guide/mm/hugetlbpage.rst.
180062306a36Sopenharmony_ci			Format: <integer> or (node format)
180162306a36Sopenharmony_ci				<node>:<integer>[,<node>:<integer>]
180262306a36Sopenharmony_ci
180362306a36Sopenharmony_ci	hugepagesz=
180462306a36Sopenharmony_ci			[HW] The size of the HugeTLB pages.  This is used in
180562306a36Sopenharmony_ci			conjunction with hugepages (above) to allocate huge
180662306a36Sopenharmony_ci			pages of a specific size at boot.  The pair
180762306a36Sopenharmony_ci			hugepagesz=X hugepages=Y can be specified once for
180862306a36Sopenharmony_ci			each supported huge page size. Huge page sizes are
180962306a36Sopenharmony_ci			architecture dependent.  See also
181062306a36Sopenharmony_ci			Documentation/admin-guide/mm/hugetlbpage.rst.
181162306a36Sopenharmony_ci			Format: size[KMG]
181262306a36Sopenharmony_ci
181362306a36Sopenharmony_ci	hugetlb_cma=	[HW,CMA] The size of a CMA area used for allocation
181462306a36Sopenharmony_ci			of gigantic hugepages. Or using node format, the size
181562306a36Sopenharmony_ci			of a CMA area per node can be specified.
181662306a36Sopenharmony_ci			Format: nn[KMGTPE] or (node format)
181762306a36Sopenharmony_ci				<node>:nn[KMGTPE][,<node>:nn[KMGTPE]]
181862306a36Sopenharmony_ci
181962306a36Sopenharmony_ci			Reserve a CMA area of given size and allocate gigantic
182062306a36Sopenharmony_ci			hugepages using the CMA allocator. If enabled, the
182162306a36Sopenharmony_ci			boot-time allocation of gigantic hugepages is skipped.
182262306a36Sopenharmony_ci
182362306a36Sopenharmony_ci	hugetlb_free_vmemmap=
182462306a36Sopenharmony_ci			[KNL] Requires CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP
182562306a36Sopenharmony_ci			enabled.
182662306a36Sopenharmony_ci			Control if HugeTLB Vmemmap Optimization (HVO) is enabled.
182762306a36Sopenharmony_ci			Allows heavy hugetlb users to free up some more
182862306a36Sopenharmony_ci			memory (7 * PAGE_SIZE for each 2MB hugetlb page).
182962306a36Sopenharmony_ci			Format: { on | off (default) }
183062306a36Sopenharmony_ci
183162306a36Sopenharmony_ci			on: enable HVO
183262306a36Sopenharmony_ci			off: disable HVO
183362306a36Sopenharmony_ci
183462306a36Sopenharmony_ci			Built with CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP_DEFAULT_ON=y,
183562306a36Sopenharmony_ci			the default is on.
183662306a36Sopenharmony_ci
183762306a36Sopenharmony_ci			Note that the vmemmap pages may be allocated from the added
183862306a36Sopenharmony_ci			memory block itself when memory_hotplug.memmap_on_memory is
183962306a36Sopenharmony_ci			enabled, those vmemmap pages cannot be optimized even if this
184062306a36Sopenharmony_ci			feature is enabled.  Other vmemmap pages not allocated from
184162306a36Sopenharmony_ci			the added memory block itself do not be affected.
184262306a36Sopenharmony_ci
184362306a36Sopenharmony_ci	hung_task_panic=
184462306a36Sopenharmony_ci			[KNL] Should the hung task detector generate panics.
184562306a36Sopenharmony_ci			Format: 0 | 1
184662306a36Sopenharmony_ci
184762306a36Sopenharmony_ci			A value of 1 instructs the kernel to panic when a
184862306a36Sopenharmony_ci			hung task is detected. The default value is controlled
184962306a36Sopenharmony_ci			by the CONFIG_BOOTPARAM_HUNG_TASK_PANIC build-time
185062306a36Sopenharmony_ci			option. The value selected by this boot parameter can
185162306a36Sopenharmony_ci			be changed later by the kernel.hung_task_panic sysctl.
185262306a36Sopenharmony_ci
185362306a36Sopenharmony_ci	hvc_iucv=	[S390]	Number of z/VM IUCV hypervisor console (HVC)
185462306a36Sopenharmony_ci				terminal devices. Valid values: 0..8
185562306a36Sopenharmony_ci	hvc_iucv_allow=	[S390]	Comma-separated list of z/VM user IDs.
185662306a36Sopenharmony_ci				If specified, z/VM IUCV HVC accepts connections
185762306a36Sopenharmony_ci				from listed z/VM user IDs only.
185862306a36Sopenharmony_ci
185962306a36Sopenharmony_ci	hv_nopvspin	[X86,HYPER_V] Disables the paravirt spinlock optimizations
186062306a36Sopenharmony_ci				      which allow the hypervisor to 'idle' the
186162306a36Sopenharmony_ci				      guest on lock contention.
186262306a36Sopenharmony_ci
186362306a36Sopenharmony_ci	i2c_bus=	[HW]	Override the default board specific I2C bus speed
186462306a36Sopenharmony_ci				or register an additional I2C bus that is not
186562306a36Sopenharmony_ci				registered from board initialization code.
186662306a36Sopenharmony_ci				Format:
186762306a36Sopenharmony_ci				<bus_id>,<clkrate>
186862306a36Sopenharmony_ci
186962306a36Sopenharmony_ci	i8042.debug	[HW] Toggle i8042 debug mode
187062306a36Sopenharmony_ci	i8042.unmask_kbd_data
187162306a36Sopenharmony_ci			[HW] Enable printing of interrupt data from the KBD port
187262306a36Sopenharmony_ci			     (disabled by default, and as a pre-condition
187362306a36Sopenharmony_ci			     requires that i8042.debug=1 be enabled)
187462306a36Sopenharmony_ci	i8042.direct	[HW] Put keyboard port into non-translated mode
187562306a36Sopenharmony_ci	i8042.dumbkbd	[HW] Pretend that controller can only read data from
187662306a36Sopenharmony_ci			     keyboard and cannot control its state
187762306a36Sopenharmony_ci			     (Don't attempt to blink the leds)
187862306a36Sopenharmony_ci	i8042.noaux	[HW] Don't check for auxiliary (== mouse) port
187962306a36Sopenharmony_ci	i8042.nokbd	[HW] Don't check/create keyboard port
188062306a36Sopenharmony_ci	i8042.noloop	[HW] Disable the AUX Loopback command while probing
188162306a36Sopenharmony_ci			     for the AUX port
188262306a36Sopenharmony_ci	i8042.nomux	[HW] Don't check presence of an active multiplexing
188362306a36Sopenharmony_ci			     controller
188462306a36Sopenharmony_ci	i8042.nopnp	[HW] Don't use ACPIPnP / PnPBIOS to discover KBD/AUX
188562306a36Sopenharmony_ci			     controllers
188662306a36Sopenharmony_ci	i8042.notimeout	[HW] Ignore timeout condition signalled by controller
188762306a36Sopenharmony_ci	i8042.reset	[HW] Reset the controller during init, cleanup and
188862306a36Sopenharmony_ci			     suspend-to-ram transitions, only during s2r
188962306a36Sopenharmony_ci			     transitions, or never reset
189062306a36Sopenharmony_ci			Format: { 1 | Y | y | 0 | N | n }
189162306a36Sopenharmony_ci			1, Y, y: always reset controller
189262306a36Sopenharmony_ci			0, N, n: don't ever reset controller
189362306a36Sopenharmony_ci			Default: only on s2r transitions on x86; most other
189462306a36Sopenharmony_ci			architectures force reset to be always executed
189562306a36Sopenharmony_ci	i8042.unlock	[HW] Unlock (ignore) the keylock
189662306a36Sopenharmony_ci	i8042.kbdreset	[HW] Reset device connected to KBD port
189762306a36Sopenharmony_ci	i8042.probe_defer
189862306a36Sopenharmony_ci			[HW] Allow deferred probing upon i8042 probe errors
189962306a36Sopenharmony_ci
190062306a36Sopenharmony_ci	i810=		[HW,DRM]
190162306a36Sopenharmony_ci
190262306a36Sopenharmony_ci	i915.invert_brightness=
190362306a36Sopenharmony_ci			[DRM] Invert the sense of the variable that is used to
190462306a36Sopenharmony_ci			set the brightness of the panel backlight. Normally a
190562306a36Sopenharmony_ci			brightness value of 0 indicates backlight switched off,
190662306a36Sopenharmony_ci			and the maximum of the brightness value sets the backlight
190762306a36Sopenharmony_ci			to maximum brightness. If this parameter is set to 0
190862306a36Sopenharmony_ci			(default) and the machine requires it, or this parameter
190962306a36Sopenharmony_ci			is set to 1, a brightness value of 0 sets the backlight
191062306a36Sopenharmony_ci			to maximum brightness, and the maximum of the brightness
191162306a36Sopenharmony_ci			value switches the backlight off.
191262306a36Sopenharmony_ci			-1 -- never invert brightness
191362306a36Sopenharmony_ci			 0 -- machine default
191462306a36Sopenharmony_ci			 1 -- force brightness inversion
191562306a36Sopenharmony_ci
191662306a36Sopenharmony_ci	icn=		[HW,ISDN]
191762306a36Sopenharmony_ci			Format: <io>[,<membase>[,<icn_id>[,<icn_id2>]]]
191862306a36Sopenharmony_ci
191962306a36Sopenharmony_ci
192062306a36Sopenharmony_ci	idle=		[X86]
192162306a36Sopenharmony_ci			Format: idle=poll, idle=halt, idle=nomwait
192262306a36Sopenharmony_ci			Poll forces a polling idle loop that can slightly
192362306a36Sopenharmony_ci			improve the performance of waking up a idle CPU, but
192462306a36Sopenharmony_ci			will use a lot of power and make the system run hot.
192562306a36Sopenharmony_ci			Not recommended.
192662306a36Sopenharmony_ci			idle=halt: Halt is forced to be used for CPU idle.
192762306a36Sopenharmony_ci			In such case C2/C3 won't be used again.
192862306a36Sopenharmony_ci			idle=nomwait: Disable mwait for CPU C-states
192962306a36Sopenharmony_ci
193062306a36Sopenharmony_ci	idxd.sva=	[HW]
193162306a36Sopenharmony_ci			Format: <bool>
193262306a36Sopenharmony_ci			Allow force disabling of Shared Virtual Memory (SVA)
193362306a36Sopenharmony_ci			support for the idxd driver. By default it is set to
193462306a36Sopenharmony_ci			true (1).
193562306a36Sopenharmony_ci
193662306a36Sopenharmony_ci	idxd.tc_override= [HW]
193762306a36Sopenharmony_ci			Format: <bool>
193862306a36Sopenharmony_ci			Allow override of default traffic class configuration
193962306a36Sopenharmony_ci			for the device. By default it is set to false (0).
194062306a36Sopenharmony_ci
194162306a36Sopenharmony_ci	ieee754=	[MIPS] Select IEEE Std 754 conformance mode
194262306a36Sopenharmony_ci			Format: { strict | legacy | 2008 | relaxed }
194362306a36Sopenharmony_ci			Default: strict
194462306a36Sopenharmony_ci
194562306a36Sopenharmony_ci			Choose which programs will be accepted for execution
194662306a36Sopenharmony_ci			based on the IEEE 754 NaN encoding(s) supported by
194762306a36Sopenharmony_ci			the FPU and the NaN encoding requested with the value
194862306a36Sopenharmony_ci			of an ELF file header flag individually set by each
194962306a36Sopenharmony_ci			binary.  Hardware implementations are permitted to
195062306a36Sopenharmony_ci			support either or both of the legacy and the 2008 NaN
195162306a36Sopenharmony_ci			encoding mode.
195262306a36Sopenharmony_ci
195362306a36Sopenharmony_ci			Available settings are as follows:
195462306a36Sopenharmony_ci			strict	accept binaries that request a NaN encoding
195562306a36Sopenharmony_ci				supported by the FPU
195662306a36Sopenharmony_ci			legacy	only accept legacy-NaN binaries, if supported
195762306a36Sopenharmony_ci				by the FPU
195862306a36Sopenharmony_ci			2008	only accept 2008-NaN binaries, if supported
195962306a36Sopenharmony_ci				by the FPU
196062306a36Sopenharmony_ci			relaxed	accept any binaries regardless of whether
196162306a36Sopenharmony_ci				supported by the FPU
196262306a36Sopenharmony_ci
196362306a36Sopenharmony_ci			The FPU emulator is always able to support both NaN
196462306a36Sopenharmony_ci			encodings, so if no FPU hardware is present or it has
196562306a36Sopenharmony_ci			been disabled with 'nofpu', then the settings of
196662306a36Sopenharmony_ci			'legacy' and '2008' strap the emulator accordingly,
196762306a36Sopenharmony_ci			'relaxed' straps the emulator for both legacy-NaN and
196862306a36Sopenharmony_ci			2008-NaN, whereas 'strict' enables legacy-NaN only on
196962306a36Sopenharmony_ci			legacy processors and both NaN encodings on MIPS32 or
197062306a36Sopenharmony_ci			MIPS64 CPUs.
197162306a36Sopenharmony_ci
197262306a36Sopenharmony_ci			The setting for ABS.fmt/NEG.fmt instruction execution
197362306a36Sopenharmony_ci			mode generally follows that for the NaN encoding,
197462306a36Sopenharmony_ci			except where unsupported by hardware.
197562306a36Sopenharmony_ci
197662306a36Sopenharmony_ci	ignore_loglevel	[KNL]
197762306a36Sopenharmony_ci			Ignore loglevel setting - this will print /all/
197862306a36Sopenharmony_ci			kernel messages to the console. Useful for debugging.
197962306a36Sopenharmony_ci			We also add it as printk module parameter, so users
198062306a36Sopenharmony_ci			could change it dynamically, usually by
198162306a36Sopenharmony_ci			/sys/module/printk/parameters/ignore_loglevel.
198262306a36Sopenharmony_ci
198362306a36Sopenharmony_ci	ignore_rlimit_data
198462306a36Sopenharmony_ci			Ignore RLIMIT_DATA setting for data mappings,
198562306a36Sopenharmony_ci			print warning at first misuse.  Can be changed via
198662306a36Sopenharmony_ci			/sys/module/kernel/parameters/ignore_rlimit_data.
198762306a36Sopenharmony_ci
198862306a36Sopenharmony_ci	ihash_entries=	[KNL]
198962306a36Sopenharmony_ci			Set number of hash buckets for inode cache.
199062306a36Sopenharmony_ci
199162306a36Sopenharmony_ci	ima_appraise=	[IMA] appraise integrity measurements
199262306a36Sopenharmony_ci			Format: { "off" | "enforce" | "fix" | "log" }
199362306a36Sopenharmony_ci			default: "enforce"
199462306a36Sopenharmony_ci
199562306a36Sopenharmony_ci	ima_appraise_tcb [IMA] Deprecated.  Use ima_policy= instead.
199662306a36Sopenharmony_ci			The builtin appraise policy appraises all files
199762306a36Sopenharmony_ci			owned by uid=0.
199862306a36Sopenharmony_ci
199962306a36Sopenharmony_ci	ima_canonical_fmt [IMA]
200062306a36Sopenharmony_ci			Use the canonical format for the binary runtime
200162306a36Sopenharmony_ci			measurements, instead of host native format.
200262306a36Sopenharmony_ci
200362306a36Sopenharmony_ci	ima_hash=	[IMA]
200462306a36Sopenharmony_ci			Format: { md5 | sha1 | rmd160 | sha256 | sha384
200562306a36Sopenharmony_ci				   | sha512 | ... }
200662306a36Sopenharmony_ci			default: "sha1"
200762306a36Sopenharmony_ci
200862306a36Sopenharmony_ci			The list of supported hash algorithms is defined
200962306a36Sopenharmony_ci			in crypto/hash_info.h.
201062306a36Sopenharmony_ci
201162306a36Sopenharmony_ci	ima_policy=	[IMA]
201262306a36Sopenharmony_ci			The builtin policies to load during IMA setup.
201362306a36Sopenharmony_ci			Format: "tcb | appraise_tcb | secure_boot |
201462306a36Sopenharmony_ci				 fail_securely | critical_data"
201562306a36Sopenharmony_ci
201662306a36Sopenharmony_ci			The "tcb" policy measures all programs exec'd, files
201762306a36Sopenharmony_ci			mmap'd for exec, and all files opened with the read
201862306a36Sopenharmony_ci			mode bit set by either the effective uid (euid=0) or
201962306a36Sopenharmony_ci			uid=0.
202062306a36Sopenharmony_ci
202162306a36Sopenharmony_ci			The "appraise_tcb" policy appraises the integrity of
202262306a36Sopenharmony_ci			all files owned by root.
202362306a36Sopenharmony_ci
202462306a36Sopenharmony_ci			The "secure_boot" policy appraises the integrity
202562306a36Sopenharmony_ci			of files (eg. kexec kernel image, kernel modules,
202662306a36Sopenharmony_ci			firmware, policy, etc) based on file signatures.
202762306a36Sopenharmony_ci
202862306a36Sopenharmony_ci			The "fail_securely" policy forces file signature
202962306a36Sopenharmony_ci			verification failure also on privileged mounted
203062306a36Sopenharmony_ci			filesystems with the SB_I_UNVERIFIABLE_SIGNATURE
203162306a36Sopenharmony_ci			flag.
203262306a36Sopenharmony_ci
203362306a36Sopenharmony_ci			The "critical_data" policy measures kernel integrity
203462306a36Sopenharmony_ci			critical data.
203562306a36Sopenharmony_ci
203662306a36Sopenharmony_ci	ima_tcb		[IMA] Deprecated.  Use ima_policy= instead.
203762306a36Sopenharmony_ci			Load a policy which meets the needs of the Trusted
203862306a36Sopenharmony_ci			Computing Base.  This means IMA will measure all
203962306a36Sopenharmony_ci			programs exec'd, files mmap'd for exec, and all files
204062306a36Sopenharmony_ci			opened for read by uid=0.
204162306a36Sopenharmony_ci
204262306a36Sopenharmony_ci	ima_template=	[IMA]
204362306a36Sopenharmony_ci			Select one of defined IMA measurements template formats.
204462306a36Sopenharmony_ci			Formats: { "ima" | "ima-ng" | "ima-ngv2" | "ima-sig" |
204562306a36Sopenharmony_ci				   "ima-sigv2" }
204662306a36Sopenharmony_ci			Default: "ima-ng"
204762306a36Sopenharmony_ci
204862306a36Sopenharmony_ci	ima_template_fmt=
204962306a36Sopenharmony_ci			[IMA] Define a custom template format.
205062306a36Sopenharmony_ci			Format: { "field1|...|fieldN" }
205162306a36Sopenharmony_ci
205262306a36Sopenharmony_ci	ima.ahash_minsize= [IMA] Minimum file size for asynchronous hash usage
205362306a36Sopenharmony_ci			Format: <min_file_size>
205462306a36Sopenharmony_ci			Set the minimal file size for using asynchronous hash.
205562306a36Sopenharmony_ci			If left unspecified, ahash usage is disabled.
205662306a36Sopenharmony_ci
205762306a36Sopenharmony_ci			ahash performance varies for different data sizes on
205862306a36Sopenharmony_ci			different crypto accelerators. This option can be used
205962306a36Sopenharmony_ci			to achieve the best performance for a particular HW.
206062306a36Sopenharmony_ci
206162306a36Sopenharmony_ci	ima.ahash_bufsize= [IMA] Asynchronous hash buffer size
206262306a36Sopenharmony_ci			Format: <bufsize>
206362306a36Sopenharmony_ci			Set hashing buffer size. Default: 4k.
206462306a36Sopenharmony_ci
206562306a36Sopenharmony_ci			ahash performance varies for different chunk sizes on
206662306a36Sopenharmony_ci			different crypto accelerators. This option can be used
206762306a36Sopenharmony_ci			to achieve best performance for particular HW.
206862306a36Sopenharmony_ci
206962306a36Sopenharmony_ci	init=		[KNL]
207062306a36Sopenharmony_ci			Format: <full_path>
207162306a36Sopenharmony_ci			Run specified binary instead of /sbin/init as init
207262306a36Sopenharmony_ci			process.
207362306a36Sopenharmony_ci
207462306a36Sopenharmony_ci	initcall_debug	[KNL] Trace initcalls as they are executed.  Useful
207562306a36Sopenharmony_ci			for working out where the kernel is dying during
207662306a36Sopenharmony_ci			startup.
207762306a36Sopenharmony_ci
207862306a36Sopenharmony_ci	initcall_blacklist=  [KNL] Do not execute a comma-separated list of
207962306a36Sopenharmony_ci			initcall functions.  Useful for debugging built-in
208062306a36Sopenharmony_ci			modules and initcalls.
208162306a36Sopenharmony_ci
208262306a36Sopenharmony_ci	initramfs_async= [KNL]
208362306a36Sopenharmony_ci			Format: <bool>
208462306a36Sopenharmony_ci			Default: 1
208562306a36Sopenharmony_ci			This parameter controls whether the initramfs
208662306a36Sopenharmony_ci			image is unpacked asynchronously, concurrently
208762306a36Sopenharmony_ci			with devices being probed and
208862306a36Sopenharmony_ci			initialized. This should normally just work,
208962306a36Sopenharmony_ci			but as a debugging aid, one can get the
209062306a36Sopenharmony_ci			historical behaviour of the initramfs
209162306a36Sopenharmony_ci			unpacking being completed before device_ and
209262306a36Sopenharmony_ci			late_ initcalls.
209362306a36Sopenharmony_ci
209462306a36Sopenharmony_ci	initrd=		[BOOT] Specify the location of the initial ramdisk
209562306a36Sopenharmony_ci
209662306a36Sopenharmony_ci	initrdmem=	[KNL] Specify a physical address and size from which to
209762306a36Sopenharmony_ci			load the initrd. If an initrd is compiled in or
209862306a36Sopenharmony_ci			specified in the bootparams, it takes priority over this
209962306a36Sopenharmony_ci			setting.
210062306a36Sopenharmony_ci			Format: ss[KMG],nn[KMG]
210162306a36Sopenharmony_ci			Default is 0, 0
210262306a36Sopenharmony_ci
210362306a36Sopenharmony_ci	init_on_alloc=	[MM] Fill newly allocated pages and heap objects with
210462306a36Sopenharmony_ci			zeroes.
210562306a36Sopenharmony_ci			Format: 0 | 1
210662306a36Sopenharmony_ci			Default set by CONFIG_INIT_ON_ALLOC_DEFAULT_ON.
210762306a36Sopenharmony_ci
210862306a36Sopenharmony_ci	init_on_free=	[MM] Fill freed pages and heap objects with zeroes.
210962306a36Sopenharmony_ci			Format: 0 | 1
211062306a36Sopenharmony_ci			Default set by CONFIG_INIT_ON_FREE_DEFAULT_ON.
211162306a36Sopenharmony_ci
211262306a36Sopenharmony_ci	init_pkru=	[X86] Specify the default memory protection keys rights
211362306a36Sopenharmony_ci			register contents for all processes.  0x55555554 by
211462306a36Sopenharmony_ci			default (disallow access to all but pkey 0).  Can
211562306a36Sopenharmony_ci			override in debugfs after boot.
211662306a36Sopenharmony_ci
211762306a36Sopenharmony_ci	inport.irq=	[HW] Inport (ATI XL and Microsoft) busmouse driver
211862306a36Sopenharmony_ci			Format: <irq>
211962306a36Sopenharmony_ci
212062306a36Sopenharmony_ci	int_pln_enable	[X86] Enable power limit notification interrupt
212162306a36Sopenharmony_ci
212262306a36Sopenharmony_ci	integrity_audit=[IMA]
212362306a36Sopenharmony_ci			Format: { "0" | "1" }
212462306a36Sopenharmony_ci			0 -- basic integrity auditing messages. (Default)
212562306a36Sopenharmony_ci			1 -- additional integrity auditing messages.
212662306a36Sopenharmony_ci
212762306a36Sopenharmony_ci	intel_iommu=	[DMAR] Intel IOMMU driver (DMAR) option
212862306a36Sopenharmony_ci		on
212962306a36Sopenharmony_ci			Enable intel iommu driver.
213062306a36Sopenharmony_ci		off
213162306a36Sopenharmony_ci			Disable intel iommu driver.
213262306a36Sopenharmony_ci		igfx_off [Default Off]
213362306a36Sopenharmony_ci			By default, gfx is mapped as normal device. If a gfx
213462306a36Sopenharmony_ci			device has a dedicated DMAR unit, the DMAR unit is
213562306a36Sopenharmony_ci			bypassed by not enabling DMAR with this option. In
213662306a36Sopenharmony_ci			this case, gfx device will use physical address for
213762306a36Sopenharmony_ci			DMA.
213862306a36Sopenharmony_ci		strict [Default Off]
213962306a36Sopenharmony_ci			Deprecated, equivalent to iommu.strict=1.
214062306a36Sopenharmony_ci		sp_off [Default Off]
214162306a36Sopenharmony_ci			By default, super page will be supported if Intel IOMMU
214262306a36Sopenharmony_ci			has the capability. With this option, super page will
214362306a36Sopenharmony_ci			not be supported.
214462306a36Sopenharmony_ci		sm_on
214562306a36Sopenharmony_ci			Enable the Intel IOMMU scalable mode if the hardware
214662306a36Sopenharmony_ci			advertises that it has support for the scalable mode
214762306a36Sopenharmony_ci			translation.
214862306a36Sopenharmony_ci		sm_off
214962306a36Sopenharmony_ci			Disallow use of the Intel IOMMU scalable mode.
215062306a36Sopenharmony_ci		tboot_noforce [Default Off]
215162306a36Sopenharmony_ci			Do not force the Intel IOMMU enabled under tboot.
215262306a36Sopenharmony_ci			By default, tboot will force Intel IOMMU on, which
215362306a36Sopenharmony_ci			could harm performance of some high-throughput
215462306a36Sopenharmony_ci			devices like 40GBit network cards, even if identity
215562306a36Sopenharmony_ci			mapping is enabled.
215662306a36Sopenharmony_ci			Note that using this option lowers the security
215762306a36Sopenharmony_ci			provided by tboot because it makes the system
215862306a36Sopenharmony_ci			vulnerable to DMA attacks.
215962306a36Sopenharmony_ci
216062306a36Sopenharmony_ci	intel_idle.max_cstate=	[KNL,HW,ACPI,X86]
216162306a36Sopenharmony_ci			0	disables intel_idle and fall back on acpi_idle.
216262306a36Sopenharmony_ci			1 to 9	specify maximum depth of C-state.
216362306a36Sopenharmony_ci
216462306a36Sopenharmony_ci	intel_pstate=	[X86]
216562306a36Sopenharmony_ci			disable
216662306a36Sopenharmony_ci			  Do not enable intel_pstate as the default
216762306a36Sopenharmony_ci			  scaling driver for the supported processors
216862306a36Sopenharmony_ci                        active
216962306a36Sopenharmony_ci                          Use intel_pstate driver to bypass the scaling
217062306a36Sopenharmony_ci                          governors layer of cpufreq and provides it own
217162306a36Sopenharmony_ci                          algorithms for p-state selection. There are two
217262306a36Sopenharmony_ci                          P-state selection algorithms provided by
217362306a36Sopenharmony_ci                          intel_pstate in the active mode: powersave and
217462306a36Sopenharmony_ci                          performance.  The way they both operate depends
217562306a36Sopenharmony_ci                          on whether or not the hardware managed P-states
217662306a36Sopenharmony_ci                          (HWP) feature has been enabled in the processor
217762306a36Sopenharmony_ci                          and possibly on the processor model.
217862306a36Sopenharmony_ci			passive
217962306a36Sopenharmony_ci			  Use intel_pstate as a scaling driver, but configure it
218062306a36Sopenharmony_ci			  to work with generic cpufreq governors (instead of
218162306a36Sopenharmony_ci			  enabling its internal governor).  This mode cannot be
218262306a36Sopenharmony_ci			  used along with the hardware-managed P-states (HWP)
218362306a36Sopenharmony_ci			  feature.
218462306a36Sopenharmony_ci			force
218562306a36Sopenharmony_ci			  Enable intel_pstate on systems that prohibit it by default
218662306a36Sopenharmony_ci			  in favor of acpi-cpufreq. Forcing the intel_pstate driver
218762306a36Sopenharmony_ci			  instead of acpi-cpufreq may disable platform features, such
218862306a36Sopenharmony_ci			  as thermal controls and power capping, that rely on ACPI
218962306a36Sopenharmony_ci			  P-States information being indicated to OSPM and therefore
219062306a36Sopenharmony_ci			  should be used with caution. This option does not work with
219162306a36Sopenharmony_ci			  processors that aren't supported by the intel_pstate driver
219262306a36Sopenharmony_ci			  or on platforms that use pcc-cpufreq instead of acpi-cpufreq.
219362306a36Sopenharmony_ci			no_hwp
219462306a36Sopenharmony_ci			  Do not enable hardware P state control (HWP)
219562306a36Sopenharmony_ci			  if available.
219662306a36Sopenharmony_ci			hwp_only
219762306a36Sopenharmony_ci			  Only load intel_pstate on systems which support
219862306a36Sopenharmony_ci			  hardware P state control (HWP) if available.
219962306a36Sopenharmony_ci			support_acpi_ppc
220062306a36Sopenharmony_ci			  Enforce ACPI _PPC performance limits. If the Fixed ACPI
220162306a36Sopenharmony_ci			  Description Table, specifies preferred power management
220262306a36Sopenharmony_ci			  profile as "Enterprise Server" or "Performance Server",
220362306a36Sopenharmony_ci			  then this feature is turned on by default.
220462306a36Sopenharmony_ci			per_cpu_perf_limits
220562306a36Sopenharmony_ci			  Allow per-logical-CPU P-State performance control limits using
220662306a36Sopenharmony_ci			  cpufreq sysfs interface
220762306a36Sopenharmony_ci
220862306a36Sopenharmony_ci	intremap=	[X86-64, Intel-IOMMU]
220962306a36Sopenharmony_ci			on	enable Interrupt Remapping (default)
221062306a36Sopenharmony_ci			off	disable Interrupt Remapping
221162306a36Sopenharmony_ci			nosid	disable Source ID checking
221262306a36Sopenharmony_ci			no_x2apic_optout
221362306a36Sopenharmony_ci				BIOS x2APIC opt-out request will be ignored
221462306a36Sopenharmony_ci			nopost	disable Interrupt Posting
221562306a36Sopenharmony_ci
221662306a36Sopenharmony_ci	iomem=		Disable strict checking of access to MMIO memory
221762306a36Sopenharmony_ci		strict	regions from userspace.
221862306a36Sopenharmony_ci		relaxed
221962306a36Sopenharmony_ci
222062306a36Sopenharmony_ci	iommu=		[X86]
222162306a36Sopenharmony_ci		off
222262306a36Sopenharmony_ci		force
222362306a36Sopenharmony_ci		noforce
222462306a36Sopenharmony_ci		biomerge
222562306a36Sopenharmony_ci		panic
222662306a36Sopenharmony_ci		nopanic
222762306a36Sopenharmony_ci		merge
222862306a36Sopenharmony_ci		nomerge
222962306a36Sopenharmony_ci		soft
223062306a36Sopenharmony_ci		pt		[X86]
223162306a36Sopenharmony_ci		nopt		[X86]
223262306a36Sopenharmony_ci		nobypass	[PPC/POWERNV]
223362306a36Sopenharmony_ci			Disable IOMMU bypass, using IOMMU for PCI devices.
223462306a36Sopenharmony_ci
223562306a36Sopenharmony_ci	iommu.forcedac=	[ARM64, X86] Control IOVA allocation for PCI devices.
223662306a36Sopenharmony_ci			Format: { "0" | "1" }
223762306a36Sopenharmony_ci			0 - Try to allocate a 32-bit DMA address first, before
223862306a36Sopenharmony_ci			  falling back to the full range if needed.
223962306a36Sopenharmony_ci			1 - Allocate directly from the full usable range,
224062306a36Sopenharmony_ci			  forcing Dual Address Cycle for PCI cards supporting
224162306a36Sopenharmony_ci			  greater than 32-bit addressing.
224262306a36Sopenharmony_ci
224362306a36Sopenharmony_ci	iommu.strict=	[ARM64, X86] Configure TLB invalidation behaviour
224462306a36Sopenharmony_ci			Format: { "0" | "1" }
224562306a36Sopenharmony_ci			0 - Lazy mode.
224662306a36Sopenharmony_ci			  Request that DMA unmap operations use deferred
224762306a36Sopenharmony_ci			  invalidation of hardware TLBs, for increased
224862306a36Sopenharmony_ci			  throughput at the cost of reduced device isolation.
224962306a36Sopenharmony_ci			  Will fall back to strict mode if not supported by
225062306a36Sopenharmony_ci			  the relevant IOMMU driver.
225162306a36Sopenharmony_ci			1 - Strict mode.
225262306a36Sopenharmony_ci			  DMA unmap operations invalidate IOMMU hardware TLBs
225362306a36Sopenharmony_ci			  synchronously.
225462306a36Sopenharmony_ci			unset - Use value of CONFIG_IOMMU_DEFAULT_DMA_{LAZY,STRICT}.
225562306a36Sopenharmony_ci			Note: on x86, strict mode specified via one of the
225662306a36Sopenharmony_ci			legacy driver-specific options takes precedence.
225762306a36Sopenharmony_ci
225862306a36Sopenharmony_ci	iommu.passthrough=
225962306a36Sopenharmony_ci			[ARM64, X86] Configure DMA to bypass the IOMMU by default.
226062306a36Sopenharmony_ci			Format: { "0" | "1" }
226162306a36Sopenharmony_ci			0 - Use IOMMU translation for DMA.
226262306a36Sopenharmony_ci			1 - Bypass the IOMMU for DMA.
226362306a36Sopenharmony_ci			unset - Use value of CONFIG_IOMMU_DEFAULT_PASSTHROUGH.
226462306a36Sopenharmony_ci
226562306a36Sopenharmony_ci	io7=		[HW] IO7 for Marvel-based Alpha systems
226662306a36Sopenharmony_ci			See comment before marvel_specify_io7 in
226762306a36Sopenharmony_ci			arch/alpha/kernel/core_marvel.c.
226862306a36Sopenharmony_ci
226962306a36Sopenharmony_ci	io_delay=	[X86] I/O delay method
227062306a36Sopenharmony_ci		0x80
227162306a36Sopenharmony_ci			Standard port 0x80 based delay
227262306a36Sopenharmony_ci		0xed
227362306a36Sopenharmony_ci			Alternate port 0xed based delay (needed on some systems)
227462306a36Sopenharmony_ci		udelay
227562306a36Sopenharmony_ci			Simple two microseconds delay
227662306a36Sopenharmony_ci		none
227762306a36Sopenharmony_ci			No delay
227862306a36Sopenharmony_ci
227962306a36Sopenharmony_ci	ip=		[IP_PNP]
228062306a36Sopenharmony_ci			See Documentation/admin-guide/nfs/nfsroot.rst.
228162306a36Sopenharmony_ci
228262306a36Sopenharmony_ci	ipcmni_extend	[KNL] Extend the maximum number of unique System V
228362306a36Sopenharmony_ci			IPC identifiers from 32,768 to 16,777,216.
228462306a36Sopenharmony_ci
228562306a36Sopenharmony_ci	irqaffinity=	[SMP] Set the default irq affinity mask
228662306a36Sopenharmony_ci			The argument is a cpu list, as described above.
228762306a36Sopenharmony_ci
228862306a36Sopenharmony_ci	irqchip.gicv2_force_probe=
228962306a36Sopenharmony_ci			[ARM, ARM64]
229062306a36Sopenharmony_ci			Format: <bool>
229162306a36Sopenharmony_ci			Force the kernel to look for the second 4kB page
229262306a36Sopenharmony_ci			of a GICv2 controller even if the memory range
229362306a36Sopenharmony_ci			exposed by the device tree is too small.
229462306a36Sopenharmony_ci
229562306a36Sopenharmony_ci	irqchip.gicv3_nolpi=
229662306a36Sopenharmony_ci			[ARM, ARM64]
229762306a36Sopenharmony_ci			Force the kernel to ignore the availability of
229862306a36Sopenharmony_ci			LPIs (and by consequence ITSs). Intended for system
229962306a36Sopenharmony_ci			that use the kernel as a bootloader, and thus want
230062306a36Sopenharmony_ci			to let secondary kernels in charge of setting up
230162306a36Sopenharmony_ci			LPIs.
230262306a36Sopenharmony_ci
230362306a36Sopenharmony_ci	irqchip.gicv3_pseudo_nmi= [ARM64]
230462306a36Sopenharmony_ci			Enables support for pseudo-NMIs in the kernel. This
230562306a36Sopenharmony_ci			requires the kernel to be built with
230662306a36Sopenharmony_ci			CONFIG_ARM64_PSEUDO_NMI.
230762306a36Sopenharmony_ci
230862306a36Sopenharmony_ci	irqfixup	[HW]
230962306a36Sopenharmony_ci			When an interrupt is not handled search all handlers
231062306a36Sopenharmony_ci			for it. Intended to get systems with badly broken
231162306a36Sopenharmony_ci			firmware running.
231262306a36Sopenharmony_ci
231362306a36Sopenharmony_ci	irqpoll		[HW]
231462306a36Sopenharmony_ci			When an interrupt is not handled search all handlers
231562306a36Sopenharmony_ci			for it. Also check all handlers each timer
231662306a36Sopenharmony_ci			interrupt. Intended to get systems with badly broken
231762306a36Sopenharmony_ci			firmware running.
231862306a36Sopenharmony_ci
231962306a36Sopenharmony_ci	isapnp=		[ISAPNP]
232062306a36Sopenharmony_ci			Format: <RDP>,<reset>,<pci_scan>,<verbosity>
232162306a36Sopenharmony_ci
232262306a36Sopenharmony_ci	isolcpus=	[KNL,SMP,ISOL] Isolate a given set of CPUs from disturbance.
232362306a36Sopenharmony_ci			[Deprecated - use cpusets instead]
232462306a36Sopenharmony_ci			Format: [flag-list,]<cpu-list>
232562306a36Sopenharmony_ci
232662306a36Sopenharmony_ci			Specify one or more CPUs to isolate from disturbances
232762306a36Sopenharmony_ci			specified in the flag list (default: domain):
232862306a36Sopenharmony_ci
232962306a36Sopenharmony_ci			nohz
233062306a36Sopenharmony_ci			  Disable the tick when a single task runs.
233162306a36Sopenharmony_ci
233262306a36Sopenharmony_ci			  A residual 1Hz tick is offloaded to workqueues, which you
233362306a36Sopenharmony_ci			  need to affine to housekeeping through the global
233462306a36Sopenharmony_ci			  workqueue's affinity configured via the
233562306a36Sopenharmony_ci			  /sys/devices/virtual/workqueue/cpumask sysfs file, or
233662306a36Sopenharmony_ci			  by using the 'domain' flag described below.
233762306a36Sopenharmony_ci
233862306a36Sopenharmony_ci			  NOTE: by default the global workqueue runs on all CPUs,
233962306a36Sopenharmony_ci			  so to protect individual CPUs the 'cpumask' file has to
234062306a36Sopenharmony_ci			  be configured manually after bootup.
234162306a36Sopenharmony_ci
234262306a36Sopenharmony_ci			domain
234362306a36Sopenharmony_ci			  Isolate from the general SMP balancing and scheduling
234462306a36Sopenharmony_ci			  algorithms. Note that performing domain isolation this way
234562306a36Sopenharmony_ci			  is irreversible: it's not possible to bring back a CPU to
234662306a36Sopenharmony_ci			  the domains once isolated through isolcpus. It's strongly
234762306a36Sopenharmony_ci			  advised to use cpusets instead to disable scheduler load
234862306a36Sopenharmony_ci			  balancing through the "cpuset.sched_load_balance" file.
234962306a36Sopenharmony_ci			  It offers a much more flexible interface where CPUs can
235062306a36Sopenharmony_ci			  move in and out of an isolated set anytime.
235162306a36Sopenharmony_ci
235262306a36Sopenharmony_ci			  You can move a process onto or off an "isolated" CPU via
235362306a36Sopenharmony_ci			  the CPU affinity syscalls or cpuset.
235462306a36Sopenharmony_ci			  <cpu number> begins at 0 and the maximum value is
235562306a36Sopenharmony_ci			  "number of CPUs in system - 1".
235662306a36Sopenharmony_ci
235762306a36Sopenharmony_ci			managed_irq
235862306a36Sopenharmony_ci
235962306a36Sopenharmony_ci			  Isolate from being targeted by managed interrupts
236062306a36Sopenharmony_ci			  which have an interrupt mask containing isolated
236162306a36Sopenharmony_ci			  CPUs. The affinity of managed interrupts is
236262306a36Sopenharmony_ci			  handled by the kernel and cannot be changed via
236362306a36Sopenharmony_ci			  the /proc/irq/* interfaces.
236462306a36Sopenharmony_ci
236562306a36Sopenharmony_ci			  This isolation is best effort and only effective
236662306a36Sopenharmony_ci			  if the automatically assigned interrupt mask of a
236762306a36Sopenharmony_ci			  device queue contains isolated and housekeeping
236862306a36Sopenharmony_ci			  CPUs. If housekeeping CPUs are online then such
236962306a36Sopenharmony_ci			  interrupts are directed to the housekeeping CPU
237062306a36Sopenharmony_ci			  so that IO submitted on the housekeeping CPU
237162306a36Sopenharmony_ci			  cannot disturb the isolated CPU.
237262306a36Sopenharmony_ci
237362306a36Sopenharmony_ci			  If a queue's affinity mask contains only isolated
237462306a36Sopenharmony_ci			  CPUs then this parameter has no effect on the
237562306a36Sopenharmony_ci			  interrupt routing decision, though interrupts are
237662306a36Sopenharmony_ci			  only delivered when tasks running on those
237762306a36Sopenharmony_ci			  isolated CPUs submit IO. IO submitted on
237862306a36Sopenharmony_ci			  housekeeping CPUs has no influence on those
237962306a36Sopenharmony_ci			  queues.
238062306a36Sopenharmony_ci
238162306a36Sopenharmony_ci			The format of <cpu-list> is described above.
238262306a36Sopenharmony_ci
238362306a36Sopenharmony_ci	iucv=		[HW,NET]
238462306a36Sopenharmony_ci
238562306a36Sopenharmony_ci	ivrs_ioapic	[HW,X86-64]
238662306a36Sopenharmony_ci			Provide an override to the IOAPIC-ID<->DEVICE-ID
238762306a36Sopenharmony_ci			mapping provided in the IVRS ACPI table.
238862306a36Sopenharmony_ci			By default, PCI segment is 0, and can be omitted.
238962306a36Sopenharmony_ci
239062306a36Sopenharmony_ci			For example, to map IOAPIC-ID decimal 10 to
239162306a36Sopenharmony_ci			PCI segment 0x1 and PCI device 00:14.0,
239262306a36Sopenharmony_ci			write the parameter as:
239362306a36Sopenharmony_ci				ivrs_ioapic=10@0001:00:14.0
239462306a36Sopenharmony_ci
239562306a36Sopenharmony_ci			Deprecated formats:
239662306a36Sopenharmony_ci			* To map IOAPIC-ID decimal 10 to PCI device 00:14.0
239762306a36Sopenharmony_ci			  write the parameter as:
239862306a36Sopenharmony_ci				ivrs_ioapic[10]=00:14.0
239962306a36Sopenharmony_ci			* To map IOAPIC-ID decimal 10 to PCI segment 0x1 and
240062306a36Sopenharmony_ci			  PCI device 00:14.0 write the parameter as:
240162306a36Sopenharmony_ci				ivrs_ioapic[10]=0001:00:14.0
240262306a36Sopenharmony_ci
240362306a36Sopenharmony_ci	ivrs_hpet	[HW,X86-64]
240462306a36Sopenharmony_ci			Provide an override to the HPET-ID<->DEVICE-ID
240562306a36Sopenharmony_ci			mapping provided in the IVRS ACPI table.
240662306a36Sopenharmony_ci			By default, PCI segment is 0, and can be omitted.
240762306a36Sopenharmony_ci
240862306a36Sopenharmony_ci			For example, to map HPET-ID decimal 10 to
240962306a36Sopenharmony_ci			PCI segment 0x1 and PCI device 00:14.0,
241062306a36Sopenharmony_ci			write the parameter as:
241162306a36Sopenharmony_ci				ivrs_hpet=10@0001:00:14.0
241262306a36Sopenharmony_ci
241362306a36Sopenharmony_ci			Deprecated formats:
241462306a36Sopenharmony_ci			* To map HPET-ID decimal 0 to PCI device 00:14.0
241562306a36Sopenharmony_ci			  write the parameter as:
241662306a36Sopenharmony_ci				ivrs_hpet[0]=00:14.0
241762306a36Sopenharmony_ci			* To map HPET-ID decimal 10 to PCI segment 0x1 and
241862306a36Sopenharmony_ci			  PCI device 00:14.0 write the parameter as:
241962306a36Sopenharmony_ci				ivrs_ioapic[10]=0001:00:14.0
242062306a36Sopenharmony_ci
242162306a36Sopenharmony_ci	ivrs_acpihid	[HW,X86-64]
242262306a36Sopenharmony_ci			Provide an override to the ACPI-HID:UID<->DEVICE-ID
242362306a36Sopenharmony_ci			mapping provided in the IVRS ACPI table.
242462306a36Sopenharmony_ci			By default, PCI segment is 0, and can be omitted.
242562306a36Sopenharmony_ci
242662306a36Sopenharmony_ci			For example, to map UART-HID:UID AMD0020:0 to
242762306a36Sopenharmony_ci			PCI segment 0x1 and PCI device ID 00:14.5,
242862306a36Sopenharmony_ci			write the parameter as:
242962306a36Sopenharmony_ci				ivrs_acpihid=AMD0020:0@0001:00:14.5
243062306a36Sopenharmony_ci
243162306a36Sopenharmony_ci			Deprecated formats:
243262306a36Sopenharmony_ci			* To map UART-HID:UID AMD0020:0 to PCI segment is 0,
243362306a36Sopenharmony_ci			  PCI device ID 00:14.5, write the parameter as:
243462306a36Sopenharmony_ci				ivrs_acpihid[00:14.5]=AMD0020:0
243562306a36Sopenharmony_ci			* To map UART-HID:UID AMD0020:0 to PCI segment 0x1 and
243662306a36Sopenharmony_ci			  PCI device ID 00:14.5, write the parameter as:
243762306a36Sopenharmony_ci				ivrs_acpihid[0001:00:14.5]=AMD0020:0
243862306a36Sopenharmony_ci
243962306a36Sopenharmony_ci	js=		[HW,JOY] Analog joystick
244062306a36Sopenharmony_ci			See Documentation/input/joydev/joystick.rst.
244162306a36Sopenharmony_ci
244262306a36Sopenharmony_ci	kasan_multi_shot
244362306a36Sopenharmony_ci			[KNL] Enforce KASAN (Kernel Address Sanitizer) to print
244462306a36Sopenharmony_ci			report on every invalid memory access. Without this
244562306a36Sopenharmony_ci			parameter KASAN will print report only for the first
244662306a36Sopenharmony_ci			invalid access.
244762306a36Sopenharmony_ci
244862306a36Sopenharmony_ci	keep_bootcon	[KNL]
244962306a36Sopenharmony_ci			Do not unregister boot console at start. This is only
245062306a36Sopenharmony_ci			useful for debugging when something happens in the window
245162306a36Sopenharmony_ci			between unregistering the boot console and initializing
245262306a36Sopenharmony_ci			the real console.
245362306a36Sopenharmony_ci
245462306a36Sopenharmony_ci	keepinitrd	[HW,ARM]
245562306a36Sopenharmony_ci
245662306a36Sopenharmony_ci	kernelcore=	[KNL,X86,IA-64,PPC]
245762306a36Sopenharmony_ci			Format: nn[KMGTPE] | nn% | "mirror"
245862306a36Sopenharmony_ci			This parameter specifies the amount of memory usable by
245962306a36Sopenharmony_ci			the kernel for non-movable allocations.  The requested
246062306a36Sopenharmony_ci			amount is spread evenly throughout all nodes in the
246162306a36Sopenharmony_ci			system as ZONE_NORMAL.  The remaining memory is used for
246262306a36Sopenharmony_ci			movable memory in its own zone, ZONE_MOVABLE.  In the
246362306a36Sopenharmony_ci			event, a node is too small to have both ZONE_NORMAL and
246462306a36Sopenharmony_ci			ZONE_MOVABLE, kernelcore memory will take priority and
246562306a36Sopenharmony_ci			other nodes will have a larger ZONE_MOVABLE.
246662306a36Sopenharmony_ci
246762306a36Sopenharmony_ci			ZONE_MOVABLE is used for the allocation of pages that
246862306a36Sopenharmony_ci			may be reclaimed or moved by the page migration
246962306a36Sopenharmony_ci			subsystem.  Note that allocations like PTEs-from-HighMem
247062306a36Sopenharmony_ci			still use the HighMem zone if it exists, and the Normal
247162306a36Sopenharmony_ci			zone if it does not.
247262306a36Sopenharmony_ci
247362306a36Sopenharmony_ci			It is possible to specify the exact amount of memory in
247462306a36Sopenharmony_ci			the form of "nn[KMGTPE]", a percentage of total system
247562306a36Sopenharmony_ci			memory in the form of "nn%", or "mirror".  If "mirror"
247662306a36Sopenharmony_ci			option is specified, mirrored (reliable) memory is used
247762306a36Sopenharmony_ci			for non-movable allocations and remaining memory is used
247862306a36Sopenharmony_ci			for Movable pages.  "nn[KMGTPE]", "nn%", and "mirror"
247962306a36Sopenharmony_ci			are exclusive, so you cannot specify multiple forms.
248062306a36Sopenharmony_ci
248162306a36Sopenharmony_ci	kgdbdbgp=	[KGDB,HW] kgdb over EHCI usb debug port.
248262306a36Sopenharmony_ci			Format: <Controller#>[,poll interval]
248362306a36Sopenharmony_ci			The controller # is the number of the ehci usb debug
248462306a36Sopenharmony_ci			port as it is probed via PCI.  The poll interval is
248562306a36Sopenharmony_ci			optional and is the number seconds in between
248662306a36Sopenharmony_ci			each poll cycle to the debug port in case you need
248762306a36Sopenharmony_ci			the functionality for interrupting the kernel with
248862306a36Sopenharmony_ci			gdb or control-c on the dbgp connection.  When
248962306a36Sopenharmony_ci			not using this parameter you use sysrq-g to break into
249062306a36Sopenharmony_ci			the kernel debugger.
249162306a36Sopenharmony_ci
249262306a36Sopenharmony_ci	kgdboc=		[KGDB,HW] kgdb over consoles.
249362306a36Sopenharmony_ci			Requires a tty driver that supports console polling,
249462306a36Sopenharmony_ci			or a supported polling keyboard driver (non-usb).
249562306a36Sopenharmony_ci			 Serial only format: <serial_device>[,baud]
249662306a36Sopenharmony_ci			 keyboard only format: kbd
249762306a36Sopenharmony_ci			 keyboard and serial format: kbd,<serial_device>[,baud]
249862306a36Sopenharmony_ci			Optional Kernel mode setting:
249962306a36Sopenharmony_ci			 kms, kbd format: kms,kbd
250062306a36Sopenharmony_ci			 kms, kbd and serial format: kms,kbd,<ser_dev>[,baud]
250162306a36Sopenharmony_ci
250262306a36Sopenharmony_ci	kgdboc_earlycon=	[KGDB,HW]
250362306a36Sopenharmony_ci			If the boot console provides the ability to read
250462306a36Sopenharmony_ci			characters and can work in polling mode, you can use
250562306a36Sopenharmony_ci			this parameter to tell kgdb to use it as a backend
250662306a36Sopenharmony_ci			until the normal console is registered. Intended to
250762306a36Sopenharmony_ci			be used together with the kgdboc parameter which
250862306a36Sopenharmony_ci			specifies the normal console to transition to.
250962306a36Sopenharmony_ci
251062306a36Sopenharmony_ci			The name of the early console should be specified
251162306a36Sopenharmony_ci			as the value of this parameter. Note that the name of
251262306a36Sopenharmony_ci			the early console might be different than the tty
251362306a36Sopenharmony_ci			name passed to kgdboc. It's OK to leave the value
251462306a36Sopenharmony_ci			blank and the first boot console that implements
251562306a36Sopenharmony_ci			read() will be picked.
251662306a36Sopenharmony_ci
251762306a36Sopenharmony_ci	kgdbwait	[KGDB] Stop kernel execution and enter the
251862306a36Sopenharmony_ci			kernel debugger at the earliest opportunity.
251962306a36Sopenharmony_ci
252062306a36Sopenharmony_ci	kmac=		[MIPS] Korina ethernet MAC address.
252162306a36Sopenharmony_ci			Configure the RouterBoard 532 series on-chip
252262306a36Sopenharmony_ci			Ethernet adapter MAC address.
252362306a36Sopenharmony_ci
252462306a36Sopenharmony_ci	kmemleak=	[KNL] Boot-time kmemleak enable/disable
252562306a36Sopenharmony_ci			Valid arguments: on, off
252662306a36Sopenharmony_ci			Default: on
252762306a36Sopenharmony_ci			Built with CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y,
252862306a36Sopenharmony_ci			the default is off.
252962306a36Sopenharmony_ci
253062306a36Sopenharmony_ci	kprobe_event=[probe-list]
253162306a36Sopenharmony_ci			[FTRACE] Add kprobe events and enable at boot time.
253262306a36Sopenharmony_ci			The probe-list is a semicolon delimited list of probe
253362306a36Sopenharmony_ci			definitions. Each definition is same as kprobe_events
253462306a36Sopenharmony_ci			interface, but the parameters are comma delimited.
253562306a36Sopenharmony_ci			For example, to add a kprobe event on vfs_read with
253662306a36Sopenharmony_ci			arg1 and arg2, add to the command line;
253762306a36Sopenharmony_ci
253862306a36Sopenharmony_ci			      kprobe_event=p,vfs_read,$arg1,$arg2
253962306a36Sopenharmony_ci
254062306a36Sopenharmony_ci			See also Documentation/trace/kprobetrace.rst "Kernel
254162306a36Sopenharmony_ci			Boot Parameter" section.
254262306a36Sopenharmony_ci
254362306a36Sopenharmony_ci	kpti=		[ARM64] Control page table isolation of user
254462306a36Sopenharmony_ci			and kernel address spaces.
254562306a36Sopenharmony_ci			Default: enabled on cores which need mitigation.
254662306a36Sopenharmony_ci			0: force disabled
254762306a36Sopenharmony_ci			1: force enabled
254862306a36Sopenharmony_ci
254962306a36Sopenharmony_ci	kunit.enable=	[KUNIT] Enable executing KUnit tests. Requires
255062306a36Sopenharmony_ci			CONFIG_KUNIT to be set to be fully enabled. The
255162306a36Sopenharmony_ci			default value can be overridden via
255262306a36Sopenharmony_ci			KUNIT_DEFAULT_ENABLED.
255362306a36Sopenharmony_ci			Default is 1 (enabled)
255462306a36Sopenharmony_ci
255562306a36Sopenharmony_ci	kvm.ignore_msrs=[KVM] Ignore guest accesses to unhandled MSRs.
255662306a36Sopenharmony_ci			Default is 0 (don't ignore, but inject #GP)
255762306a36Sopenharmony_ci
255862306a36Sopenharmony_ci	kvm.eager_page_split=
255962306a36Sopenharmony_ci			[KVM,X86] Controls whether or not KVM will try to
256062306a36Sopenharmony_ci			proactively split all huge pages during dirty logging.
256162306a36Sopenharmony_ci			Eager page splitting reduces interruptions to vCPU
256262306a36Sopenharmony_ci			execution by eliminating the write-protection faults
256362306a36Sopenharmony_ci			and MMU lock contention that would otherwise be
256462306a36Sopenharmony_ci			required to split huge pages lazily.
256562306a36Sopenharmony_ci
256662306a36Sopenharmony_ci			VM workloads that rarely perform writes or that write
256762306a36Sopenharmony_ci			only to a small region of VM memory may benefit from
256862306a36Sopenharmony_ci			disabling eager page splitting to allow huge pages to
256962306a36Sopenharmony_ci			still be used for reads.
257062306a36Sopenharmony_ci
257162306a36Sopenharmony_ci			The behavior of eager page splitting depends on whether
257262306a36Sopenharmony_ci			KVM_DIRTY_LOG_INITIALLY_SET is enabled or disabled. If
257362306a36Sopenharmony_ci			disabled, all huge pages in a memslot will be eagerly
257462306a36Sopenharmony_ci			split when dirty logging is enabled on that memslot. If
257562306a36Sopenharmony_ci			enabled, eager page splitting will be performed during
257662306a36Sopenharmony_ci			the KVM_CLEAR_DIRTY ioctl, and only for the pages being
257762306a36Sopenharmony_ci			cleared.
257862306a36Sopenharmony_ci
257962306a36Sopenharmony_ci			Eager page splitting is only supported when kvm.tdp_mmu=Y.
258062306a36Sopenharmony_ci
258162306a36Sopenharmony_ci			Default is Y (on).
258262306a36Sopenharmony_ci
258362306a36Sopenharmony_ci	kvm.enable_vmware_backdoor=[KVM] Support VMware backdoor PV interface.
258462306a36Sopenharmony_ci				   Default is false (don't support).
258562306a36Sopenharmony_ci
258662306a36Sopenharmony_ci	kvm.nx_huge_pages=
258762306a36Sopenharmony_ci			[KVM] Controls the software workaround for the
258862306a36Sopenharmony_ci			X86_BUG_ITLB_MULTIHIT bug.
258962306a36Sopenharmony_ci			force	: Always deploy workaround.
259062306a36Sopenharmony_ci			off	: Never deploy workaround.
259162306a36Sopenharmony_ci			auto    : Deploy workaround based on the presence of
259262306a36Sopenharmony_ci				  X86_BUG_ITLB_MULTIHIT.
259362306a36Sopenharmony_ci
259462306a36Sopenharmony_ci			Default is 'auto'.
259562306a36Sopenharmony_ci
259662306a36Sopenharmony_ci			If the software workaround is enabled for the host,
259762306a36Sopenharmony_ci			guests do need not to enable it for nested guests.
259862306a36Sopenharmony_ci
259962306a36Sopenharmony_ci	kvm.nx_huge_pages_recovery_ratio=
260062306a36Sopenharmony_ci			[KVM] Controls how many 4KiB pages are periodically zapped
260162306a36Sopenharmony_ci			back to huge pages.  0 disables the recovery, otherwise if
260262306a36Sopenharmony_ci			the value is N KVM will zap 1/Nth of the 4KiB pages every
260362306a36Sopenharmony_ci			period (see below).  The default is 60.
260462306a36Sopenharmony_ci
260562306a36Sopenharmony_ci	kvm.nx_huge_pages_recovery_period_ms=
260662306a36Sopenharmony_ci			[KVM] Controls the time period at which KVM zaps 4KiB pages
260762306a36Sopenharmony_ci			back to huge pages. If the value is a non-zero N, KVM will
260862306a36Sopenharmony_ci			zap a portion (see ratio above) of the pages every N msecs.
260962306a36Sopenharmony_ci			If the value is 0 (the default), KVM will pick a period based
261062306a36Sopenharmony_ci			on the ratio, such that a page is zapped after 1 hour on average.
261162306a36Sopenharmony_ci
261262306a36Sopenharmony_ci	kvm-amd.nested=	[KVM,AMD] Control nested virtualization feature in
261362306a36Sopenharmony_ci			KVM/SVM. Default is 1 (enabled).
261462306a36Sopenharmony_ci
261562306a36Sopenharmony_ci	kvm-amd.npt=	[KVM,AMD] Control KVM's use of Nested Page Tables,
261662306a36Sopenharmony_ci			a.k.a. Two-Dimensional Page Tables. Default is 1
261762306a36Sopenharmony_ci			(enabled). Disable by KVM if hardware lacks support
261862306a36Sopenharmony_ci			for NPT.
261962306a36Sopenharmony_ci
262062306a36Sopenharmony_ci	kvm-arm.mode=
262162306a36Sopenharmony_ci			[KVM,ARM] Select one of KVM/arm64's modes of operation.
262262306a36Sopenharmony_ci
262362306a36Sopenharmony_ci			none: Forcefully disable KVM.
262462306a36Sopenharmony_ci
262562306a36Sopenharmony_ci			nvhe: Standard nVHE-based mode, without support for
262662306a36Sopenharmony_ci			      protected guests.
262762306a36Sopenharmony_ci
262862306a36Sopenharmony_ci			protected: nVHE-based mode with support for guests whose
262962306a36Sopenharmony_ci				   state is kept private from the host.
263062306a36Sopenharmony_ci
263162306a36Sopenharmony_ci			nested: VHE-based mode with support for nested
263262306a36Sopenharmony_ci				virtualization. Requires at least ARMv8.3
263362306a36Sopenharmony_ci				hardware.
263462306a36Sopenharmony_ci
263562306a36Sopenharmony_ci			Defaults to VHE/nVHE based on hardware support. Setting
263662306a36Sopenharmony_ci			mode to "protected" will disable kexec and hibernation
263762306a36Sopenharmony_ci			for the host. "nested" is experimental and should be
263862306a36Sopenharmony_ci			used with extreme caution.
263962306a36Sopenharmony_ci
264062306a36Sopenharmony_ci	kvm-arm.vgic_v3_group0_trap=
264162306a36Sopenharmony_ci			[KVM,ARM] Trap guest accesses to GICv3 group-0
264262306a36Sopenharmony_ci			system registers
264362306a36Sopenharmony_ci
264462306a36Sopenharmony_ci	kvm-arm.vgic_v3_group1_trap=
264562306a36Sopenharmony_ci			[KVM,ARM] Trap guest accesses to GICv3 group-1
264662306a36Sopenharmony_ci			system registers
264762306a36Sopenharmony_ci
264862306a36Sopenharmony_ci	kvm-arm.vgic_v3_common_trap=
264962306a36Sopenharmony_ci			[KVM,ARM] Trap guest accesses to GICv3 common
265062306a36Sopenharmony_ci			system registers
265162306a36Sopenharmony_ci
265262306a36Sopenharmony_ci	kvm-arm.vgic_v4_enable=
265362306a36Sopenharmony_ci			[KVM,ARM] Allow use of GICv4 for direct injection of
265462306a36Sopenharmony_ci			LPIs.
265562306a36Sopenharmony_ci
265662306a36Sopenharmony_ci	kvm_cma_resv_ratio=n [PPC]
265762306a36Sopenharmony_ci			Reserves given percentage from system memory area for
265862306a36Sopenharmony_ci			contiguous memory allocation for KVM hash pagetable
265962306a36Sopenharmony_ci			allocation.
266062306a36Sopenharmony_ci			By default it reserves 5% of total system memory.
266162306a36Sopenharmony_ci			Format: <integer>
266262306a36Sopenharmony_ci			Default: 5
266362306a36Sopenharmony_ci
266462306a36Sopenharmony_ci	kvm-intel.ept=	[KVM,Intel] Control KVM's use of Extended Page Tables,
266562306a36Sopenharmony_ci			a.k.a. Two-Dimensional Page Tables.  Default is 1
266662306a36Sopenharmony_ci			(enabled). Disable by KVM if hardware lacks support
266762306a36Sopenharmony_ci			for EPT.
266862306a36Sopenharmony_ci
266962306a36Sopenharmony_ci	kvm-intel.emulate_invalid_guest_state=
267062306a36Sopenharmony_ci			[KVM,Intel] Control whether to emulate invalid guest
267162306a36Sopenharmony_ci			state. Ignored if kvm-intel.enable_unrestricted_guest=1,
267262306a36Sopenharmony_ci			as guest state is never invalid for unrestricted
267362306a36Sopenharmony_ci			guests. This param doesn't apply to nested guests (L2),
267462306a36Sopenharmony_ci			as KVM never emulates invalid L2 guest state.
267562306a36Sopenharmony_ci			Default is 1 (enabled).
267662306a36Sopenharmony_ci
267762306a36Sopenharmony_ci	kvm-intel.flexpriority=
267862306a36Sopenharmony_ci			[KVM,Intel] Control KVM's use of FlexPriority feature
267962306a36Sopenharmony_ci			(TPR shadow). Default is 1 (enabled). Disable by KVM if
268062306a36Sopenharmony_ci			hardware lacks support for it.
268162306a36Sopenharmony_ci
268262306a36Sopenharmony_ci	kvm-intel.nested=
268362306a36Sopenharmony_ci			[KVM,Intel] Control nested virtualization feature in
268462306a36Sopenharmony_ci			KVM/VMX. Default is 1 (enabled).
268562306a36Sopenharmony_ci
268662306a36Sopenharmony_ci	kvm-intel.unrestricted_guest=
268762306a36Sopenharmony_ci			[KVM,Intel] Control KVM's use of unrestricted guest
268862306a36Sopenharmony_ci			feature (virtualized real and unpaged mode). Default
268962306a36Sopenharmony_ci			is 1 (enabled). Disable by KVM if EPT is disabled or
269062306a36Sopenharmony_ci			hardware lacks support for it.
269162306a36Sopenharmony_ci
269262306a36Sopenharmony_ci	kvm-intel.vmentry_l1d_flush=[KVM,Intel] Mitigation for L1 Terminal Fault
269362306a36Sopenharmony_ci			CVE-2018-3620.
269462306a36Sopenharmony_ci
269562306a36Sopenharmony_ci			Valid arguments: never, cond, always
269662306a36Sopenharmony_ci
269762306a36Sopenharmony_ci			always: L1D cache flush on every VMENTER.
269862306a36Sopenharmony_ci			cond:	Flush L1D on VMENTER only when the code between
269962306a36Sopenharmony_ci				VMEXIT and VMENTER can leak host memory.
270062306a36Sopenharmony_ci			never:	Disables the mitigation
270162306a36Sopenharmony_ci
270262306a36Sopenharmony_ci			Default is cond (do L1 cache flush in specific instances)
270362306a36Sopenharmony_ci
270462306a36Sopenharmony_ci	kvm-intel.vpid=	[KVM,Intel] Control KVM's use of Virtual Processor
270562306a36Sopenharmony_ci			Identification feature (tagged TLBs). Default is 1
270662306a36Sopenharmony_ci			(enabled). Disable by KVM if hardware lacks support
270762306a36Sopenharmony_ci			for it.
270862306a36Sopenharmony_ci
270962306a36Sopenharmony_ci	l1d_flush=	[X86,INTEL]
271062306a36Sopenharmony_ci			Control mitigation for L1D based snooping vulnerability.
271162306a36Sopenharmony_ci
271262306a36Sopenharmony_ci			Certain CPUs are vulnerable to an exploit against CPU
271362306a36Sopenharmony_ci			internal buffers which can forward information to a
271462306a36Sopenharmony_ci			disclosure gadget under certain conditions.
271562306a36Sopenharmony_ci
271662306a36Sopenharmony_ci			In vulnerable processors, the speculatively
271762306a36Sopenharmony_ci			forwarded data can be used in a cache side channel
271862306a36Sopenharmony_ci			attack, to access data to which the attacker does
271962306a36Sopenharmony_ci			not have direct access.
272062306a36Sopenharmony_ci
272162306a36Sopenharmony_ci			This parameter controls the mitigation. The
272262306a36Sopenharmony_ci			options are:
272362306a36Sopenharmony_ci
272462306a36Sopenharmony_ci			on         - enable the interface for the mitigation
272562306a36Sopenharmony_ci
272662306a36Sopenharmony_ci	l1tf=           [X86] Control mitigation of the L1TF vulnerability on
272762306a36Sopenharmony_ci			      affected CPUs
272862306a36Sopenharmony_ci
272962306a36Sopenharmony_ci			The kernel PTE inversion protection is unconditionally
273062306a36Sopenharmony_ci			enabled and cannot be disabled.
273162306a36Sopenharmony_ci
273262306a36Sopenharmony_ci			full
273362306a36Sopenharmony_ci				Provides all available mitigations for the
273462306a36Sopenharmony_ci				L1TF vulnerability. Disables SMT and
273562306a36Sopenharmony_ci				enables all mitigations in the
273662306a36Sopenharmony_ci				hypervisors, i.e. unconditional L1D flush.
273762306a36Sopenharmony_ci
273862306a36Sopenharmony_ci				SMT control and L1D flush control via the
273962306a36Sopenharmony_ci				sysfs interface is still possible after
274062306a36Sopenharmony_ci				boot.  Hypervisors will issue a warning
274162306a36Sopenharmony_ci				when the first VM is started in a
274262306a36Sopenharmony_ci				potentially insecure configuration,
274362306a36Sopenharmony_ci				i.e. SMT enabled or L1D flush disabled.
274462306a36Sopenharmony_ci
274562306a36Sopenharmony_ci			full,force
274662306a36Sopenharmony_ci				Same as 'full', but disables SMT and L1D
274762306a36Sopenharmony_ci				flush runtime control. Implies the
274862306a36Sopenharmony_ci				'nosmt=force' command line option.
274962306a36Sopenharmony_ci				(i.e. sysfs control of SMT is disabled.)
275062306a36Sopenharmony_ci
275162306a36Sopenharmony_ci			flush
275262306a36Sopenharmony_ci				Leaves SMT enabled and enables the default
275362306a36Sopenharmony_ci				hypervisor mitigation, i.e. conditional
275462306a36Sopenharmony_ci				L1D flush.
275562306a36Sopenharmony_ci
275662306a36Sopenharmony_ci				SMT control and L1D flush control via the
275762306a36Sopenharmony_ci				sysfs interface is still possible after
275862306a36Sopenharmony_ci				boot.  Hypervisors will issue a warning
275962306a36Sopenharmony_ci				when the first VM is started in a
276062306a36Sopenharmony_ci				potentially insecure configuration,
276162306a36Sopenharmony_ci				i.e. SMT enabled or L1D flush disabled.
276262306a36Sopenharmony_ci
276362306a36Sopenharmony_ci			flush,nosmt
276462306a36Sopenharmony_ci
276562306a36Sopenharmony_ci				Disables SMT and enables the default
276662306a36Sopenharmony_ci				hypervisor mitigation.
276762306a36Sopenharmony_ci
276862306a36Sopenharmony_ci				SMT control and L1D flush control via the
276962306a36Sopenharmony_ci				sysfs interface is still possible after
277062306a36Sopenharmony_ci				boot.  Hypervisors will issue a warning
277162306a36Sopenharmony_ci				when the first VM is started in a
277262306a36Sopenharmony_ci				potentially insecure configuration,
277362306a36Sopenharmony_ci				i.e. SMT enabled or L1D flush disabled.
277462306a36Sopenharmony_ci
277562306a36Sopenharmony_ci			flush,nowarn
277662306a36Sopenharmony_ci				Same as 'flush', but hypervisors will not
277762306a36Sopenharmony_ci				warn when a VM is started in a potentially
277862306a36Sopenharmony_ci				insecure configuration.
277962306a36Sopenharmony_ci
278062306a36Sopenharmony_ci			off
278162306a36Sopenharmony_ci				Disables hypervisor mitigations and doesn't
278262306a36Sopenharmony_ci				emit any warnings.
278362306a36Sopenharmony_ci				It also drops the swap size and available
278462306a36Sopenharmony_ci				RAM limit restriction on both hypervisor and
278562306a36Sopenharmony_ci				bare metal.
278662306a36Sopenharmony_ci
278762306a36Sopenharmony_ci			Default is 'flush'.
278862306a36Sopenharmony_ci
278962306a36Sopenharmony_ci			For details see: Documentation/admin-guide/hw-vuln/l1tf.rst
279062306a36Sopenharmony_ci
279162306a36Sopenharmony_ci	l2cr=		[PPC]
279262306a36Sopenharmony_ci
279362306a36Sopenharmony_ci	l3cr=		[PPC]
279462306a36Sopenharmony_ci
279562306a36Sopenharmony_ci	lapic		[X86-32,APIC] Enable the local APIC even if BIOS
279662306a36Sopenharmony_ci			disabled it.
279762306a36Sopenharmony_ci
279862306a36Sopenharmony_ci	lapic=		[X86,APIC] Do not use TSC deadline
279962306a36Sopenharmony_ci			value for LAPIC timer one-shot implementation. Default
280062306a36Sopenharmony_ci			back to the programmable timer unit in the LAPIC.
280162306a36Sopenharmony_ci			Format: notscdeadline
280262306a36Sopenharmony_ci
280362306a36Sopenharmony_ci	lapic_timer_c2_ok	[X86,APIC] trust the local apic timer
280462306a36Sopenharmony_ci			in C2 power state.
280562306a36Sopenharmony_ci
280662306a36Sopenharmony_ci	libata.dma=	[LIBATA] DMA control
280762306a36Sopenharmony_ci			libata.dma=0	  Disable all PATA and SATA DMA
280862306a36Sopenharmony_ci			libata.dma=1	  PATA and SATA Disk DMA only
280962306a36Sopenharmony_ci			libata.dma=2	  ATAPI (CDROM) DMA only
281062306a36Sopenharmony_ci			libata.dma=4	  Compact Flash DMA only
281162306a36Sopenharmony_ci			Combinations also work, so libata.dma=3 enables DMA
281262306a36Sopenharmony_ci			for disks and CDROMs, but not CFs.
281362306a36Sopenharmony_ci
281462306a36Sopenharmony_ci	libata.ignore_hpa=	[LIBATA] Ignore HPA limit
281562306a36Sopenharmony_ci			libata.ignore_hpa=0	  keep BIOS limits (default)
281662306a36Sopenharmony_ci			libata.ignore_hpa=1	  ignore limits, using full disk
281762306a36Sopenharmony_ci
281862306a36Sopenharmony_ci	libata.noacpi	[LIBATA] Disables use of ACPI in libata suspend/resume
281962306a36Sopenharmony_ci			when set.
282062306a36Sopenharmony_ci			Format: <int>
282162306a36Sopenharmony_ci
282262306a36Sopenharmony_ci	libata.force=	[LIBATA] Force configurations.  The format is a comma-
282362306a36Sopenharmony_ci			separated list of "[ID:]VAL" where ID is PORT[.DEVICE].
282462306a36Sopenharmony_ci			PORT and DEVICE are decimal numbers matching port, link
282562306a36Sopenharmony_ci			or device.  Basically, it matches the ATA ID string
282662306a36Sopenharmony_ci			printed on console by libata.  If the whole ID part is
282762306a36Sopenharmony_ci			omitted, the last PORT and DEVICE values are used.  If
282862306a36Sopenharmony_ci			ID hasn't been specified yet, the configuration applies
282962306a36Sopenharmony_ci			to all ports, links and devices.
283062306a36Sopenharmony_ci
283162306a36Sopenharmony_ci			If only DEVICE is omitted, the parameter applies to
283262306a36Sopenharmony_ci			the port and all links and devices behind it.  DEVICE
283362306a36Sopenharmony_ci			number of 0 either selects the first device or the
283462306a36Sopenharmony_ci			first fan-out link behind PMP device.  It does not
283562306a36Sopenharmony_ci			select the host link.  DEVICE number of 15 selects the
283662306a36Sopenharmony_ci			host link and device attached to it.
283762306a36Sopenharmony_ci
283862306a36Sopenharmony_ci			The VAL specifies the configuration to force.  As long
283962306a36Sopenharmony_ci			as there is no ambiguity, shortcut notation is allowed.
284062306a36Sopenharmony_ci			For example, both 1.5 and 1.5G would work for 1.5Gbps.
284162306a36Sopenharmony_ci			The following configurations can be forced.
284262306a36Sopenharmony_ci
284362306a36Sopenharmony_ci			* Cable type: 40c, 80c, short40c, unk, ign or sata.
284462306a36Sopenharmony_ci			  Any ID with matching PORT is used.
284562306a36Sopenharmony_ci
284662306a36Sopenharmony_ci			* SATA link speed limit: 1.5Gbps or 3.0Gbps.
284762306a36Sopenharmony_ci
284862306a36Sopenharmony_ci			* Transfer mode: pio[0-7], mwdma[0-4] and udma[0-7].
284962306a36Sopenharmony_ci			  udma[/][16,25,33,44,66,100,133] notation is also
285062306a36Sopenharmony_ci			  allowed.
285162306a36Sopenharmony_ci
285262306a36Sopenharmony_ci			* nohrst, nosrst, norst: suppress hard, soft and both
285362306a36Sopenharmony_ci			  resets.
285462306a36Sopenharmony_ci
285562306a36Sopenharmony_ci			* rstonce: only attempt one reset during hot-unplug
285662306a36Sopenharmony_ci			  link recovery.
285762306a36Sopenharmony_ci
285862306a36Sopenharmony_ci			* [no]dbdelay: Enable or disable the extra 200ms delay
285962306a36Sopenharmony_ci			  before debouncing a link PHY and device presence
286062306a36Sopenharmony_ci			  detection.
286162306a36Sopenharmony_ci
286262306a36Sopenharmony_ci			* [no]ncq: Turn on or off NCQ.
286362306a36Sopenharmony_ci
286462306a36Sopenharmony_ci			* [no]ncqtrim: Enable or disable queued DSM TRIM.
286562306a36Sopenharmony_ci
286662306a36Sopenharmony_ci			* [no]ncqati: Enable or disable NCQ trim on ATI chipset.
286762306a36Sopenharmony_ci
286862306a36Sopenharmony_ci			* [no]trim: Enable or disable (unqueued) TRIM.
286962306a36Sopenharmony_ci
287062306a36Sopenharmony_ci			* trim_zero: Indicate that TRIM command zeroes data.
287162306a36Sopenharmony_ci
287262306a36Sopenharmony_ci			* max_trim_128m: Set 128M maximum trim size limit.
287362306a36Sopenharmony_ci
287462306a36Sopenharmony_ci			* [no]dma: Turn on or off DMA transfers.
287562306a36Sopenharmony_ci
287662306a36Sopenharmony_ci			* atapi_dmadir: Enable ATAPI DMADIR bridge support.
287762306a36Sopenharmony_ci
287862306a36Sopenharmony_ci			* atapi_mod16_dma: Enable the use of ATAPI DMA for
287962306a36Sopenharmony_ci			  commands that are not a multiple of 16 bytes.
288062306a36Sopenharmony_ci
288162306a36Sopenharmony_ci			* [no]dmalog: Enable or disable the use of the
288262306a36Sopenharmony_ci			  READ LOG DMA EXT command to access logs.
288362306a36Sopenharmony_ci
288462306a36Sopenharmony_ci			* [no]iddevlog: Enable or disable access to the
288562306a36Sopenharmony_ci			  identify device data log.
288662306a36Sopenharmony_ci
288762306a36Sopenharmony_ci			* [no]logdir: Enable or disable access to the general
288862306a36Sopenharmony_ci			  purpose log directory.
288962306a36Sopenharmony_ci
289062306a36Sopenharmony_ci			* max_sec_128: Set transfer size limit to 128 sectors.
289162306a36Sopenharmony_ci
289262306a36Sopenharmony_ci			* max_sec_1024: Set or clear transfer size limit to
289362306a36Sopenharmony_ci			  1024 sectors.
289462306a36Sopenharmony_ci
289562306a36Sopenharmony_ci			* max_sec_lba48: Set or clear transfer size limit to
289662306a36Sopenharmony_ci			  65535 sectors.
289762306a36Sopenharmony_ci
289862306a36Sopenharmony_ci			* [no]lpm: Enable or disable link power management.
289962306a36Sopenharmony_ci
290062306a36Sopenharmony_ci			* [no]setxfer: Indicate if transfer speed mode setting
290162306a36Sopenharmony_ci			  should be skipped.
290262306a36Sopenharmony_ci
290362306a36Sopenharmony_ci			* [no]fua: Disable or enable FUA (Force Unit Access)
290462306a36Sopenharmony_ci			  support for devices supporting this feature.
290562306a36Sopenharmony_ci
290662306a36Sopenharmony_ci			* dump_id: Dump IDENTIFY data.
290762306a36Sopenharmony_ci
290862306a36Sopenharmony_ci			* disable: Disable this device.
290962306a36Sopenharmony_ci
291062306a36Sopenharmony_ci			If there are multiple matching configurations changing
291162306a36Sopenharmony_ci			the same attribute, the last one is used.
291262306a36Sopenharmony_ci
291362306a36Sopenharmony_ci	load_ramdisk=	[RAM] [Deprecated]
291462306a36Sopenharmony_ci
291562306a36Sopenharmony_ci	lockd.nlm_grace_period=P  [NFS] Assign grace period.
291662306a36Sopenharmony_ci			Format: <integer>
291762306a36Sopenharmony_ci
291862306a36Sopenharmony_ci	lockd.nlm_tcpport=N	[NFS] Assign TCP port.
291962306a36Sopenharmony_ci			Format: <integer>
292062306a36Sopenharmony_ci
292162306a36Sopenharmony_ci	lockd.nlm_timeout=T	[NFS] Assign timeout value.
292262306a36Sopenharmony_ci			Format: <integer>
292362306a36Sopenharmony_ci
292462306a36Sopenharmony_ci	lockd.nlm_udpport=M	[NFS] Assign UDP port.
292562306a36Sopenharmony_ci			Format: <integer>
292662306a36Sopenharmony_ci
292762306a36Sopenharmony_ci	lockdown=	[SECURITY]
292862306a36Sopenharmony_ci			{ integrity | confidentiality }
292962306a36Sopenharmony_ci			Enable the kernel lockdown feature. If set to
293062306a36Sopenharmony_ci			integrity, kernel features that allow userland to
293162306a36Sopenharmony_ci			modify the running kernel are disabled. If set to
293262306a36Sopenharmony_ci			confidentiality, kernel features that allow userland
293362306a36Sopenharmony_ci			to extract confidential information from the kernel
293462306a36Sopenharmony_ci			are also disabled.
293562306a36Sopenharmony_ci
293662306a36Sopenharmony_ci	locktorture.nreaders_stress= [KNL]
293762306a36Sopenharmony_ci			Set the number of locking read-acquisition kthreads.
293862306a36Sopenharmony_ci			Defaults to being automatically set based on the
293962306a36Sopenharmony_ci			number of online CPUs.
294062306a36Sopenharmony_ci
294162306a36Sopenharmony_ci	locktorture.nwriters_stress= [KNL]
294262306a36Sopenharmony_ci			Set the number of locking write-acquisition kthreads.
294362306a36Sopenharmony_ci
294462306a36Sopenharmony_ci	locktorture.onoff_holdoff= [KNL]
294562306a36Sopenharmony_ci			Set time (s) after boot for CPU-hotplug testing.
294662306a36Sopenharmony_ci
294762306a36Sopenharmony_ci	locktorture.onoff_interval= [KNL]
294862306a36Sopenharmony_ci			Set time (s) between CPU-hotplug operations, or
294962306a36Sopenharmony_ci			zero to disable CPU-hotplug testing.
295062306a36Sopenharmony_ci
295162306a36Sopenharmony_ci	locktorture.shuffle_interval= [KNL]
295262306a36Sopenharmony_ci			Set task-shuffle interval (jiffies).  Shuffling
295362306a36Sopenharmony_ci			tasks allows some CPUs to go into dyntick-idle
295462306a36Sopenharmony_ci			mode during the locktorture test.
295562306a36Sopenharmony_ci
295662306a36Sopenharmony_ci	locktorture.shutdown_secs= [KNL]
295762306a36Sopenharmony_ci			Set time (s) after boot system shutdown.  This
295862306a36Sopenharmony_ci			is useful for hands-off automated testing.
295962306a36Sopenharmony_ci
296062306a36Sopenharmony_ci	locktorture.stat_interval= [KNL]
296162306a36Sopenharmony_ci			Time (s) between statistics printk()s.
296262306a36Sopenharmony_ci
296362306a36Sopenharmony_ci	locktorture.stutter= [KNL]
296462306a36Sopenharmony_ci			Time (s) to stutter testing, for example,
296562306a36Sopenharmony_ci			specifying five seconds causes the test to run for
296662306a36Sopenharmony_ci			five seconds, wait for five seconds, and so on.
296762306a36Sopenharmony_ci			This tests the locking primitive's ability to
296862306a36Sopenharmony_ci			transition abruptly to and from idle.
296962306a36Sopenharmony_ci
297062306a36Sopenharmony_ci	locktorture.torture_type= [KNL]
297162306a36Sopenharmony_ci			Specify the locking implementation to test.
297262306a36Sopenharmony_ci
297362306a36Sopenharmony_ci	locktorture.writer_fifo= [KNL]
297462306a36Sopenharmony_ci			Run the write-side locktorture kthreads at
297562306a36Sopenharmony_ci			sched_set_fifo() real-time priority.
297662306a36Sopenharmony_ci
297762306a36Sopenharmony_ci	locktorture.verbose= [KNL]
297862306a36Sopenharmony_ci			Enable additional printk() statements.
297962306a36Sopenharmony_ci
298062306a36Sopenharmony_ci	logibm.irq=	[HW,MOUSE] Logitech Bus Mouse Driver
298162306a36Sopenharmony_ci			Format: <irq>
298262306a36Sopenharmony_ci
298362306a36Sopenharmony_ci	loglevel=	All Kernel Messages with a loglevel smaller than the
298462306a36Sopenharmony_ci			console loglevel will be printed to the console. It can
298562306a36Sopenharmony_ci			also be changed with klogd or other programs. The
298662306a36Sopenharmony_ci			loglevels are defined as follows:
298762306a36Sopenharmony_ci
298862306a36Sopenharmony_ci			0 (KERN_EMERG)		system is unusable
298962306a36Sopenharmony_ci			1 (KERN_ALERT)		action must be taken immediately
299062306a36Sopenharmony_ci			2 (KERN_CRIT)		critical conditions
299162306a36Sopenharmony_ci			3 (KERN_ERR)		error conditions
299262306a36Sopenharmony_ci			4 (KERN_WARNING)	warning conditions
299362306a36Sopenharmony_ci			5 (KERN_NOTICE)		normal but significant condition
299462306a36Sopenharmony_ci			6 (KERN_INFO)		informational
299562306a36Sopenharmony_ci			7 (KERN_DEBUG)		debug-level messages
299662306a36Sopenharmony_ci
299762306a36Sopenharmony_ci	log_buf_len=n[KMG]	Sets the size of the printk ring buffer,
299862306a36Sopenharmony_ci			in bytes.  n must be a power of two and greater
299962306a36Sopenharmony_ci			than the minimal size. The minimal size is defined
300062306a36Sopenharmony_ci			by LOG_BUF_SHIFT kernel config parameter. There is
300162306a36Sopenharmony_ci			also CONFIG_LOG_CPU_MAX_BUF_SHIFT config parameter
300262306a36Sopenharmony_ci			that allows to increase the default size depending on
300362306a36Sopenharmony_ci			the number of CPUs. See init/Kconfig for more details.
300462306a36Sopenharmony_ci
300562306a36Sopenharmony_ci	logo.nologo	[FB] Disables display of the built-in Linux logo.
300662306a36Sopenharmony_ci			This may be used to provide more screen space for
300762306a36Sopenharmony_ci			kernel log messages and is useful when debugging
300862306a36Sopenharmony_ci			kernel boot problems.
300962306a36Sopenharmony_ci
301062306a36Sopenharmony_ci	lp=0		[LP]	Specify parallel ports to use, e.g,
301162306a36Sopenharmony_ci	lp=port[,port...]	lp=none,parport0 (lp0 not configured, lp1 uses
301262306a36Sopenharmony_ci	lp=reset		first parallel port). 'lp=0' disables the
301362306a36Sopenharmony_ci	lp=auto			printer driver. 'lp=reset' (which can be
301462306a36Sopenharmony_ci				specified in addition to the ports) causes
301562306a36Sopenharmony_ci				attached printers to be reset. Using
301662306a36Sopenharmony_ci				lp=port1,port2,... specifies the parallel ports
301762306a36Sopenharmony_ci				to associate lp devices with, starting with
301862306a36Sopenharmony_ci				lp0. A port specification may be 'none' to skip
301962306a36Sopenharmony_ci				that lp device, or a parport name such as
302062306a36Sopenharmony_ci				'parport0'. Specifying 'lp=auto' instead of a
302162306a36Sopenharmony_ci				port specification list means that device IDs
302262306a36Sopenharmony_ci				from each port should be examined, to see if
302362306a36Sopenharmony_ci				an IEEE 1284-compliant printer is attached; if
302462306a36Sopenharmony_ci				so, the driver will manage that printer.
302562306a36Sopenharmony_ci				See also header of drivers/char/lp.c.
302662306a36Sopenharmony_ci
302762306a36Sopenharmony_ci	lpj=n		[KNL]
302862306a36Sopenharmony_ci			Sets loops_per_jiffy to given constant, thus avoiding
302962306a36Sopenharmony_ci			time-consuming boot-time autodetection (up to 250 ms per
303062306a36Sopenharmony_ci			CPU). 0 enables autodetection (default). To determine
303162306a36Sopenharmony_ci			the correct value for your kernel, boot with normal
303262306a36Sopenharmony_ci			autodetection and see what value is printed. Note that
303362306a36Sopenharmony_ci			on SMP systems the preset will be applied to all CPUs,
303462306a36Sopenharmony_ci			which is likely to cause problems if your CPUs need
303562306a36Sopenharmony_ci			significantly divergent settings. An incorrect value
303662306a36Sopenharmony_ci			will cause delays in the kernel to be wrong, leading to
303762306a36Sopenharmony_ci			unpredictable I/O errors and other breakage. Although
303862306a36Sopenharmony_ci			unlikely, in the extreme case this might damage your
303962306a36Sopenharmony_ci			hardware.
304062306a36Sopenharmony_ci
304162306a36Sopenharmony_ci	ltpc=		[NET]
304262306a36Sopenharmony_ci			Format: <io>,<irq>,<dma>
304362306a36Sopenharmony_ci
304462306a36Sopenharmony_ci	lsm.debug	[SECURITY] Enable LSM initialization debugging output.
304562306a36Sopenharmony_ci
304662306a36Sopenharmony_ci	lsm=lsm1,...,lsmN
304762306a36Sopenharmony_ci			[SECURITY] Choose order of LSM initialization. This
304862306a36Sopenharmony_ci			overrides CONFIG_LSM, and the "security=" parameter.
304962306a36Sopenharmony_ci
305062306a36Sopenharmony_ci	machvec=	[IA-64] Force the use of a particular machine-vector
305162306a36Sopenharmony_ci			(machvec) in a generic kernel.
305262306a36Sopenharmony_ci			Example: machvec=hpzx1
305362306a36Sopenharmony_ci
305462306a36Sopenharmony_ci	machtype=	[Loongson] Share the same kernel image file between
305562306a36Sopenharmony_ci			different yeeloong laptops.
305662306a36Sopenharmony_ci			Example: machtype=lemote-yeeloong-2f-7inch
305762306a36Sopenharmony_ci
305862306a36Sopenharmony_ci	max_addr=nn[KMG]	[KNL,BOOT,IA-64] All physical memory greater
305962306a36Sopenharmony_ci			than or equal to this physical address is ignored.
306062306a36Sopenharmony_ci
306162306a36Sopenharmony_ci	maxcpus=	[SMP] Maximum number of processors that	an SMP kernel
306262306a36Sopenharmony_ci			will bring up during bootup.  maxcpus=n : n >= 0 limits
306362306a36Sopenharmony_ci			the kernel to bring up 'n' processors. Surely after
306462306a36Sopenharmony_ci			bootup you can bring up the other plugged cpu by executing
306562306a36Sopenharmony_ci			"echo 1 > /sys/devices/system/cpu/cpuX/online". So maxcpus
306662306a36Sopenharmony_ci			only takes effect during system bootup.
306762306a36Sopenharmony_ci			While n=0 is a special case, it is equivalent to "nosmp",
306862306a36Sopenharmony_ci			which also disables the IO APIC.
306962306a36Sopenharmony_ci
307062306a36Sopenharmony_ci	max_loop=	[LOOP] The number of loop block devices that get
307162306a36Sopenharmony_ci	(loop.max_loop)	unconditionally pre-created at init time. The default
307262306a36Sopenharmony_ci			number is configured by BLK_DEV_LOOP_MIN_COUNT. Instead
307362306a36Sopenharmony_ci			of statically allocating a predefined number, loop
307462306a36Sopenharmony_ci			devices can be requested on-demand with the
307562306a36Sopenharmony_ci			/dev/loop-control interface.
307662306a36Sopenharmony_ci
307762306a36Sopenharmony_ci	mce		[X86-32] Machine Check Exception
307862306a36Sopenharmony_ci
307962306a36Sopenharmony_ci	mce=option	[X86-64] See Documentation/arch/x86/x86_64/boot-options.rst
308062306a36Sopenharmony_ci
308162306a36Sopenharmony_ci	md=		[HW] RAID subsystems devices and level
308262306a36Sopenharmony_ci			See Documentation/admin-guide/md.rst.
308362306a36Sopenharmony_ci
308462306a36Sopenharmony_ci	mdacon=		[MDA]
308562306a36Sopenharmony_ci			Format: <first>,<last>
308662306a36Sopenharmony_ci			Specifies range of consoles to be captured by the MDA.
308762306a36Sopenharmony_ci
308862306a36Sopenharmony_ci	mds=		[X86,INTEL]
308962306a36Sopenharmony_ci			Control mitigation for the Micro-architectural Data
309062306a36Sopenharmony_ci			Sampling (MDS) vulnerability.
309162306a36Sopenharmony_ci
309262306a36Sopenharmony_ci			Certain CPUs are vulnerable to an exploit against CPU
309362306a36Sopenharmony_ci			internal buffers which can forward information to a
309462306a36Sopenharmony_ci			disclosure gadget under certain conditions.
309562306a36Sopenharmony_ci
309662306a36Sopenharmony_ci			In vulnerable processors, the speculatively
309762306a36Sopenharmony_ci			forwarded data can be used in a cache side channel
309862306a36Sopenharmony_ci			attack, to access data to which the attacker does
309962306a36Sopenharmony_ci			not have direct access.
310062306a36Sopenharmony_ci
310162306a36Sopenharmony_ci			This parameter controls the MDS mitigation. The
310262306a36Sopenharmony_ci			options are:
310362306a36Sopenharmony_ci
310462306a36Sopenharmony_ci			full       - Enable MDS mitigation on vulnerable CPUs
310562306a36Sopenharmony_ci			full,nosmt - Enable MDS mitigation and disable
310662306a36Sopenharmony_ci				     SMT on vulnerable CPUs
310762306a36Sopenharmony_ci			off        - Unconditionally disable MDS mitigation
310862306a36Sopenharmony_ci
310962306a36Sopenharmony_ci			On TAA-affected machines, mds=off can be prevented by
311062306a36Sopenharmony_ci			an active TAA mitigation as both vulnerabilities are
311162306a36Sopenharmony_ci			mitigated with the same mechanism so in order to disable
311262306a36Sopenharmony_ci			this mitigation, you need to specify tsx_async_abort=off
311362306a36Sopenharmony_ci			too.
311462306a36Sopenharmony_ci
311562306a36Sopenharmony_ci			Not specifying this option is equivalent to
311662306a36Sopenharmony_ci			mds=full.
311762306a36Sopenharmony_ci
311862306a36Sopenharmony_ci			For details see: Documentation/admin-guide/hw-vuln/mds.rst
311962306a36Sopenharmony_ci
312062306a36Sopenharmony_ci	mem=nn[KMG]	[HEXAGON] Set the memory size.
312162306a36Sopenharmony_ci			Must be specified, otherwise memory size will be 0.
312262306a36Sopenharmony_ci
312362306a36Sopenharmony_ci	mem=nn[KMG]	[KNL,BOOT] Force usage of a specific amount of memory
312462306a36Sopenharmony_ci			Amount of memory to be used in cases as follows:
312562306a36Sopenharmony_ci
312662306a36Sopenharmony_ci			1 for test;
312762306a36Sopenharmony_ci			2 when the kernel is not able to see the whole system memory;
312862306a36Sopenharmony_ci			3 memory that lies after 'mem=' boundary is excluded from
312962306a36Sopenharmony_ci			 the hypervisor, then assigned to KVM guests.
313062306a36Sopenharmony_ci			4 to limit the memory available for kdump kernel.
313162306a36Sopenharmony_ci
313262306a36Sopenharmony_ci			[ARC,MICROBLAZE] - the limit applies only to low memory,
313362306a36Sopenharmony_ci			high memory is not affected.
313462306a36Sopenharmony_ci
313562306a36Sopenharmony_ci			[ARM64] - only limits memory covered by the linear
313662306a36Sopenharmony_ci			mapping. The NOMAP regions are not affected.
313762306a36Sopenharmony_ci
313862306a36Sopenharmony_ci			[X86] Work as limiting max address. Use together
313962306a36Sopenharmony_ci			with memmap= to avoid physical address space collisions.
314062306a36Sopenharmony_ci			Without memmap= PCI devices could be placed at addresses
314162306a36Sopenharmony_ci			belonging to unused RAM.
314262306a36Sopenharmony_ci
314362306a36Sopenharmony_ci			Note that this only takes effects during boot time since
314462306a36Sopenharmony_ci			in above case 3, memory may need be hot added after boot
314562306a36Sopenharmony_ci			if system memory of hypervisor is not sufficient.
314662306a36Sopenharmony_ci
314762306a36Sopenharmony_ci	mem=nn[KMG]@ss[KMG]
314862306a36Sopenharmony_ci			[ARM,MIPS] - override the memory layout reported by
314962306a36Sopenharmony_ci			firmware.
315062306a36Sopenharmony_ci			Define a memory region of size nn[KMG] starting at
315162306a36Sopenharmony_ci			ss[KMG].
315262306a36Sopenharmony_ci			Multiple different regions can be specified with
315362306a36Sopenharmony_ci			multiple mem= parameters on the command line.
315462306a36Sopenharmony_ci
315562306a36Sopenharmony_ci	mem=nopentium	[BUGS=X86-32] Disable usage of 4MB pages for kernel
315662306a36Sopenharmony_ci			memory.
315762306a36Sopenharmony_ci
315862306a36Sopenharmony_ci	memblock=debug	[KNL] Enable memblock debug messages.
315962306a36Sopenharmony_ci
316062306a36Sopenharmony_ci	memchunk=nn[KMG]
316162306a36Sopenharmony_ci			[KNL,SH] Allow user to override the default size for
316262306a36Sopenharmony_ci			per-device physically contiguous DMA buffers.
316362306a36Sopenharmony_ci
316462306a36Sopenharmony_ci	memhp_default_state=online/offline/online_kernel/online_movable
316562306a36Sopenharmony_ci			[KNL] Set the initial state for the memory hotplug
316662306a36Sopenharmony_ci			onlining policy. If not specified, the default value is
316762306a36Sopenharmony_ci			set according to the
316862306a36Sopenharmony_ci			CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE kernel config
316962306a36Sopenharmony_ci			option.
317062306a36Sopenharmony_ci			See Documentation/admin-guide/mm/memory-hotplug.rst.
317162306a36Sopenharmony_ci
317262306a36Sopenharmony_ci	memmap=exactmap	[KNL,X86] Enable setting of an exact
317362306a36Sopenharmony_ci			E820 memory map, as specified by the user.
317462306a36Sopenharmony_ci			Such memmap=exactmap lines can be constructed based on
317562306a36Sopenharmony_ci			BIOS output or other requirements. See the memmap=nn@ss
317662306a36Sopenharmony_ci			option description.
317762306a36Sopenharmony_ci
317862306a36Sopenharmony_ci	memmap=nn[KMG]@ss[KMG]
317962306a36Sopenharmony_ci			[KNL, X86, MIPS, XTENSA] Force usage of a specific region of memory.
318062306a36Sopenharmony_ci			Region of memory to be used is from ss to ss+nn.
318162306a36Sopenharmony_ci			If @ss[KMG] is omitted, it is equivalent to mem=nn[KMG],
318262306a36Sopenharmony_ci			which limits max address to nn[KMG].
318362306a36Sopenharmony_ci			Multiple different regions can be specified,
318462306a36Sopenharmony_ci			comma delimited.
318562306a36Sopenharmony_ci			Example:
318662306a36Sopenharmony_ci				memmap=100M@2G,100M#3G,1G!1024G
318762306a36Sopenharmony_ci
318862306a36Sopenharmony_ci	memmap=nn[KMG]#ss[KMG]
318962306a36Sopenharmony_ci			[KNL,ACPI] Mark specific memory as ACPI data.
319062306a36Sopenharmony_ci			Region of memory to be marked is from ss to ss+nn.
319162306a36Sopenharmony_ci
319262306a36Sopenharmony_ci	memmap=nn[KMG]$ss[KMG]
319362306a36Sopenharmony_ci			[KNL,ACPI] Mark specific memory as reserved.
319462306a36Sopenharmony_ci			Region of memory to be reserved is from ss to ss+nn.
319562306a36Sopenharmony_ci			Example: Exclude memory from 0x18690000-0x1869ffff
319662306a36Sopenharmony_ci			         memmap=64K$0x18690000
319762306a36Sopenharmony_ci			         or
319862306a36Sopenharmony_ci			         memmap=0x10000$0x18690000
319962306a36Sopenharmony_ci			Some bootloaders may need an escape character before '$',
320062306a36Sopenharmony_ci			like Grub2, otherwise '$' and the following number
320162306a36Sopenharmony_ci			will be eaten.
320262306a36Sopenharmony_ci
320362306a36Sopenharmony_ci	memmap=nn[KMG]!ss[KMG]
320462306a36Sopenharmony_ci			[KNL,X86] Mark specific memory as protected.
320562306a36Sopenharmony_ci			Region of memory to be used, from ss to ss+nn.
320662306a36Sopenharmony_ci			The memory region may be marked as e820 type 12 (0xc)
320762306a36Sopenharmony_ci			and is NVDIMM or ADR memory.
320862306a36Sopenharmony_ci
320962306a36Sopenharmony_ci	memmap=<size>%<offset>-<oldtype>+<newtype>
321062306a36Sopenharmony_ci			[KNL,ACPI] Convert memory within the specified region
321162306a36Sopenharmony_ci			from <oldtype> to <newtype>. If "-<oldtype>" is left
321262306a36Sopenharmony_ci			out, the whole region will be marked as <newtype>,
321362306a36Sopenharmony_ci			even if previously unavailable. If "+<newtype>" is left
321462306a36Sopenharmony_ci			out, matching memory will be removed. Types are
321562306a36Sopenharmony_ci			specified as e820 types, e.g., 1 = RAM, 2 = reserved,
321662306a36Sopenharmony_ci			3 = ACPI, 12 = PRAM.
321762306a36Sopenharmony_ci
321862306a36Sopenharmony_ci	memory_corruption_check=0/1 [X86]
321962306a36Sopenharmony_ci			Some BIOSes seem to corrupt the first 64k of
322062306a36Sopenharmony_ci			memory when doing things like suspend/resume.
322162306a36Sopenharmony_ci			Setting this option will scan the memory
322262306a36Sopenharmony_ci			looking for corruption.  Enabling this will
322362306a36Sopenharmony_ci			both detect corruption and prevent the kernel
322462306a36Sopenharmony_ci			from using the memory being corrupted.
322562306a36Sopenharmony_ci			However, its intended as a diagnostic tool; if
322662306a36Sopenharmony_ci			repeatable BIOS-originated corruption always
322762306a36Sopenharmony_ci			affects the same memory, you can use memmap=
322862306a36Sopenharmony_ci			to prevent the kernel from using that memory.
322962306a36Sopenharmony_ci
323062306a36Sopenharmony_ci	memory_corruption_check_size=size [X86]
323162306a36Sopenharmony_ci			By default it checks for corruption in the low
323262306a36Sopenharmony_ci			64k, making this memory unavailable for normal
323362306a36Sopenharmony_ci			use.  Use this parameter to scan for
323462306a36Sopenharmony_ci			corruption in more or less memory.
323562306a36Sopenharmony_ci
323662306a36Sopenharmony_ci	memory_corruption_check_period=seconds [X86]
323762306a36Sopenharmony_ci			By default it checks for corruption every 60
323862306a36Sopenharmony_ci			seconds.  Use this parameter to check at some
323962306a36Sopenharmony_ci			other rate.  0 disables periodic checking.
324062306a36Sopenharmony_ci
324162306a36Sopenharmony_ci	memory_hotplug.memmap_on_memory
324262306a36Sopenharmony_ci			[KNL,X86,ARM] Boolean flag to enable this feature.
324362306a36Sopenharmony_ci			Format: {on | off (default)}
324462306a36Sopenharmony_ci			When enabled, runtime hotplugged memory will
324562306a36Sopenharmony_ci			allocate its internal metadata (struct pages,
324662306a36Sopenharmony_ci			those vmemmap pages cannot be optimized even
324762306a36Sopenharmony_ci			if hugetlb_free_vmemmap is enabled) from the
324862306a36Sopenharmony_ci			hotadded memory which will allow to hotadd a
324962306a36Sopenharmony_ci			lot of memory without requiring additional
325062306a36Sopenharmony_ci			memory to do so.
325162306a36Sopenharmony_ci			This feature is disabled by default because it
325262306a36Sopenharmony_ci			has some implication on large (e.g. GB)
325362306a36Sopenharmony_ci			allocations in some configurations (e.g. small
325462306a36Sopenharmony_ci			memory blocks).
325562306a36Sopenharmony_ci			The state of the flag can be read in
325662306a36Sopenharmony_ci			/sys/module/memory_hotplug/parameters/memmap_on_memory.
325762306a36Sopenharmony_ci			Note that even when enabled, there are a few cases where
325862306a36Sopenharmony_ci			the feature is not effective.
325962306a36Sopenharmony_ci
326062306a36Sopenharmony_ci	memtest=	[KNL,X86,ARM,M68K,PPC,RISCV] Enable memtest
326162306a36Sopenharmony_ci			Format: <integer>
326262306a36Sopenharmony_ci			default : 0 <disable>
326362306a36Sopenharmony_ci			Specifies the number of memtest passes to be
326462306a36Sopenharmony_ci			performed. Each pass selects another test
326562306a36Sopenharmony_ci			pattern from a given set of patterns. Memtest
326662306a36Sopenharmony_ci			fills the memory with this pattern, validates
326762306a36Sopenharmony_ci			memory contents and reserves bad memory
326862306a36Sopenharmony_ci			regions that are detected.
326962306a36Sopenharmony_ci
327062306a36Sopenharmony_ci	mem_encrypt=	[X86-64] AMD Secure Memory Encryption (SME) control
327162306a36Sopenharmony_ci			Valid arguments: on, off
327262306a36Sopenharmony_ci			Default (depends on kernel configuration option):
327362306a36Sopenharmony_ci			  on  (CONFIG_AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT=y)
327462306a36Sopenharmony_ci			  off (CONFIG_AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT=n)
327562306a36Sopenharmony_ci			mem_encrypt=on:		Activate SME
327662306a36Sopenharmony_ci			mem_encrypt=off:	Do not activate SME
327762306a36Sopenharmony_ci
327862306a36Sopenharmony_ci			Refer to Documentation/virt/kvm/x86/amd-memory-encryption.rst
327962306a36Sopenharmony_ci			for details on when memory encryption can be activated.
328062306a36Sopenharmony_ci
328162306a36Sopenharmony_ci	mem_sleep_default=	[SUSPEND] Default system suspend mode:
328262306a36Sopenharmony_ci			s2idle  - Suspend-To-Idle
328362306a36Sopenharmony_ci			shallow - Power-On Suspend or equivalent (if supported)
328462306a36Sopenharmony_ci			deep    - Suspend-To-RAM or equivalent (if supported)
328562306a36Sopenharmony_ci			See Documentation/admin-guide/pm/sleep-states.rst.
328662306a36Sopenharmony_ci
328762306a36Sopenharmony_ci	mfgpt_irq=	[IA-32] Specify the IRQ to use for the
328862306a36Sopenharmony_ci			Multi-Function General Purpose Timers on AMD Geode
328962306a36Sopenharmony_ci			platforms.
329062306a36Sopenharmony_ci
329162306a36Sopenharmony_ci	mfgptfix	[X86-32] Fix MFGPT timers on AMD Geode platforms when
329262306a36Sopenharmony_ci			the BIOS has incorrectly applied a workaround. TinyBIOS
329362306a36Sopenharmony_ci			version 0.98 is known to be affected, 0.99 fixes the
329462306a36Sopenharmony_ci			problem by letting the user disable the workaround.
329562306a36Sopenharmony_ci
329662306a36Sopenharmony_ci	mga=		[HW,DRM]
329762306a36Sopenharmony_ci
329862306a36Sopenharmony_ci	min_addr=nn[KMG]	[KNL,BOOT,IA-64] All physical memory below this
329962306a36Sopenharmony_ci			physical address is ignored.
330062306a36Sopenharmony_ci
330162306a36Sopenharmony_ci	mini2440=	[ARM,HW,KNL]
330262306a36Sopenharmony_ci			Format:[0..2][b][c][t]
330362306a36Sopenharmony_ci			Default: "0tb"
330462306a36Sopenharmony_ci			MINI2440 configuration specification:
330562306a36Sopenharmony_ci			0 - The attached screen is the 3.5" TFT
330662306a36Sopenharmony_ci			1 - The attached screen is the 7" TFT
330762306a36Sopenharmony_ci			2 - The VGA Shield is attached (1024x768)
330862306a36Sopenharmony_ci			Leaving out the screen size parameter will not load
330962306a36Sopenharmony_ci			the TFT driver, and the framebuffer will be left
331062306a36Sopenharmony_ci			unconfigured.
331162306a36Sopenharmony_ci			b - Enable backlight. The TFT backlight pin will be
331262306a36Sopenharmony_ci			linked to the kernel VESA blanking code and a GPIO
331362306a36Sopenharmony_ci			LED. This parameter is not necessary when using the
331462306a36Sopenharmony_ci			VGA shield.
331562306a36Sopenharmony_ci			c - Enable the s3c camera interface.
331662306a36Sopenharmony_ci			t - Reserved for enabling touchscreen support. The
331762306a36Sopenharmony_ci			touchscreen support is not enabled in the mainstream
331862306a36Sopenharmony_ci			kernel as of 2.6.30, a preliminary port can be found
331962306a36Sopenharmony_ci			in the "bleeding edge" mini2440 support kernel at
332062306a36Sopenharmony_ci			https://repo.or.cz/w/linux-2.6/mini2440.git
332162306a36Sopenharmony_ci
332262306a36Sopenharmony_ci	mitigations=
332362306a36Sopenharmony_ci			[X86,PPC,S390,ARM64] Control optional mitigations for
332462306a36Sopenharmony_ci			CPU vulnerabilities.  This is a set of curated,
332562306a36Sopenharmony_ci			arch-independent options, each of which is an
332662306a36Sopenharmony_ci			aggregation of existing arch-specific options.
332762306a36Sopenharmony_ci
332862306a36Sopenharmony_ci			off
332962306a36Sopenharmony_ci				Disable all optional CPU mitigations.  This
333062306a36Sopenharmony_ci				improves system performance, but it may also
333162306a36Sopenharmony_ci				expose users to several CPU vulnerabilities.
333262306a36Sopenharmony_ci				Equivalent to: if nokaslr then kpti=0 [ARM64]
333362306a36Sopenharmony_ci					       gather_data_sampling=off [X86]
333462306a36Sopenharmony_ci					       kvm.nx_huge_pages=off [X86]
333562306a36Sopenharmony_ci					       l1tf=off [X86]
333662306a36Sopenharmony_ci					       mds=off [X86]
333762306a36Sopenharmony_ci					       mmio_stale_data=off [X86]
333862306a36Sopenharmony_ci					       no_entry_flush [PPC]
333962306a36Sopenharmony_ci					       no_uaccess_flush [PPC]
334062306a36Sopenharmony_ci					       nobp=0 [S390]
334162306a36Sopenharmony_ci					       nopti [X86,PPC]
334262306a36Sopenharmony_ci					       nospectre_bhb [ARM64]
334362306a36Sopenharmony_ci					       nospectre_v1 [X86,PPC]
334462306a36Sopenharmony_ci					       nospectre_v2 [X86,PPC,S390,ARM64]
334562306a36Sopenharmony_ci					       reg_file_data_sampling=off [X86]
334662306a36Sopenharmony_ci					       retbleed=off [X86]
334762306a36Sopenharmony_ci					       spec_store_bypass_disable=off [X86,PPC]
334862306a36Sopenharmony_ci					       spectre_v2_user=off [X86]
334962306a36Sopenharmony_ci					       srbds=off [X86,INTEL]
335062306a36Sopenharmony_ci					       ssbd=force-off [ARM64]
335162306a36Sopenharmony_ci					       tsx_async_abort=off [X86]
335262306a36Sopenharmony_ci
335362306a36Sopenharmony_ci				Exceptions:
335462306a36Sopenharmony_ci					       This does not have any effect on
335562306a36Sopenharmony_ci					       kvm.nx_huge_pages when
335662306a36Sopenharmony_ci					       kvm.nx_huge_pages=force.
335762306a36Sopenharmony_ci
335862306a36Sopenharmony_ci			auto (default)
335962306a36Sopenharmony_ci				Mitigate all CPU vulnerabilities, but leave SMT
336062306a36Sopenharmony_ci				enabled, even if it's vulnerable.  This is for
336162306a36Sopenharmony_ci				users who don't want to be surprised by SMT
336262306a36Sopenharmony_ci				getting disabled across kernel upgrades, or who
336362306a36Sopenharmony_ci				have other ways of avoiding SMT-based attacks.
336462306a36Sopenharmony_ci				Equivalent to: (default behavior)
336562306a36Sopenharmony_ci
336662306a36Sopenharmony_ci			auto,nosmt
336762306a36Sopenharmony_ci				Mitigate all CPU vulnerabilities, disabling SMT
336862306a36Sopenharmony_ci				if needed.  This is for users who always want to
336962306a36Sopenharmony_ci				be fully mitigated, even if it means losing SMT.
337062306a36Sopenharmony_ci				Equivalent to: l1tf=flush,nosmt [X86]
337162306a36Sopenharmony_ci					       mds=full,nosmt [X86]
337262306a36Sopenharmony_ci					       tsx_async_abort=full,nosmt [X86]
337362306a36Sopenharmony_ci					       mmio_stale_data=full,nosmt [X86]
337462306a36Sopenharmony_ci					       retbleed=auto,nosmt [X86]
337562306a36Sopenharmony_ci
337662306a36Sopenharmony_ci	mminit_loglevel=
337762306a36Sopenharmony_ci			[KNL] When CONFIG_DEBUG_MEMORY_INIT is set, this
337862306a36Sopenharmony_ci			parameter allows control of the logging verbosity for
337962306a36Sopenharmony_ci			the additional memory initialisation checks. A value
338062306a36Sopenharmony_ci			of 0 disables mminit logging and a level of 4 will
338162306a36Sopenharmony_ci			log everything. Information is printed at KERN_DEBUG
338262306a36Sopenharmony_ci			so loglevel=8 may also need to be specified.
338362306a36Sopenharmony_ci
338462306a36Sopenharmony_ci	mmio_stale_data=
338562306a36Sopenharmony_ci			[X86,INTEL] Control mitigation for the Processor
338662306a36Sopenharmony_ci			MMIO Stale Data vulnerabilities.
338762306a36Sopenharmony_ci
338862306a36Sopenharmony_ci			Processor MMIO Stale Data is a class of
338962306a36Sopenharmony_ci			vulnerabilities that may expose data after an MMIO
339062306a36Sopenharmony_ci			operation. Exposed data could originate or end in
339162306a36Sopenharmony_ci			the same CPU buffers as affected by MDS and TAA.
339262306a36Sopenharmony_ci			Therefore, similar to MDS and TAA, the mitigation
339362306a36Sopenharmony_ci			is to clear the affected CPU buffers.
339462306a36Sopenharmony_ci
339562306a36Sopenharmony_ci			This parameter controls the mitigation. The
339662306a36Sopenharmony_ci			options are:
339762306a36Sopenharmony_ci
339862306a36Sopenharmony_ci			full       - Enable mitigation on vulnerable CPUs
339962306a36Sopenharmony_ci
340062306a36Sopenharmony_ci			full,nosmt - Enable mitigation and disable SMT on
340162306a36Sopenharmony_ci				     vulnerable CPUs.
340262306a36Sopenharmony_ci
340362306a36Sopenharmony_ci			off        - Unconditionally disable mitigation
340462306a36Sopenharmony_ci
340562306a36Sopenharmony_ci			On MDS or TAA affected machines,
340662306a36Sopenharmony_ci			mmio_stale_data=off can be prevented by an active
340762306a36Sopenharmony_ci			MDS or TAA mitigation as these vulnerabilities are
340862306a36Sopenharmony_ci			mitigated with the same mechanism so in order to
340962306a36Sopenharmony_ci			disable this mitigation, you need to specify
341062306a36Sopenharmony_ci			mds=off and tsx_async_abort=off too.
341162306a36Sopenharmony_ci
341262306a36Sopenharmony_ci			Not specifying this option is equivalent to
341362306a36Sopenharmony_ci			mmio_stale_data=full.
341462306a36Sopenharmony_ci
341562306a36Sopenharmony_ci			For details see:
341662306a36Sopenharmony_ci			Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst
341762306a36Sopenharmony_ci
341862306a36Sopenharmony_ci	<module>.async_probe[=<bool>] [KNL]
341962306a36Sopenharmony_ci			If no <bool> value is specified or if the value
342062306a36Sopenharmony_ci			specified is not a valid <bool>, enable asynchronous
342162306a36Sopenharmony_ci			probe on this module.  Otherwise, enable/disable
342262306a36Sopenharmony_ci			asynchronous probe on this module as indicated by the
342362306a36Sopenharmony_ci			<bool> value. See also: module.async_probe
342462306a36Sopenharmony_ci
342562306a36Sopenharmony_ci	module.async_probe=<bool>
342662306a36Sopenharmony_ci			[KNL] When set to true, modules will use async probing
342762306a36Sopenharmony_ci			by default. To enable/disable async probing for a
342862306a36Sopenharmony_ci			specific module, use the module specific control that
342962306a36Sopenharmony_ci			is documented under <module>.async_probe. When both
343062306a36Sopenharmony_ci			module.async_probe and <module>.async_probe are
343162306a36Sopenharmony_ci			specified, <module>.async_probe takes precedence for
343262306a36Sopenharmony_ci			the specific module.
343362306a36Sopenharmony_ci
343462306a36Sopenharmony_ci	module.enable_dups_trace
343562306a36Sopenharmony_ci			[KNL] When CONFIG_MODULE_DEBUG_AUTOLOAD_DUPS is set,
343662306a36Sopenharmony_ci			this means that duplicate request_module() calls will
343762306a36Sopenharmony_ci			trigger a WARN_ON() instead of a pr_warn(). Note that
343862306a36Sopenharmony_ci			if MODULE_DEBUG_AUTOLOAD_DUPS_TRACE is set, WARN_ON()s
343962306a36Sopenharmony_ci			will always be issued and this option does nothing.
344062306a36Sopenharmony_ci	module.sig_enforce
344162306a36Sopenharmony_ci			[KNL] When CONFIG_MODULE_SIG is set, this means that
344262306a36Sopenharmony_ci			modules without (valid) signatures will fail to load.
344362306a36Sopenharmony_ci			Note that if CONFIG_MODULE_SIG_FORCE is set, that
344462306a36Sopenharmony_ci			is always true, so this option does nothing.
344562306a36Sopenharmony_ci
344662306a36Sopenharmony_ci	module_blacklist=  [KNL] Do not load a comma-separated list of
344762306a36Sopenharmony_ci			modules.  Useful for debugging problem modules.
344862306a36Sopenharmony_ci
344962306a36Sopenharmony_ci	mousedev.tap_time=
345062306a36Sopenharmony_ci			[MOUSE] Maximum time between finger touching and
345162306a36Sopenharmony_ci			leaving touchpad surface for touch to be considered
345262306a36Sopenharmony_ci			a tap and be reported as a left button click (for
345362306a36Sopenharmony_ci			touchpads working in absolute mode only).
345462306a36Sopenharmony_ci			Format: <msecs>
345562306a36Sopenharmony_ci	mousedev.xres=	[MOUSE] Horizontal screen resolution, used for devices
345662306a36Sopenharmony_ci			reporting absolute coordinates, such as tablets
345762306a36Sopenharmony_ci	mousedev.yres=	[MOUSE] Vertical screen resolution, used for devices
345862306a36Sopenharmony_ci			reporting absolute coordinates, such as tablets
345962306a36Sopenharmony_ci
346062306a36Sopenharmony_ci	movablecore=	[KNL,X86,IA-64,PPC]
346162306a36Sopenharmony_ci			Format: nn[KMGTPE] | nn%
346262306a36Sopenharmony_ci			This parameter is the complement to kernelcore=, it
346362306a36Sopenharmony_ci			specifies the amount of memory used for migratable
346462306a36Sopenharmony_ci			allocations.  If both kernelcore and movablecore is
346562306a36Sopenharmony_ci			specified, then kernelcore will be at *least* the
346662306a36Sopenharmony_ci			specified value but may be more.  If movablecore on its
346762306a36Sopenharmony_ci			own is specified, the administrator must be careful
346862306a36Sopenharmony_ci			that the amount of memory usable for all allocations
346962306a36Sopenharmony_ci			is not too small.
347062306a36Sopenharmony_ci
347162306a36Sopenharmony_ci	movable_node	[KNL] Boot-time switch to make hotplugable memory
347262306a36Sopenharmony_ci			NUMA nodes to be movable. This means that the memory
347362306a36Sopenharmony_ci			of such nodes will be usable only for movable
347462306a36Sopenharmony_ci			allocations which rules out almost all kernel
347562306a36Sopenharmony_ci			allocations. Use with caution!
347662306a36Sopenharmony_ci
347762306a36Sopenharmony_ci	MTD_Partition=	[MTD]
347862306a36Sopenharmony_ci			Format: <name>,<region-number>,<size>,<offset>
347962306a36Sopenharmony_ci
348062306a36Sopenharmony_ci	MTD_Region=	[MTD] Format:
348162306a36Sopenharmony_ci			<name>,<region-number>[,<base>,<size>,<buswidth>,<altbuswidth>]
348262306a36Sopenharmony_ci
348362306a36Sopenharmony_ci	mtdparts=	[MTD]
348462306a36Sopenharmony_ci			See drivers/mtd/parsers/cmdlinepart.c
348562306a36Sopenharmony_ci
348662306a36Sopenharmony_ci	mtdset=		[ARM]
348762306a36Sopenharmony_ci			ARM/S3C2412 JIVE boot control
348862306a36Sopenharmony_ci
348962306a36Sopenharmony_ci			See arch/arm/mach-s3c/mach-jive.c
349062306a36Sopenharmony_ci
349162306a36Sopenharmony_ci	mtouchusb.raw_coordinates=
349262306a36Sopenharmony_ci			[HW] Make the MicroTouch USB driver use raw coordinates
349362306a36Sopenharmony_ci			('y', default) or cooked coordinates ('n')
349462306a36Sopenharmony_ci
349562306a36Sopenharmony_ci	mtrr=debug	[X86]
349662306a36Sopenharmony_ci			Enable printing debug information related to MTRR
349762306a36Sopenharmony_ci			registers at boot time.
349862306a36Sopenharmony_ci
349962306a36Sopenharmony_ci	mtrr_chunk_size=nn[KMG] [X86]
350062306a36Sopenharmony_ci			used for mtrr cleanup. It is largest continuous chunk
350162306a36Sopenharmony_ci			that could hold holes aka. UC entries.
350262306a36Sopenharmony_ci
350362306a36Sopenharmony_ci	mtrr_gran_size=nn[KMG] [X86]
350462306a36Sopenharmony_ci			Used for mtrr cleanup. It is granularity of mtrr block.
350562306a36Sopenharmony_ci			Default is 1.
350662306a36Sopenharmony_ci			Large value could prevent small alignment from
350762306a36Sopenharmony_ci			using up MTRRs.
350862306a36Sopenharmony_ci
350962306a36Sopenharmony_ci	mtrr_spare_reg_nr=n [X86]
351062306a36Sopenharmony_ci			Format: <integer>
351162306a36Sopenharmony_ci			Range: 0,7 : spare reg number
351262306a36Sopenharmony_ci			Default : 1
351362306a36Sopenharmony_ci			Used for mtrr cleanup. It is spare mtrr entries number.
351462306a36Sopenharmony_ci			Set to 2 or more if your graphical card needs more.
351562306a36Sopenharmony_ci
351662306a36Sopenharmony_ci	multitce=off	[PPC]  This parameter disables the use of the pSeries
351762306a36Sopenharmony_ci			firmware feature for updating multiple TCE entries
351862306a36Sopenharmony_ci			at a time.
351962306a36Sopenharmony_ci
352062306a36Sopenharmony_ci	n2=		[NET] SDL Inc. RISCom/N2 synchronous serial card
352162306a36Sopenharmony_ci
352262306a36Sopenharmony_ci	netdev=		[NET] Network devices parameters
352362306a36Sopenharmony_ci			Format: <irq>,<io>,<mem_start>,<mem_end>,<name>
352462306a36Sopenharmony_ci			Note that mem_start is often overloaded to mean
352562306a36Sopenharmony_ci			something different and driver-specific.
352662306a36Sopenharmony_ci			This usage is only documented in each driver source
352762306a36Sopenharmony_ci			file if at all.
352862306a36Sopenharmony_ci
352962306a36Sopenharmony_ci	netpoll.carrier_timeout=
353062306a36Sopenharmony_ci			[NET] Specifies amount of time (in seconds) that
353162306a36Sopenharmony_ci			netpoll should wait for a carrier. By default netpoll
353262306a36Sopenharmony_ci			waits 4 seconds.
353362306a36Sopenharmony_ci
353462306a36Sopenharmony_ci	nf_conntrack.acct=
353562306a36Sopenharmony_ci			[NETFILTER] Enable connection tracking flow accounting
353662306a36Sopenharmony_ci			0 to disable accounting
353762306a36Sopenharmony_ci			1 to enable accounting
353862306a36Sopenharmony_ci			Default value is 0.
353962306a36Sopenharmony_ci
354062306a36Sopenharmony_ci	nfs.cache_getent=
354162306a36Sopenharmony_ci			[NFS] sets the pathname to the program which is used
354262306a36Sopenharmony_ci			to update the NFS client cache entries.
354362306a36Sopenharmony_ci
354462306a36Sopenharmony_ci	nfs.cache_getent_timeout=
354562306a36Sopenharmony_ci			[NFS] sets the timeout after which an attempt to
354662306a36Sopenharmony_ci			update a cache entry is deemed to have failed.
354762306a36Sopenharmony_ci
354862306a36Sopenharmony_ci	nfs.callback_nr_threads=
354962306a36Sopenharmony_ci			[NFSv4] set the total number of threads that the
355062306a36Sopenharmony_ci			NFS client will assign to service NFSv4 callback
355162306a36Sopenharmony_ci			requests.
355262306a36Sopenharmony_ci
355362306a36Sopenharmony_ci	nfs.callback_tcpport=
355462306a36Sopenharmony_ci			[NFS] set the TCP port on which the NFSv4 callback
355562306a36Sopenharmony_ci			channel should listen.
355662306a36Sopenharmony_ci
355762306a36Sopenharmony_ci	nfs.enable_ino64=
355862306a36Sopenharmony_ci			[NFS] enable 64-bit inode numbers.
355962306a36Sopenharmony_ci			If zero, the NFS client will fake up a 32-bit inode
356062306a36Sopenharmony_ci			number for the readdir() and stat() syscalls instead
356162306a36Sopenharmony_ci			of returning the full 64-bit number.
356262306a36Sopenharmony_ci			The default is to return 64-bit inode numbers.
356362306a36Sopenharmony_ci
356462306a36Sopenharmony_ci	nfs.idmap_cache_timeout=
356562306a36Sopenharmony_ci			[NFS] set the maximum lifetime for idmapper cache
356662306a36Sopenharmony_ci			entries.
356762306a36Sopenharmony_ci
356862306a36Sopenharmony_ci	nfs.max_session_cb_slots=
356962306a36Sopenharmony_ci			[NFSv4.1] Sets the maximum number of session
357062306a36Sopenharmony_ci			slots the client will assign to the callback
357162306a36Sopenharmony_ci			channel. This determines the maximum number of
357262306a36Sopenharmony_ci			callbacks the client will process in parallel for
357362306a36Sopenharmony_ci			a particular server.
357462306a36Sopenharmony_ci
357562306a36Sopenharmony_ci	nfs.max_session_slots=
357662306a36Sopenharmony_ci			[NFSv4.1] Sets the maximum number of session slots
357762306a36Sopenharmony_ci			the client will attempt to negotiate with the server.
357862306a36Sopenharmony_ci			This limits the number of simultaneous RPC requests
357962306a36Sopenharmony_ci			that the client can send to the NFSv4.1 server.
358062306a36Sopenharmony_ci			Note that there is little point in setting this
358162306a36Sopenharmony_ci			value higher than the max_tcp_slot_table_limit.
358262306a36Sopenharmony_ci
358362306a36Sopenharmony_ci	nfs.nfs4_disable_idmapping=
358462306a36Sopenharmony_ci			[NFSv4] When set to the default of '1', this option
358562306a36Sopenharmony_ci			ensures that both the RPC level authentication
358662306a36Sopenharmony_ci			scheme and the NFS level operations agree to use
358762306a36Sopenharmony_ci			numeric uids/gids if the mount is using the
358862306a36Sopenharmony_ci			'sec=sys' security flavour. In effect it is
358962306a36Sopenharmony_ci			disabling idmapping, which can make migration from
359062306a36Sopenharmony_ci			legacy NFSv2/v3 systems to NFSv4 easier.
359162306a36Sopenharmony_ci			Servers that do not support this mode of operation
359262306a36Sopenharmony_ci			will be autodetected by the client, and it will fall
359362306a36Sopenharmony_ci			back to using the idmapper.
359462306a36Sopenharmony_ci			To turn off this behaviour, set the value to '0'.
359562306a36Sopenharmony_ci
359662306a36Sopenharmony_ci	nfs.nfs4_unique_id=
359762306a36Sopenharmony_ci			[NFS4] Specify an additional fixed unique ident-
359862306a36Sopenharmony_ci			ification string that NFSv4 clients can insert into
359962306a36Sopenharmony_ci			their nfs_client_id4 string.  This is typically a
360062306a36Sopenharmony_ci			UUID that is generated at system install time.
360162306a36Sopenharmony_ci
360262306a36Sopenharmony_ci	nfs.recover_lost_locks=
360362306a36Sopenharmony_ci			[NFSv4] Attempt to recover locks that were lost due
360462306a36Sopenharmony_ci			to a lease timeout on the server. Please note that
360562306a36Sopenharmony_ci			doing this risks data corruption, since there are
360662306a36Sopenharmony_ci			no guarantees that the file will remain unchanged
360762306a36Sopenharmony_ci			after the locks are lost.
360862306a36Sopenharmony_ci			If you want to enable the kernel legacy behaviour of
360962306a36Sopenharmony_ci			attempting to recover these locks, then set this
361062306a36Sopenharmony_ci			parameter to '1'.
361162306a36Sopenharmony_ci			The default parameter value of '0' causes the kernel
361262306a36Sopenharmony_ci			not to attempt recovery of lost locks.
361362306a36Sopenharmony_ci
361462306a36Sopenharmony_ci	nfs.send_implementation_id=
361562306a36Sopenharmony_ci			[NFSv4.1] Send client implementation identification
361662306a36Sopenharmony_ci			information in exchange_id requests.
361762306a36Sopenharmony_ci			If zero, no implementation identification information
361862306a36Sopenharmony_ci			will be sent.
361962306a36Sopenharmony_ci			The default is to send the implementation identification
362062306a36Sopenharmony_ci			information.
362162306a36Sopenharmony_ci
362262306a36Sopenharmony_ci	nfs4.layoutstats_timer=
362362306a36Sopenharmony_ci			[NFSv4.2] Change the rate at which the kernel sends
362462306a36Sopenharmony_ci			layoutstats to the pNFS metadata server.
362562306a36Sopenharmony_ci
362662306a36Sopenharmony_ci			Setting this to value to 0 causes the kernel to use
362762306a36Sopenharmony_ci			whatever value is the default set by the layout
362862306a36Sopenharmony_ci			driver. A non-zero value sets the minimum interval
362962306a36Sopenharmony_ci			in seconds between layoutstats transmissions.
363062306a36Sopenharmony_ci
363162306a36Sopenharmony_ci	nfsd.inter_copy_offload_enable=
363262306a36Sopenharmony_ci			[NFSv4.2] When set to 1, the server will support
363362306a36Sopenharmony_ci			server-to-server copies for which this server is
363462306a36Sopenharmony_ci			the destination of the copy.
363562306a36Sopenharmony_ci
363662306a36Sopenharmony_ci	nfsd.nfs4_disable_idmapping=
363762306a36Sopenharmony_ci			[NFSv4] When set to the default of '1', the NFSv4
363862306a36Sopenharmony_ci			server will return only numeric uids and gids to
363962306a36Sopenharmony_ci			clients using auth_sys, and will accept numeric uids
364062306a36Sopenharmony_ci			and gids from such clients.  This is intended to ease
364162306a36Sopenharmony_ci			migration from NFSv2/v3.
364262306a36Sopenharmony_ci
364362306a36Sopenharmony_ci	nfsd.nfsd4_ssc_umount_timeout=
364462306a36Sopenharmony_ci			[NFSv4.2] When used as the destination of a
364562306a36Sopenharmony_ci			server-to-server copy, knfsd temporarily mounts
364662306a36Sopenharmony_ci			the source server.  It caches the mount in case
364762306a36Sopenharmony_ci			it will be needed again, and discards it if not
364862306a36Sopenharmony_ci			used for the number of milliseconds specified by
364962306a36Sopenharmony_ci			this parameter.
365062306a36Sopenharmony_ci
365162306a36Sopenharmony_ci	nfsaddrs=	[NFS] Deprecated.  Use ip= instead.
365262306a36Sopenharmony_ci			See Documentation/admin-guide/nfs/nfsroot.rst.
365362306a36Sopenharmony_ci
365462306a36Sopenharmony_ci	nfsroot=	[NFS] nfs root filesystem for disk-less boxes.
365562306a36Sopenharmony_ci			See Documentation/admin-guide/nfs/nfsroot.rst.
365662306a36Sopenharmony_ci
365762306a36Sopenharmony_ci	nfsrootdebug	[NFS] enable nfsroot debugging messages.
365862306a36Sopenharmony_ci			See Documentation/admin-guide/nfs/nfsroot.rst.
365962306a36Sopenharmony_ci
366062306a36Sopenharmony_ci	nmi_backtrace.backtrace_idle [KNL]
366162306a36Sopenharmony_ci			Dump stacks even of idle CPUs in response to an
366262306a36Sopenharmony_ci			NMI stack-backtrace request.
366362306a36Sopenharmony_ci
366462306a36Sopenharmony_ci	nmi_debug=	[KNL,SH] Specify one or more actions to take
366562306a36Sopenharmony_ci			when a NMI is triggered.
366662306a36Sopenharmony_ci			Format: [state][,regs][,debounce][,die]
366762306a36Sopenharmony_ci
366862306a36Sopenharmony_ci	nmi_watchdog=	[KNL,BUGS=X86] Debugging features for SMP kernels
366962306a36Sopenharmony_ci			Format: [panic,][nopanic,][num]
367062306a36Sopenharmony_ci			Valid num: 0 or 1
367162306a36Sopenharmony_ci			0 - turn hardlockup detector in nmi_watchdog off
367262306a36Sopenharmony_ci			1 - turn hardlockup detector in nmi_watchdog on
367362306a36Sopenharmony_ci			When panic is specified, panic when an NMI watchdog
367462306a36Sopenharmony_ci			timeout occurs (or 'nopanic' to not panic on an NMI
367562306a36Sopenharmony_ci			watchdog, if CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is set)
367662306a36Sopenharmony_ci			To disable both hard and soft lockup detectors,
367762306a36Sopenharmony_ci			please see 'nowatchdog'.
367862306a36Sopenharmony_ci			This is useful when you use a panic=... timeout and
367962306a36Sopenharmony_ci			need the box quickly up again.
368062306a36Sopenharmony_ci
368162306a36Sopenharmony_ci			These settings can be accessed at runtime via
368262306a36Sopenharmony_ci			the nmi_watchdog and hardlockup_panic sysctls.
368362306a36Sopenharmony_ci
368462306a36Sopenharmony_ci	no387		[BUGS=X86-32] Tells the kernel to use the 387 maths
368562306a36Sopenharmony_ci			emulation library even if a 387 maths coprocessor
368662306a36Sopenharmony_ci			is present.
368762306a36Sopenharmony_ci
368862306a36Sopenharmony_ci	no4lvl		[RISCV] Disable 4-level and 5-level paging modes. Forces
368962306a36Sopenharmony_ci			kernel to use 3-level paging instead.
369062306a36Sopenharmony_ci
369162306a36Sopenharmony_ci	no5lvl		[X86-64,RISCV] Disable 5-level paging mode. Forces
369262306a36Sopenharmony_ci			kernel to use 4-level paging instead.
369362306a36Sopenharmony_ci
369462306a36Sopenharmony_ci	noaliencache	[MM, NUMA, SLAB] Disables the allocation of alien
369562306a36Sopenharmony_ci			caches in the slab allocator.  Saves per-node memory,
369662306a36Sopenharmony_ci			but will impact performance.
369762306a36Sopenharmony_ci
369862306a36Sopenharmony_ci	noalign		[KNL,ARM]
369962306a36Sopenharmony_ci
370062306a36Sopenharmony_ci	noaltinstr	[S390] Disables alternative instructions patching
370162306a36Sopenharmony_ci			(CPU alternatives feature).
370262306a36Sopenharmony_ci
370362306a36Sopenharmony_ci	noapic		[SMP,APIC] Tells the kernel to not make use of any
370462306a36Sopenharmony_ci			IOAPICs that may be present in the system.
370562306a36Sopenharmony_ci
370662306a36Sopenharmony_ci	noautogroup	Disable scheduler automatic task group creation.
370762306a36Sopenharmony_ci
370862306a36Sopenharmony_ci	nocache		[ARM]
370962306a36Sopenharmony_ci
371062306a36Sopenharmony_ci	no_console_suspend
371162306a36Sopenharmony_ci			[HW] Never suspend the console
371262306a36Sopenharmony_ci			Disable suspending of consoles during suspend and
371362306a36Sopenharmony_ci			hibernate operations.  Once disabled, debugging
371462306a36Sopenharmony_ci			messages can reach various consoles while the rest
371562306a36Sopenharmony_ci			of the system is being put to sleep (ie, while
371662306a36Sopenharmony_ci			debugging driver suspend/resume hooks).  This may
371762306a36Sopenharmony_ci			not work reliably with all consoles, but is known
371862306a36Sopenharmony_ci			to work with serial and VGA consoles.
371962306a36Sopenharmony_ci			To facilitate more flexible debugging, we also add
372062306a36Sopenharmony_ci			console_suspend, a printk module parameter to control
372162306a36Sopenharmony_ci			it. Users could use console_suspend (usually
372262306a36Sopenharmony_ci			/sys/module/printk/parameters/console_suspend) to
372362306a36Sopenharmony_ci			turn on/off it dynamically.
372462306a36Sopenharmony_ci
372562306a36Sopenharmony_ci	no_debug_objects
372662306a36Sopenharmony_ci			[KNL] Disable object debugging
372762306a36Sopenharmony_ci
372862306a36Sopenharmony_ci	nodsp		[SH] Disable hardware DSP at boot time.
372962306a36Sopenharmony_ci
373062306a36Sopenharmony_ci	noefi		Disable EFI runtime services support.
373162306a36Sopenharmony_ci
373262306a36Sopenharmony_ci	no_entry_flush  [PPC] Don't flush the L1-D cache when entering the kernel.
373362306a36Sopenharmony_ci
373462306a36Sopenharmony_ci	noexec		[IA-64]
373562306a36Sopenharmony_ci
373662306a36Sopenharmony_ci	noexec32	[X86-64]
373762306a36Sopenharmony_ci			This affects only 32-bit executables.
373862306a36Sopenharmony_ci			noexec32=on: enable non-executable mappings (default)
373962306a36Sopenharmony_ci				read doesn't imply executable mappings
374062306a36Sopenharmony_ci			noexec32=off: disable non-executable mappings
374162306a36Sopenharmony_ci				read implies executable mappings
374262306a36Sopenharmony_ci
374362306a36Sopenharmony_ci	no_file_caps	Tells the kernel not to honor file capabilities.  The
374462306a36Sopenharmony_ci			only way then for a file to be executed with privilege
374562306a36Sopenharmony_ci			is to be setuid root or executed by root.
374662306a36Sopenharmony_ci
374762306a36Sopenharmony_ci	nofpu		[MIPS,SH] Disable hardware FPU at boot time.
374862306a36Sopenharmony_ci
374962306a36Sopenharmony_ci	nofsgsbase	[X86] Disables FSGSBASE instructions.
375062306a36Sopenharmony_ci
375162306a36Sopenharmony_ci	nofxsr		[BUGS=X86-32] Disables x86 floating point extended
375262306a36Sopenharmony_ci			register save and restore. The kernel will only save
375362306a36Sopenharmony_ci			legacy floating-point registers on task switch.
375462306a36Sopenharmony_ci
375562306a36Sopenharmony_ci	nohalt		[IA-64] Tells the kernel not to use the power saving
375662306a36Sopenharmony_ci			function PAL_HALT_LIGHT when idle. This increases
375762306a36Sopenharmony_ci			power-consumption. On the positive side, it reduces
375862306a36Sopenharmony_ci			interrupt wake-up latency, which may improve performance
375962306a36Sopenharmony_ci			in certain environments such as networked servers or
376062306a36Sopenharmony_ci			real-time systems.
376162306a36Sopenharmony_ci
376262306a36Sopenharmony_ci	no_hash_pointers
376362306a36Sopenharmony_ci			Force pointers printed to the console or buffers to be
376462306a36Sopenharmony_ci			unhashed.  By default, when a pointer is printed via %p
376562306a36Sopenharmony_ci			format string, that pointer is "hashed", i.e. obscured
376662306a36Sopenharmony_ci			by hashing the pointer value.  This is a security feature
376762306a36Sopenharmony_ci			that hides actual kernel addresses from unprivileged
376862306a36Sopenharmony_ci			users, but it also makes debugging the kernel more
376962306a36Sopenharmony_ci			difficult since unequal pointers can no longer be
377062306a36Sopenharmony_ci			compared.  However, if this command-line option is
377162306a36Sopenharmony_ci			specified, then all normal pointers will have their true
377262306a36Sopenharmony_ci			value printed. This option should only be specified when
377362306a36Sopenharmony_ci			debugging the kernel.  Please do not use on production
377462306a36Sopenharmony_ci			kernels.
377562306a36Sopenharmony_ci
377662306a36Sopenharmony_ci	nohibernate	[HIBERNATION] Disable hibernation and resume.
377762306a36Sopenharmony_ci
377862306a36Sopenharmony_ci	nohlt		[ARM,ARM64,MICROBLAZE,MIPS,PPC,SH] Forces the kernel to
377962306a36Sopenharmony_ci			busy wait in do_idle() and not use the arch_cpu_idle()
378062306a36Sopenharmony_ci			implementation; requires CONFIG_GENERIC_IDLE_POLL_SETUP
378162306a36Sopenharmony_ci			to be effective. This is useful on platforms where the
378262306a36Sopenharmony_ci			sleep(SH) or wfi(ARM,ARM64) instructions do not work
378362306a36Sopenharmony_ci			correctly or when doing power measurements to evaluate
378462306a36Sopenharmony_ci			the impact of the sleep instructions. This is also
378562306a36Sopenharmony_ci			useful when using JTAG debugger.
378662306a36Sopenharmony_ci
378762306a36Sopenharmony_ci	nohugeiomap	[KNL,X86,PPC,ARM64] Disable kernel huge I/O mappings.
378862306a36Sopenharmony_ci
378962306a36Sopenharmony_ci	nohugevmalloc	[KNL,X86,PPC,ARM64] Disable kernel huge vmalloc mappings.
379062306a36Sopenharmony_ci
379162306a36Sopenharmony_ci	nohz=		[KNL] Boottime enable/disable dynamic ticks
379262306a36Sopenharmony_ci			Valid arguments: on, off
379362306a36Sopenharmony_ci			Default: on
379462306a36Sopenharmony_ci
379562306a36Sopenharmony_ci	nohz_full=	[KNL,BOOT,SMP,ISOL]
379662306a36Sopenharmony_ci			The argument is a cpu list, as described above.
379762306a36Sopenharmony_ci			In kernels built with CONFIG_NO_HZ_FULL=y, set
379862306a36Sopenharmony_ci			the specified list of CPUs whose tick will be stopped
379962306a36Sopenharmony_ci			whenever possible. The boot CPU will be forced outside
380062306a36Sopenharmony_ci			the range to maintain the timekeeping.  Any CPUs
380162306a36Sopenharmony_ci			in this list will have their RCU callbacks offloaded,
380262306a36Sopenharmony_ci			just as if they had also been called out in the
380362306a36Sopenharmony_ci			rcu_nocbs= boot parameter.
380462306a36Sopenharmony_ci
380562306a36Sopenharmony_ci			Note that this argument takes precedence over
380662306a36Sopenharmony_ci			the CONFIG_RCU_NOCB_CPU_DEFAULT_ALL option.
380762306a36Sopenharmony_ci
380862306a36Sopenharmony_ci	noinitrd	[RAM] Tells the kernel not to load any configured
380962306a36Sopenharmony_ci			initial RAM disk.
381062306a36Sopenharmony_ci
381162306a36Sopenharmony_ci	nointremap	[X86-64, Intel-IOMMU] Do not enable interrupt
381262306a36Sopenharmony_ci			remapping.
381362306a36Sopenharmony_ci			[Deprecated - use intremap=off]
381462306a36Sopenharmony_ci
381562306a36Sopenharmony_ci	nointroute	[IA-64]
381662306a36Sopenharmony_ci
381762306a36Sopenharmony_ci	noinvpcid	[X86] Disable the INVPCID cpu feature.
381862306a36Sopenharmony_ci
381962306a36Sopenharmony_ci	noiotrap	[SH] Disables trapped I/O port accesses.
382062306a36Sopenharmony_ci
382162306a36Sopenharmony_ci	noirqdebug	[X86-32] Disables the code which attempts to detect and
382262306a36Sopenharmony_ci			disable unhandled interrupt sources.
382362306a36Sopenharmony_ci
382462306a36Sopenharmony_ci	noisapnp	[ISAPNP] Disables ISA PnP code.
382562306a36Sopenharmony_ci
382662306a36Sopenharmony_ci	nojitter	[IA-64] Disables jitter checking for ITC timers.
382762306a36Sopenharmony_ci
382862306a36Sopenharmony_ci	nokaslr		[KNL]
382962306a36Sopenharmony_ci			When CONFIG_RANDOMIZE_BASE is set, this disables
383062306a36Sopenharmony_ci			kernel and module base offset ASLR (Address Space
383162306a36Sopenharmony_ci			Layout Randomization).
383262306a36Sopenharmony_ci
383362306a36Sopenharmony_ci	no-kvmapf	[X86,KVM] Disable paravirtualized asynchronous page
383462306a36Sopenharmony_ci			fault handling.
383562306a36Sopenharmony_ci
383662306a36Sopenharmony_ci	no-kvmclock	[X86,KVM] Disable paravirtualized KVM clock driver
383762306a36Sopenharmony_ci
383862306a36Sopenharmony_ci	nolapic		[X86-32,APIC] Do not enable or use the local APIC.
383962306a36Sopenharmony_ci
384062306a36Sopenharmony_ci	nolapic_timer	[X86-32,APIC] Do not use the local APIC timer.
384162306a36Sopenharmony_ci
384262306a36Sopenharmony_ci	nomca		[IA-64] Disable machine check abort handling
384362306a36Sopenharmony_ci
384462306a36Sopenharmony_ci	nomce		[X86-32] Disable Machine Check Exception
384562306a36Sopenharmony_ci
384662306a36Sopenharmony_ci	nomfgpt		[X86-32] Disable Multi-Function General Purpose
384762306a36Sopenharmony_ci			Timer usage (for AMD Geode machines).
384862306a36Sopenharmony_ci
384962306a36Sopenharmony_ci	nomodeset	Disable kernel modesetting. Most systems' firmware
385062306a36Sopenharmony_ci			sets up a display mode and provides framebuffer memory
385162306a36Sopenharmony_ci			for output. With nomodeset, DRM and fbdev drivers will
385262306a36Sopenharmony_ci			not load if they could possibly displace the pre-
385362306a36Sopenharmony_ci			initialized output. Only the system framebuffer will
385462306a36Sopenharmony_ci			be available for use. The respective drivers will not
385562306a36Sopenharmony_ci			perform display-mode changes or accelerated rendering.
385662306a36Sopenharmony_ci
385762306a36Sopenharmony_ci			Useful as error fallback, or for testing and debugging.
385862306a36Sopenharmony_ci
385962306a36Sopenharmony_ci	nomodule	Disable module load
386062306a36Sopenharmony_ci
386162306a36Sopenharmony_ci	nonmi_ipi	[X86] Disable using NMI IPIs during panic/reboot to
386262306a36Sopenharmony_ci			shutdown the other cpus.  Instead use the REBOOT_VECTOR
386362306a36Sopenharmony_ci			irq.
386462306a36Sopenharmony_ci
386562306a36Sopenharmony_ci	nopat		[X86] Disable PAT (page attribute table extension of
386662306a36Sopenharmony_ci			pagetables) support.
386762306a36Sopenharmony_ci
386862306a36Sopenharmony_ci	nopcid		[X86-64] Disable the PCID cpu feature.
386962306a36Sopenharmony_ci
387062306a36Sopenharmony_ci	nopku		[X86] Disable Memory Protection Keys CPU feature found
387162306a36Sopenharmony_ci			in some Intel CPUs.
387262306a36Sopenharmony_ci
387362306a36Sopenharmony_ci	nopti		[X86-64]
387462306a36Sopenharmony_ci			Equivalent to pti=off
387562306a36Sopenharmony_ci
387662306a36Sopenharmony_ci	nopv=		[X86,XEN,KVM,HYPER_V,VMWARE]
387762306a36Sopenharmony_ci			Disables the PV optimizations forcing the guest to run
387862306a36Sopenharmony_ci			as generic guest with no PV drivers. Currently support
387962306a36Sopenharmony_ci			XEN HVM, KVM, HYPER_V and VMWARE guest.
388062306a36Sopenharmony_ci
388162306a36Sopenharmony_ci	nopvspin	[X86,XEN,KVM]
388262306a36Sopenharmony_ci			Disables the qspinlock slow path using PV optimizations
388362306a36Sopenharmony_ci			which allow the hypervisor to 'idle' the guest on lock
388462306a36Sopenharmony_ci			contention.
388562306a36Sopenharmony_ci
388662306a36Sopenharmony_ci	norandmaps	Don't use address space randomization.  Equivalent to
388762306a36Sopenharmony_ci			echo 0 > /proc/sys/kernel/randomize_va_space
388862306a36Sopenharmony_ci
388962306a36Sopenharmony_ci	noreplace-smp	[X86-32,SMP] Don't replace SMP instructions
389062306a36Sopenharmony_ci			with UP alternatives
389162306a36Sopenharmony_ci
389262306a36Sopenharmony_ci	noresume	[SWSUSP] Disables resume and restores original swap
389362306a36Sopenharmony_ci			space.
389462306a36Sopenharmony_ci
389562306a36Sopenharmony_ci	nosbagart	[IA-64]
389662306a36Sopenharmony_ci
389762306a36Sopenharmony_ci	no-scroll	[VGA] Disables scrollback.
389862306a36Sopenharmony_ci			This is required for the Braillex ib80-piezo Braille
389962306a36Sopenharmony_ci			reader made by F.H. Papenmeier (Germany).
390062306a36Sopenharmony_ci
390162306a36Sopenharmony_ci	nosgx		[X86-64,SGX] Disables Intel SGX kernel support.
390262306a36Sopenharmony_ci
390362306a36Sopenharmony_ci	nosmap		[PPC]
390462306a36Sopenharmony_ci			Disable SMAP (Supervisor Mode Access Prevention)
390562306a36Sopenharmony_ci			even if it is supported by processor.
390662306a36Sopenharmony_ci
390762306a36Sopenharmony_ci	nosmep		[PPC64s]
390862306a36Sopenharmony_ci			Disable SMEP (Supervisor Mode Execution Prevention)
390962306a36Sopenharmony_ci			even if it is supported by processor.
391062306a36Sopenharmony_ci
391162306a36Sopenharmony_ci	nosmp		[SMP] Tells an SMP kernel to act as a UP kernel,
391262306a36Sopenharmony_ci			and disable the IO APIC.  legacy for "maxcpus=0".
391362306a36Sopenharmony_ci
391462306a36Sopenharmony_ci	nosmt		[KNL,MIPS,PPC,S390] Disable symmetric multithreading (SMT).
391562306a36Sopenharmony_ci			Equivalent to smt=1.
391662306a36Sopenharmony_ci
391762306a36Sopenharmony_ci			[KNL,X86,PPC] Disable symmetric multithreading (SMT).
391862306a36Sopenharmony_ci			nosmt=force: Force disable SMT, cannot be undone
391962306a36Sopenharmony_ci				     via the sysfs control file.
392062306a36Sopenharmony_ci
392162306a36Sopenharmony_ci	nosoftlockup	[KNL] Disable the soft-lockup detector.
392262306a36Sopenharmony_ci
392362306a36Sopenharmony_ci	nospec_store_bypass_disable
392462306a36Sopenharmony_ci			[HW] Disable all mitigations for the Speculative Store Bypass vulnerability
392562306a36Sopenharmony_ci
392662306a36Sopenharmony_ci	nospectre_bhb	[ARM64] Disable all mitigations for Spectre-BHB (branch
392762306a36Sopenharmony_ci			history injection) vulnerability. System may allow data leaks
392862306a36Sopenharmony_ci			with this option.
392962306a36Sopenharmony_ci
393062306a36Sopenharmony_ci	nospectre_v1	[X86,PPC] Disable mitigations for Spectre Variant 1
393162306a36Sopenharmony_ci			(bounds check bypass). With this option data leaks are
393262306a36Sopenharmony_ci			possible in the system.
393362306a36Sopenharmony_ci
393462306a36Sopenharmony_ci	nospectre_v2	[X86,PPC_E500,ARM64] Disable all mitigations for
393562306a36Sopenharmony_ci			the Spectre variant 2 (indirect branch prediction)
393662306a36Sopenharmony_ci			vulnerability. System may allow data leaks with this
393762306a36Sopenharmony_ci			option.
393862306a36Sopenharmony_ci
393962306a36Sopenharmony_ci	no-steal-acc	[X86,PV_OPS,ARM64,PPC/PSERIES] Disable paravirtualized
394062306a36Sopenharmony_ci			steal time accounting. steal time is computed, but
394162306a36Sopenharmony_ci			won't influence scheduler behaviour
394262306a36Sopenharmony_ci
394362306a36Sopenharmony_ci	nosync		[HW,M68K] Disables sync negotiation for all devices.
394462306a36Sopenharmony_ci
394562306a36Sopenharmony_ci	no_timer_check	[X86,APIC] Disables the code which tests for
394662306a36Sopenharmony_ci			broken timer IRQ sources.
394762306a36Sopenharmony_ci
394862306a36Sopenharmony_ci	no_uaccess_flush
394962306a36Sopenharmony_ci	                [PPC] Don't flush the L1-D cache after accessing user data.
395062306a36Sopenharmony_ci
395162306a36Sopenharmony_ci	novmcoredd	[KNL,KDUMP]
395262306a36Sopenharmony_ci			Disable device dump. Device dump allows drivers to
395362306a36Sopenharmony_ci			append dump data to vmcore so you can collect driver
395462306a36Sopenharmony_ci			specified debug info.  Drivers can append the data
395562306a36Sopenharmony_ci			without any limit and this data is stored in memory,
395662306a36Sopenharmony_ci			so this may cause significant memory stress.  Disabling
395762306a36Sopenharmony_ci			device dump can help save memory but the driver debug
395862306a36Sopenharmony_ci			data will be no longer available.  This parameter
395962306a36Sopenharmony_ci			is only available when CONFIG_PROC_VMCORE_DEVICE_DUMP
396062306a36Sopenharmony_ci			is set.
396162306a36Sopenharmony_ci
396262306a36Sopenharmony_ci	no-vmw-sched-clock
396362306a36Sopenharmony_ci			[X86,PV_OPS] Disable paravirtualized VMware scheduler
396462306a36Sopenharmony_ci			clock and use the default one.
396562306a36Sopenharmony_ci
396662306a36Sopenharmony_ci	nowatchdog	[KNL] Disable both lockup detectors, i.e.
396762306a36Sopenharmony_ci			soft-lockup and NMI watchdog (hard-lockup).
396862306a36Sopenharmony_ci
396962306a36Sopenharmony_ci	nowb		[ARM]
397062306a36Sopenharmony_ci
397162306a36Sopenharmony_ci	nox2apic	[X86-64,APIC] Do not enable x2APIC mode.
397262306a36Sopenharmony_ci
397362306a36Sopenharmony_ci			NOTE: this parameter will be ignored on systems with the
397462306a36Sopenharmony_ci			LEGACY_XAPIC_DISABLED bit set in the
397562306a36Sopenharmony_ci			IA32_XAPIC_DISABLE_STATUS MSR.
397662306a36Sopenharmony_ci
397762306a36Sopenharmony_ci	noxsave		[BUGS=X86] Disables x86 extended register state save
397862306a36Sopenharmony_ci			and restore using xsave. The kernel will fallback to
397962306a36Sopenharmony_ci			enabling legacy floating-point and sse state.
398062306a36Sopenharmony_ci
398162306a36Sopenharmony_ci	noxsaveopt	[X86] Disables xsaveopt used in saving x86 extended
398262306a36Sopenharmony_ci			register states. The kernel will fall back to use
398362306a36Sopenharmony_ci			xsave to save the states. By using this parameter,
398462306a36Sopenharmony_ci			performance of saving the states is degraded because
398562306a36Sopenharmony_ci			xsave doesn't support modified optimization while
398662306a36Sopenharmony_ci			xsaveopt supports it on xsaveopt enabled systems.
398762306a36Sopenharmony_ci
398862306a36Sopenharmony_ci	noxsaves	[X86] Disables xsaves and xrstors used in saving and
398962306a36Sopenharmony_ci			restoring x86 extended register state in compacted
399062306a36Sopenharmony_ci			form of xsave area. The kernel will fall back to use
399162306a36Sopenharmony_ci			xsaveopt and xrstor to save and restore the states
399262306a36Sopenharmony_ci			in standard form of xsave area. By using this
399362306a36Sopenharmony_ci			parameter, xsave area per process might occupy more
399462306a36Sopenharmony_ci			memory on xsaves enabled systems.
399562306a36Sopenharmony_ci
399662306a36Sopenharmony_ci	nps_mtm_hs_ctr=	[KNL,ARC]
399762306a36Sopenharmony_ci			This parameter sets the maximum duration, in
399862306a36Sopenharmony_ci			cycles, each HW thread of the CTOP can run
399962306a36Sopenharmony_ci			without interruptions, before HW switches it.
400062306a36Sopenharmony_ci			The actual maximum duration is 16 times this
400162306a36Sopenharmony_ci			parameter's value.
400262306a36Sopenharmony_ci			Format: integer between 1 and 255
400362306a36Sopenharmony_ci			Default: 255
400462306a36Sopenharmony_ci
400562306a36Sopenharmony_ci	nptcg=		[IA-64] Override max number of concurrent global TLB
400662306a36Sopenharmony_ci			purges which is reported from either PAL_VM_SUMMARY or
400762306a36Sopenharmony_ci			SAL PALO.
400862306a36Sopenharmony_ci
400962306a36Sopenharmony_ci	nr_cpus=	[SMP] Maximum number of processors that	an SMP kernel
401062306a36Sopenharmony_ci			could support.  nr_cpus=n : n >= 1 limits the kernel to
401162306a36Sopenharmony_ci			support 'n' processors. It could be larger than the
401262306a36Sopenharmony_ci			number of already plugged CPU during bootup, later in
401362306a36Sopenharmony_ci			runtime you can physically add extra cpu until it reaches
401462306a36Sopenharmony_ci			n. So during boot up some boot time memory for per-cpu
401562306a36Sopenharmony_ci			variables need be pre-allocated for later physical cpu
401662306a36Sopenharmony_ci			hot plugging.
401762306a36Sopenharmony_ci
401862306a36Sopenharmony_ci	nr_uarts=	[SERIAL] maximum number of UARTs to be registered.
401962306a36Sopenharmony_ci
402062306a36Sopenharmony_ci	numa=off 	[KNL, ARM64, PPC, RISCV, SPARC, X86] Disable NUMA, Only
402162306a36Sopenharmony_ci			set up a single NUMA node spanning all memory.
402262306a36Sopenharmony_ci
402362306a36Sopenharmony_ci	numa_balancing=	[KNL,ARM64,PPC,RISCV,S390,X86] Enable or disable automatic
402462306a36Sopenharmony_ci			NUMA balancing.
402562306a36Sopenharmony_ci			Allowed values are enable and disable
402662306a36Sopenharmony_ci
402762306a36Sopenharmony_ci	numa_zonelist_order= [KNL, BOOT] Select zonelist order for NUMA.
402862306a36Sopenharmony_ci			'node', 'default' can be specified
402962306a36Sopenharmony_ci			This can be set from sysctl after boot.
403062306a36Sopenharmony_ci			See Documentation/admin-guide/sysctl/vm.rst for details.
403162306a36Sopenharmony_ci
403262306a36Sopenharmony_ci	ohci1394_dma=early	[HW] enable debugging via the ohci1394 driver.
403362306a36Sopenharmony_ci			See Documentation/core-api/debugging-via-ohci1394.rst for more
403462306a36Sopenharmony_ci			info.
403562306a36Sopenharmony_ci
403662306a36Sopenharmony_ci	olpc_ec_timeout= [OLPC] ms delay when issuing EC commands
403762306a36Sopenharmony_ci			Rather than timing out after 20 ms if an EC
403862306a36Sopenharmony_ci			command is not properly ACKed, override the length
403962306a36Sopenharmony_ci			of the timeout.  We have interrupts disabled while
404062306a36Sopenharmony_ci			waiting for the ACK, so if this is set too high
404162306a36Sopenharmony_ci			interrupts *may* be lost!
404262306a36Sopenharmony_ci
404362306a36Sopenharmony_ci	omap_mux=	[OMAP] Override bootloader pin multiplexing.
404462306a36Sopenharmony_ci			Format: <mux_mode0.mode_name=value>...
404562306a36Sopenharmony_ci			For example, to override I2C bus2:
404662306a36Sopenharmony_ci			omap_mux=i2c2_scl.i2c2_scl=0x100,i2c2_sda.i2c2_sda=0x100
404762306a36Sopenharmony_ci
404862306a36Sopenharmony_ci	onenand.bdry=	[HW,MTD] Flex-OneNAND Boundary Configuration
404962306a36Sopenharmony_ci
405062306a36Sopenharmony_ci			Format: [die0_boundary][,die0_lock][,die1_boundary][,die1_lock]
405162306a36Sopenharmony_ci
405262306a36Sopenharmony_ci			boundary - index of last SLC block on Flex-OneNAND.
405362306a36Sopenharmony_ci				   The remaining blocks are configured as MLC blocks.
405462306a36Sopenharmony_ci			lock	 - Configure if Flex-OneNAND boundary should be locked.
405562306a36Sopenharmony_ci				   Once locked, the boundary cannot be changed.
405662306a36Sopenharmony_ci				   1 indicates lock status, 0 indicates unlock status.
405762306a36Sopenharmony_ci
405862306a36Sopenharmony_ci	oops=panic	Always panic on oopses. Default is to just kill the
405962306a36Sopenharmony_ci			process, but there is a small probability of
406062306a36Sopenharmony_ci			deadlocking the machine.
406162306a36Sopenharmony_ci			This will also cause panics on machine check exceptions.
406262306a36Sopenharmony_ci			Useful together with panic=30 to trigger a reboot.
406362306a36Sopenharmony_ci
406462306a36Sopenharmony_ci	page_alloc.shuffle=
406562306a36Sopenharmony_ci			[KNL] Boolean flag to control whether the page allocator
406662306a36Sopenharmony_ci			should randomize its free lists. The randomization may
406762306a36Sopenharmony_ci			be automatically enabled if the kernel detects it is
406862306a36Sopenharmony_ci			running on a platform with a direct-mapped memory-side
406962306a36Sopenharmony_ci			cache, and this parameter can be used to
407062306a36Sopenharmony_ci			override/disable that behavior. The state of the flag
407162306a36Sopenharmony_ci			can be read from sysfs at:
407262306a36Sopenharmony_ci			/sys/module/page_alloc/parameters/shuffle.
407362306a36Sopenharmony_ci
407462306a36Sopenharmony_ci	page_owner=	[KNL] Boot-time page_owner enabling option.
407562306a36Sopenharmony_ci			Storage of the information about who allocated
407662306a36Sopenharmony_ci			each page is disabled in default. With this switch,
407762306a36Sopenharmony_ci			we can turn it on.
407862306a36Sopenharmony_ci			on: enable the feature
407962306a36Sopenharmony_ci
408062306a36Sopenharmony_ci	page_poison=	[KNL] Boot-time parameter changing the state of
408162306a36Sopenharmony_ci			poisoning on the buddy allocator, available with
408262306a36Sopenharmony_ci			CONFIG_PAGE_POISONING=y.
408362306a36Sopenharmony_ci			off: turn off poisoning (default)
408462306a36Sopenharmony_ci			on: turn on poisoning
408562306a36Sopenharmony_ci
408662306a36Sopenharmony_ci	page_reporting.page_reporting_order=
408762306a36Sopenharmony_ci			[KNL] Minimal page reporting order
408862306a36Sopenharmony_ci			Format: <integer>
408962306a36Sopenharmony_ci			Adjust the minimal page reporting order. The page
409062306a36Sopenharmony_ci			reporting is disabled when it exceeds MAX_ORDER.
409162306a36Sopenharmony_ci
409262306a36Sopenharmony_ci	panic=		[KNL] Kernel behaviour on panic: delay <timeout>
409362306a36Sopenharmony_ci			timeout > 0: seconds before rebooting
409462306a36Sopenharmony_ci			timeout = 0: wait forever
409562306a36Sopenharmony_ci			timeout < 0: reboot immediately
409662306a36Sopenharmony_ci			Format: <timeout>
409762306a36Sopenharmony_ci
409862306a36Sopenharmony_ci	panic_on_taint=	Bitmask for conditionally calling panic() in add_taint()
409962306a36Sopenharmony_ci			Format: <hex>[,nousertaint]
410062306a36Sopenharmony_ci			Hexadecimal bitmask representing the set of TAINT flags
410162306a36Sopenharmony_ci			that will cause the kernel to panic when add_taint() is
410262306a36Sopenharmony_ci			called with any of the flags in this set.
410362306a36Sopenharmony_ci			The optional switch "nousertaint" can be utilized to
410462306a36Sopenharmony_ci			prevent userspace forced crashes by writing to sysctl
410562306a36Sopenharmony_ci			/proc/sys/kernel/tainted any flagset matching with the
410662306a36Sopenharmony_ci			bitmask set on panic_on_taint.
410762306a36Sopenharmony_ci			See Documentation/admin-guide/tainted-kernels.rst for
410862306a36Sopenharmony_ci			extra details on the taint flags that users can pick
410962306a36Sopenharmony_ci			to compose the bitmask to assign to panic_on_taint.
411062306a36Sopenharmony_ci
411162306a36Sopenharmony_ci	panic_on_warn=1	panic() instead of WARN().  Useful to cause kdump
411262306a36Sopenharmony_ci			on a WARN().
411362306a36Sopenharmony_ci
411462306a36Sopenharmony_ci	panic_print=	Bitmask for printing system info when panic happens.
411562306a36Sopenharmony_ci			User can chose combination of the following bits:
411662306a36Sopenharmony_ci			bit 0: print all tasks info
411762306a36Sopenharmony_ci			bit 1: print system memory info
411862306a36Sopenharmony_ci			bit 2: print timer info
411962306a36Sopenharmony_ci			bit 3: print locks info if CONFIG_LOCKDEP is on
412062306a36Sopenharmony_ci			bit 4: print ftrace buffer
412162306a36Sopenharmony_ci			bit 5: print all printk messages in buffer
412262306a36Sopenharmony_ci			bit 6: print all CPUs backtrace (if available in the arch)
412362306a36Sopenharmony_ci			*Be aware* that this option may print a _lot_ of lines,
412462306a36Sopenharmony_ci			so there are risks of losing older messages in the log.
412562306a36Sopenharmony_ci			Use this option carefully, maybe worth to setup a
412662306a36Sopenharmony_ci			bigger log buffer with "log_buf_len" along with this.
412762306a36Sopenharmony_ci
412862306a36Sopenharmony_ci	parkbd.port=	[HW] Parallel port number the keyboard adapter is
412962306a36Sopenharmony_ci			connected to, default is 0.
413062306a36Sopenharmony_ci			Format: <parport#>
413162306a36Sopenharmony_ci	parkbd.mode=	[HW] Parallel port keyboard adapter mode of operation,
413262306a36Sopenharmony_ci			0 for XT, 1 for AT (default is AT).
413362306a36Sopenharmony_ci			Format: <mode>
413462306a36Sopenharmony_ci
413562306a36Sopenharmony_ci	parport=	[HW,PPT] Specify parallel ports. 0 disables.
413662306a36Sopenharmony_ci			Format: { 0 | auto | 0xBBB[,IRQ[,DMA]] }
413762306a36Sopenharmony_ci			Use 'auto' to force the driver to use any
413862306a36Sopenharmony_ci			IRQ/DMA settings detected (the default is to
413962306a36Sopenharmony_ci			ignore detected IRQ/DMA settings because of
414062306a36Sopenharmony_ci			possible conflicts). You can specify the base
414162306a36Sopenharmony_ci			address, IRQ, and DMA settings; IRQ and DMA
414262306a36Sopenharmony_ci			should be numbers, or 'auto' (for using detected
414362306a36Sopenharmony_ci			settings on that particular port), or 'nofifo'
414462306a36Sopenharmony_ci			(to avoid using a FIFO even if it is detected).
414562306a36Sopenharmony_ci			Parallel ports are assigned in the order they
414662306a36Sopenharmony_ci			are specified on the command line, starting
414762306a36Sopenharmony_ci			with parport0.
414862306a36Sopenharmony_ci
414962306a36Sopenharmony_ci	parport_init_mode=	[HW,PPT]
415062306a36Sopenharmony_ci			Configure VIA parallel port to operate in
415162306a36Sopenharmony_ci			a specific mode. This is necessary on Pegasos
415262306a36Sopenharmony_ci			computer where firmware has no options for setting
415362306a36Sopenharmony_ci			up parallel port mode and sets it to spp.
415462306a36Sopenharmony_ci			Currently this function knows 686a and 8231 chips.
415562306a36Sopenharmony_ci			Format: [spp|ps2|epp|ecp|ecpepp]
415662306a36Sopenharmony_ci
415762306a36Sopenharmony_ci	pata_legacy.all=	[HW,LIBATA]
415862306a36Sopenharmony_ci			Format: <int>
415962306a36Sopenharmony_ci			Set to non-zero to probe primary and secondary ISA
416062306a36Sopenharmony_ci			port ranges on PCI systems where no PCI PATA device
416162306a36Sopenharmony_ci			has been found at either range.  Disabled by default.
416262306a36Sopenharmony_ci
416362306a36Sopenharmony_ci	pata_legacy.autospeed=	[HW,LIBATA]
416462306a36Sopenharmony_ci			Format: <int>
416562306a36Sopenharmony_ci			Set to non-zero if a chip is present that snoops speed
416662306a36Sopenharmony_ci			changes.  Disabled by default.
416762306a36Sopenharmony_ci
416862306a36Sopenharmony_ci	pata_legacy.ht6560a=	[HW,LIBATA]
416962306a36Sopenharmony_ci			Format: <int>
417062306a36Sopenharmony_ci			Set to 1, 2, or 3 for HT 6560A on the primary channel,
417162306a36Sopenharmony_ci			the secondary channel, or both channels respectively.
417262306a36Sopenharmony_ci			Disabled by default.
417362306a36Sopenharmony_ci
417462306a36Sopenharmony_ci	pata_legacy.ht6560b=	[HW,LIBATA]
417562306a36Sopenharmony_ci			Format: <int>
417662306a36Sopenharmony_ci			Set to 1, 2, or 3 for HT 6560B on the primary channel,
417762306a36Sopenharmony_ci			the secondary channel, or both channels respectively.
417862306a36Sopenharmony_ci			Disabled by default.
417962306a36Sopenharmony_ci
418062306a36Sopenharmony_ci	pata_legacy.iordy_mask=	[HW,LIBATA]
418162306a36Sopenharmony_ci			Format: <int>
418262306a36Sopenharmony_ci			IORDY enable mask.  Set individual bits to allow IORDY
418362306a36Sopenharmony_ci			for the respective channel.  Bit 0 is for the first
418462306a36Sopenharmony_ci			legacy channel handled by this driver, bit 1 is for
418562306a36Sopenharmony_ci			the second channel, and so on.  The sequence will often
418662306a36Sopenharmony_ci			correspond to the primary legacy channel, the secondary
418762306a36Sopenharmony_ci			legacy channel, and so on, but the handling of a PCI
418862306a36Sopenharmony_ci			bus and the use of other driver options may interfere
418962306a36Sopenharmony_ci			with the sequence.  By default IORDY is allowed across
419062306a36Sopenharmony_ci			all channels.
419162306a36Sopenharmony_ci
419262306a36Sopenharmony_ci	pata_legacy.opti82c46x=	[HW,LIBATA]
419362306a36Sopenharmony_ci			Format: <int>
419462306a36Sopenharmony_ci			Set to 1, 2, or 3 for Opti 82c611A on the primary
419562306a36Sopenharmony_ci			channel, the secondary channel, or both channels
419662306a36Sopenharmony_ci			respectively.  Disabled by default.
419762306a36Sopenharmony_ci
419862306a36Sopenharmony_ci	pata_legacy.opti82c611a=	[HW,LIBATA]
419962306a36Sopenharmony_ci			Format: <int>
420062306a36Sopenharmony_ci			Set to 1, 2, or 3 for Opti 82c465MV on the primary
420162306a36Sopenharmony_ci			channel, the secondary channel, or both channels
420262306a36Sopenharmony_ci			respectively.  Disabled by default.
420362306a36Sopenharmony_ci
420462306a36Sopenharmony_ci	pata_legacy.pio_mask=	[HW,LIBATA]
420562306a36Sopenharmony_ci			Format: <int>
420662306a36Sopenharmony_ci			PIO mode mask for autospeed devices.  Set individual
420762306a36Sopenharmony_ci			bits to allow the use of the respective PIO modes.
420862306a36Sopenharmony_ci			Bit 0 is for mode 0, bit 1 is for mode 1, and so on.
420962306a36Sopenharmony_ci			All modes allowed by default.
421062306a36Sopenharmony_ci
421162306a36Sopenharmony_ci	pata_legacy.probe_all=	[HW,LIBATA]
421262306a36Sopenharmony_ci			Format: <int>
421362306a36Sopenharmony_ci			Set to non-zero to probe tertiary and further ISA
421462306a36Sopenharmony_ci			port ranges on PCI systems.  Disabled by default.
421562306a36Sopenharmony_ci
421662306a36Sopenharmony_ci	pata_legacy.probe_mask=	[HW,LIBATA]
421762306a36Sopenharmony_ci			Format: <int>
421862306a36Sopenharmony_ci			Probe mask for legacy ISA PATA ports.  Depending on
421962306a36Sopenharmony_ci			platform configuration and the use of other driver
422062306a36Sopenharmony_ci			options up to 6 legacy ports are supported: 0x1f0,
422162306a36Sopenharmony_ci			0x170, 0x1e8, 0x168, 0x1e0, 0x160, however probing
422262306a36Sopenharmony_ci			of individual ports can be disabled by setting the
422362306a36Sopenharmony_ci			corresponding bits in the mask to 1.  Bit 0 is for
422462306a36Sopenharmony_ci			the first port in the list above (0x1f0), and so on.
422562306a36Sopenharmony_ci			By default all supported ports are probed.
422662306a36Sopenharmony_ci
422762306a36Sopenharmony_ci	pata_legacy.qdi=	[HW,LIBATA]
422862306a36Sopenharmony_ci			Format: <int>
422962306a36Sopenharmony_ci			Set to non-zero to probe QDI controllers.  By default
423062306a36Sopenharmony_ci			set to 1 if CONFIG_PATA_QDI_MODULE, 0 otherwise.
423162306a36Sopenharmony_ci
423262306a36Sopenharmony_ci	pata_legacy.winbond=	[HW,LIBATA]
423362306a36Sopenharmony_ci			Format: <int>
423462306a36Sopenharmony_ci			Set to non-zero to probe Winbond controllers.  Use
423562306a36Sopenharmony_ci			the standard I/O port (0x130) if 1, otherwise the
423662306a36Sopenharmony_ci			value given is the I/O port to use (typically 0x1b0).
423762306a36Sopenharmony_ci			By default set to 1 if CONFIG_PATA_WINBOND_VLB_MODULE,
423862306a36Sopenharmony_ci			0 otherwise.
423962306a36Sopenharmony_ci
424062306a36Sopenharmony_ci	pata_platform.pio_mask=	[HW,LIBATA]
424162306a36Sopenharmony_ci			Format: <int>
424262306a36Sopenharmony_ci			Supported PIO mode mask.  Set individual bits to allow
424362306a36Sopenharmony_ci			the use of the respective PIO modes.  Bit 0 is for
424462306a36Sopenharmony_ci			mode 0, bit 1 is for mode 1, and so on.  Mode 0 only
424562306a36Sopenharmony_ci			allowed by default.
424662306a36Sopenharmony_ci
424762306a36Sopenharmony_ci	pause_on_oops=<int>
424862306a36Sopenharmony_ci			Halt all CPUs after the first oops has been printed for
424962306a36Sopenharmony_ci			the specified number of seconds.  This is to be used if
425062306a36Sopenharmony_ci			your oopses keep scrolling off the screen.
425162306a36Sopenharmony_ci
425262306a36Sopenharmony_ci	pcbit=		[HW,ISDN]
425362306a36Sopenharmony_ci
425462306a36Sopenharmony_ci	pci=option[,option...]	[PCI] various PCI subsystem options.
425562306a36Sopenharmony_ci
425662306a36Sopenharmony_ci				Some options herein operate on a specific device
425762306a36Sopenharmony_ci				or a set of devices (<pci_dev>). These are
425862306a36Sopenharmony_ci				specified in one of the following formats:
425962306a36Sopenharmony_ci
426062306a36Sopenharmony_ci				[<domain>:]<bus>:<dev>.<func>[/<dev>.<func>]*
426162306a36Sopenharmony_ci				pci:<vendor>:<device>[:<subvendor>:<subdevice>]
426262306a36Sopenharmony_ci
426362306a36Sopenharmony_ci				Note: the first format specifies a PCI
426462306a36Sopenharmony_ci				bus/device/function address which may change
426562306a36Sopenharmony_ci				if new hardware is inserted, if motherboard
426662306a36Sopenharmony_ci				firmware changes, or due to changes caused
426762306a36Sopenharmony_ci				by other kernel parameters. If the
426862306a36Sopenharmony_ci				domain is left unspecified, it is
426962306a36Sopenharmony_ci				taken to be zero. Optionally, a path
427062306a36Sopenharmony_ci				to a device through multiple device/function
427162306a36Sopenharmony_ci				addresses can be specified after the base
427262306a36Sopenharmony_ci				address (this is more robust against
427362306a36Sopenharmony_ci				renumbering issues).  The second format
427462306a36Sopenharmony_ci				selects devices using IDs from the
427562306a36Sopenharmony_ci				configuration space which may match multiple
427662306a36Sopenharmony_ci				devices in the system.
427762306a36Sopenharmony_ci
427862306a36Sopenharmony_ci		earlydump	dump PCI config space before the kernel
427962306a36Sopenharmony_ci				changes anything
428062306a36Sopenharmony_ci		off		[X86] don't probe for the PCI bus
428162306a36Sopenharmony_ci		bios		[X86-32] force use of PCI BIOS, don't access
428262306a36Sopenharmony_ci				the hardware directly. Use this if your machine
428362306a36Sopenharmony_ci				has a non-standard PCI host bridge.
428462306a36Sopenharmony_ci		nobios		[X86-32] disallow use of PCI BIOS, only direct
428562306a36Sopenharmony_ci				hardware access methods are allowed. Use this
428662306a36Sopenharmony_ci				if you experience crashes upon bootup and you
428762306a36Sopenharmony_ci				suspect they are caused by the BIOS.
428862306a36Sopenharmony_ci		conf1		[X86] Force use of PCI Configuration Access
428962306a36Sopenharmony_ci				Mechanism 1 (config address in IO port 0xCF8,
429062306a36Sopenharmony_ci				data in IO port 0xCFC, both 32-bit).
429162306a36Sopenharmony_ci		conf2		[X86] Force use of PCI Configuration Access
429262306a36Sopenharmony_ci				Mechanism 2 (IO port 0xCF8 is an 8-bit port for
429362306a36Sopenharmony_ci				the function, IO port 0xCFA, also 8-bit, sets
429462306a36Sopenharmony_ci				bus number. The config space is then accessed
429562306a36Sopenharmony_ci				through ports 0xC000-0xCFFF).
429662306a36Sopenharmony_ci				See http://wiki.osdev.org/PCI for more info
429762306a36Sopenharmony_ci				on the configuration access mechanisms.
429862306a36Sopenharmony_ci		noaer		[PCIE] If the PCIEAER kernel config parameter is
429962306a36Sopenharmony_ci				enabled, this kernel boot option can be used to
430062306a36Sopenharmony_ci				disable the use of PCIE advanced error reporting.
430162306a36Sopenharmony_ci		nodomains	[PCI] Disable support for multiple PCI
430262306a36Sopenharmony_ci				root domains (aka PCI segments, in ACPI-speak).
430362306a36Sopenharmony_ci		nommconf	[X86] Disable use of MMCONFIG for PCI
430462306a36Sopenharmony_ci				Configuration
430562306a36Sopenharmony_ci		check_enable_amd_mmconf [X86] check for and enable
430662306a36Sopenharmony_ci				properly configured MMIO access to PCI
430762306a36Sopenharmony_ci				config space on AMD family 10h CPU
430862306a36Sopenharmony_ci		nomsi		[MSI] If the PCI_MSI kernel config parameter is
430962306a36Sopenharmony_ci				enabled, this kernel boot option can be used to
431062306a36Sopenharmony_ci				disable the use of MSI interrupts system-wide.
431162306a36Sopenharmony_ci		noioapicquirk	[APIC] Disable all boot interrupt quirks.
431262306a36Sopenharmony_ci				Safety option to keep boot IRQs enabled. This
431362306a36Sopenharmony_ci				should never be necessary.
431462306a36Sopenharmony_ci		ioapicreroute	[APIC] Enable rerouting of boot IRQs to the
431562306a36Sopenharmony_ci				primary IO-APIC for bridges that cannot disable
431662306a36Sopenharmony_ci				boot IRQs. This fixes a source of spurious IRQs
431762306a36Sopenharmony_ci				when the system masks IRQs.
431862306a36Sopenharmony_ci		noioapicreroute	[APIC] Disable workaround that uses the
431962306a36Sopenharmony_ci				boot IRQ equivalent of an IRQ that connects to
432062306a36Sopenharmony_ci				a chipset where boot IRQs cannot be disabled.
432162306a36Sopenharmony_ci				The opposite of ioapicreroute.
432262306a36Sopenharmony_ci		biosirq		[X86-32] Use PCI BIOS calls to get the interrupt
432362306a36Sopenharmony_ci				routing table. These calls are known to be buggy
432462306a36Sopenharmony_ci				on several machines and they hang the machine
432562306a36Sopenharmony_ci				when used, but on other computers it's the only
432662306a36Sopenharmony_ci				way to get the interrupt routing table. Try
432762306a36Sopenharmony_ci				this option if the kernel is unable to allocate
432862306a36Sopenharmony_ci				IRQs or discover secondary PCI buses on your
432962306a36Sopenharmony_ci				motherboard.
433062306a36Sopenharmony_ci		rom		[X86] Assign address space to expansion ROMs.
433162306a36Sopenharmony_ci				Use with caution as certain devices share
433262306a36Sopenharmony_ci				address decoders between ROMs and other
433362306a36Sopenharmony_ci				resources.
433462306a36Sopenharmony_ci		norom		[X86] Do not assign address space to
433562306a36Sopenharmony_ci				expansion ROMs that do not already have
433662306a36Sopenharmony_ci				BIOS assigned address ranges.
433762306a36Sopenharmony_ci		nobar		[X86] Do not assign address space to the
433862306a36Sopenharmony_ci				BARs that weren't assigned by the BIOS.
433962306a36Sopenharmony_ci		irqmask=0xMMMM	[X86] Set a bit mask of IRQs allowed to be
434062306a36Sopenharmony_ci				assigned automatically to PCI devices. You can
434162306a36Sopenharmony_ci				make the kernel exclude IRQs of your ISA cards
434262306a36Sopenharmony_ci				this way.
434362306a36Sopenharmony_ci		pirqaddr=0xAAAAA	[X86] Specify the physical address
434462306a36Sopenharmony_ci				of the PIRQ table (normally generated
434562306a36Sopenharmony_ci				by the BIOS) if it is outside the
434662306a36Sopenharmony_ci				F0000h-100000h range.
434762306a36Sopenharmony_ci		lastbus=N	[X86] Scan all buses thru bus #N. Can be
434862306a36Sopenharmony_ci				useful if the kernel is unable to find your
434962306a36Sopenharmony_ci				secondary buses and you want to tell it
435062306a36Sopenharmony_ci				explicitly which ones they are.
435162306a36Sopenharmony_ci		assign-busses	[X86] Always assign all PCI bus
435262306a36Sopenharmony_ci				numbers ourselves, overriding
435362306a36Sopenharmony_ci				whatever the firmware may have done.
435462306a36Sopenharmony_ci		usepirqmask	[X86] Honor the possible IRQ mask stored
435562306a36Sopenharmony_ci				in the BIOS $PIR table. This is needed on
435662306a36Sopenharmony_ci				some systems with broken BIOSes, notably
435762306a36Sopenharmony_ci				some HP Pavilion N5400 and Omnibook XE3
435862306a36Sopenharmony_ci				notebooks. This will have no effect if ACPI
435962306a36Sopenharmony_ci				IRQ routing is enabled.
436062306a36Sopenharmony_ci		noacpi		[X86] Do not use ACPI for IRQ routing
436162306a36Sopenharmony_ci				or for PCI scanning.
436262306a36Sopenharmony_ci		use_crs		[X86] Use PCI host bridge window information
436362306a36Sopenharmony_ci				from ACPI.  On BIOSes from 2008 or later, this
436462306a36Sopenharmony_ci				is enabled by default.  If you need to use this,
436562306a36Sopenharmony_ci				please report a bug.
436662306a36Sopenharmony_ci		nocrs		[X86] Ignore PCI host bridge windows from ACPI.
436762306a36Sopenharmony_ci				If you need to use this, please report a bug.
436862306a36Sopenharmony_ci		use_e820	[X86] Use E820 reservations to exclude parts of
436962306a36Sopenharmony_ci				PCI host bridge windows. This is a workaround
437062306a36Sopenharmony_ci				for BIOS defects in host bridge _CRS methods.
437162306a36Sopenharmony_ci				If you need to use this, please report a bug to
437262306a36Sopenharmony_ci				<linux-pci@vger.kernel.org>.
437362306a36Sopenharmony_ci		no_e820		[X86] Ignore E820 reservations for PCI host
437462306a36Sopenharmony_ci				bridge windows. This is the default on modern
437562306a36Sopenharmony_ci				hardware. If you need to use this, please report
437662306a36Sopenharmony_ci				a bug to <linux-pci@vger.kernel.org>.
437762306a36Sopenharmony_ci		routeirq	Do IRQ routing for all PCI devices.
437862306a36Sopenharmony_ci				This is normally done in pci_enable_device(),
437962306a36Sopenharmony_ci				so this option is a temporary workaround
438062306a36Sopenharmony_ci				for broken drivers that don't call it.
438162306a36Sopenharmony_ci		skip_isa_align	[X86] do not align io start addr, so can
438262306a36Sopenharmony_ci				handle more pci cards
438362306a36Sopenharmony_ci		noearly		[X86] Don't do any early type 1 scanning.
438462306a36Sopenharmony_ci				This might help on some broken boards which
438562306a36Sopenharmony_ci				machine check when some devices' config space
438662306a36Sopenharmony_ci				is read. But various workarounds are disabled
438762306a36Sopenharmony_ci				and some IOMMU drivers will not work.
438862306a36Sopenharmony_ci		bfsort		Sort PCI devices into breadth-first order.
438962306a36Sopenharmony_ci				This sorting is done to get a device
439062306a36Sopenharmony_ci				order compatible with older (<= 2.4) kernels.
439162306a36Sopenharmony_ci		nobfsort	Don't sort PCI devices into breadth-first order.
439262306a36Sopenharmony_ci		pcie_bus_tune_off	Disable PCIe MPS (Max Payload Size)
439362306a36Sopenharmony_ci				tuning and use the BIOS-configured MPS defaults.
439462306a36Sopenharmony_ci		pcie_bus_safe	Set every device's MPS to the largest value
439562306a36Sopenharmony_ci				supported by all devices below the root complex.
439662306a36Sopenharmony_ci		pcie_bus_perf	Set device MPS to the largest allowable MPS
439762306a36Sopenharmony_ci				based on its parent bus. Also set MRRS (Max
439862306a36Sopenharmony_ci				Read Request Size) to the largest supported
439962306a36Sopenharmony_ci				value (no larger than the MPS that the device
440062306a36Sopenharmony_ci				or bus can support) for best performance.
440162306a36Sopenharmony_ci		pcie_bus_peer2peer	Set every device's MPS to 128B, which
440262306a36Sopenharmony_ci				every device is guaranteed to support. This
440362306a36Sopenharmony_ci				configuration allows peer-to-peer DMA between
440462306a36Sopenharmony_ci				any pair of devices, possibly at the cost of
440562306a36Sopenharmony_ci				reduced performance.  This also guarantees
440662306a36Sopenharmony_ci				that hot-added devices will work.
440762306a36Sopenharmony_ci		cbiosize=nn[KMG]	The fixed amount of bus space which is
440862306a36Sopenharmony_ci				reserved for the CardBus bridge's IO window.
440962306a36Sopenharmony_ci				The default value is 256 bytes.
441062306a36Sopenharmony_ci		cbmemsize=nn[KMG]	The fixed amount of bus space which is
441162306a36Sopenharmony_ci				reserved for the CardBus bridge's memory
441262306a36Sopenharmony_ci				window. The default value is 64 megabytes.
441362306a36Sopenharmony_ci		resource_alignment=
441462306a36Sopenharmony_ci				Format:
441562306a36Sopenharmony_ci				[<order of align>@]<pci_dev>[; ...]
441662306a36Sopenharmony_ci				Specifies alignment and device to reassign
441762306a36Sopenharmony_ci				aligned memory resources. How to
441862306a36Sopenharmony_ci				specify the device is described above.
441962306a36Sopenharmony_ci				If <order of align> is not specified,
442062306a36Sopenharmony_ci				PAGE_SIZE is used as alignment.
442162306a36Sopenharmony_ci				A PCI-PCI bridge can be specified if resource
442262306a36Sopenharmony_ci				windows need to be expanded.
442362306a36Sopenharmony_ci				To specify the alignment for several
442462306a36Sopenharmony_ci				instances of a device, the PCI vendor,
442562306a36Sopenharmony_ci				device, subvendor, and subdevice may be
442662306a36Sopenharmony_ci				specified, e.g., 12@pci:8086:9c22:103c:198f
442762306a36Sopenharmony_ci				for 4096-byte alignment.
442862306a36Sopenharmony_ci		ecrc=		Enable/disable PCIe ECRC (transaction layer
442962306a36Sopenharmony_ci				end-to-end CRC checking). Only effective if
443062306a36Sopenharmony_ci				OS has native AER control (either granted by
443162306a36Sopenharmony_ci				ACPI _OSC or forced via "pcie_ports=native")
443262306a36Sopenharmony_ci				bios: Use BIOS/firmware settings. This is the
443362306a36Sopenharmony_ci				the default.
443462306a36Sopenharmony_ci				off: Turn ECRC off
443562306a36Sopenharmony_ci				on: Turn ECRC on.
443662306a36Sopenharmony_ci		hpiosize=nn[KMG]	The fixed amount of bus space which is
443762306a36Sopenharmony_ci				reserved for hotplug bridge's IO window.
443862306a36Sopenharmony_ci				Default size is 256 bytes.
443962306a36Sopenharmony_ci		hpmmiosize=nn[KMG]	The fixed amount of bus space which is
444062306a36Sopenharmony_ci				reserved for hotplug bridge's MMIO window.
444162306a36Sopenharmony_ci				Default size is 2 megabytes.
444262306a36Sopenharmony_ci		hpmmioprefsize=nn[KMG]	The fixed amount of bus space which is
444362306a36Sopenharmony_ci				reserved for hotplug bridge's MMIO_PREF window.
444462306a36Sopenharmony_ci				Default size is 2 megabytes.
444562306a36Sopenharmony_ci		hpmemsize=nn[KMG]	The fixed amount of bus space which is
444662306a36Sopenharmony_ci				reserved for hotplug bridge's MMIO and
444762306a36Sopenharmony_ci				MMIO_PREF window.
444862306a36Sopenharmony_ci				Default size is 2 megabytes.
444962306a36Sopenharmony_ci		hpbussize=nn	The minimum amount of additional bus numbers
445062306a36Sopenharmony_ci				reserved for buses below a hotplug bridge.
445162306a36Sopenharmony_ci				Default is 1.
445262306a36Sopenharmony_ci		realloc=	Enable/disable reallocating PCI bridge resources
445362306a36Sopenharmony_ci				if allocations done by BIOS are too small to
445462306a36Sopenharmony_ci				accommodate resources required by all child
445562306a36Sopenharmony_ci				devices.
445662306a36Sopenharmony_ci				off: Turn realloc off
445762306a36Sopenharmony_ci				on: Turn realloc on
445862306a36Sopenharmony_ci		realloc		same as realloc=on
445962306a36Sopenharmony_ci		noari		do not use PCIe ARI.
446062306a36Sopenharmony_ci		noats		[PCIE, Intel-IOMMU, AMD-IOMMU]
446162306a36Sopenharmony_ci				do not use PCIe ATS (and IOMMU device IOTLB).
446262306a36Sopenharmony_ci		pcie_scan_all	Scan all possible PCIe devices.  Otherwise we
446362306a36Sopenharmony_ci				only look for one device below a PCIe downstream
446462306a36Sopenharmony_ci				port.
446562306a36Sopenharmony_ci		big_root_window	Try to add a big 64bit memory window to the PCIe
446662306a36Sopenharmony_ci				root complex on AMD CPUs. Some GFX hardware
446762306a36Sopenharmony_ci				can resize a BAR to allow access to all VRAM.
446862306a36Sopenharmony_ci				Adding the window is slightly risky (it may
446962306a36Sopenharmony_ci				conflict with unreported devices), so this
447062306a36Sopenharmony_ci				taints the kernel.
447162306a36Sopenharmony_ci		disable_acs_redir=<pci_dev>[; ...]
447262306a36Sopenharmony_ci				Specify one or more PCI devices (in the format
447362306a36Sopenharmony_ci				specified above) separated by semicolons.
447462306a36Sopenharmony_ci				Each device specified will have the PCI ACS
447562306a36Sopenharmony_ci				redirect capabilities forced off which will
447662306a36Sopenharmony_ci				allow P2P traffic between devices through
447762306a36Sopenharmony_ci				bridges without forcing it upstream. Note:
447862306a36Sopenharmony_ci				this removes isolation between devices and
447962306a36Sopenharmony_ci				may put more devices in an IOMMU group.
448062306a36Sopenharmony_ci		force_floating	[S390] Force usage of floating interrupts.
448162306a36Sopenharmony_ci		nomio		[S390] Do not use MIO instructions.
448262306a36Sopenharmony_ci		norid		[S390] ignore the RID field and force use of
448362306a36Sopenharmony_ci				one PCI domain per PCI function
448462306a36Sopenharmony_ci
448562306a36Sopenharmony_ci	pcie_aspm=	[PCIE] Forcibly enable or disable PCIe Active State Power
448662306a36Sopenharmony_ci			Management.
448762306a36Sopenharmony_ci		off	Disable ASPM.
448862306a36Sopenharmony_ci		force	Enable ASPM even on devices that claim not to support it.
448962306a36Sopenharmony_ci			WARNING: Forcing ASPM on may cause system lockups.
449062306a36Sopenharmony_ci
449162306a36Sopenharmony_ci	pcie_ports=	[PCIE] PCIe port services handling:
449262306a36Sopenharmony_ci		native	Use native PCIe services (PME, AER, DPC, PCIe hotplug)
449362306a36Sopenharmony_ci			even if the platform doesn't give the OS permission to
449462306a36Sopenharmony_ci			use them.  This may cause conflicts if the platform
449562306a36Sopenharmony_ci			also tries to use these services.
449662306a36Sopenharmony_ci		dpc-native	Use native PCIe service for DPC only.  May
449762306a36Sopenharmony_ci				cause conflicts if firmware uses AER or DPC.
449862306a36Sopenharmony_ci		compat	Disable native PCIe services (PME, AER, DPC, PCIe
449962306a36Sopenharmony_ci			hotplug).
450062306a36Sopenharmony_ci
450162306a36Sopenharmony_ci	pcie_port_pm=	[PCIE] PCIe port power management handling:
450262306a36Sopenharmony_ci		off	Disable power management of all PCIe ports
450362306a36Sopenharmony_ci		force	Forcibly enable power management of all PCIe ports
450462306a36Sopenharmony_ci
450562306a36Sopenharmony_ci	pcie_pme=	[PCIE,PM] Native PCIe PME signaling options:
450662306a36Sopenharmony_ci		nomsi	Do not use MSI for native PCIe PME signaling (this makes
450762306a36Sopenharmony_ci			all PCIe root ports use INTx for all services).
450862306a36Sopenharmony_ci
450962306a36Sopenharmony_ci	pcmv=		[HW,PCMCIA] BadgePAD 4
451062306a36Sopenharmony_ci
451162306a36Sopenharmony_ci	pd_ignore_unused
451262306a36Sopenharmony_ci			[PM]
451362306a36Sopenharmony_ci			Keep all power-domains already enabled by bootloader on,
451462306a36Sopenharmony_ci			even if no driver has claimed them. This is useful
451562306a36Sopenharmony_ci			for debug and development, but should not be
451662306a36Sopenharmony_ci			needed on a platform with proper driver support.
451762306a36Sopenharmony_ci
451862306a36Sopenharmony_ci	pdcchassis=	[PARISC,HW] Disable/Enable PDC Chassis Status codes at
451962306a36Sopenharmony_ci			boot time.
452062306a36Sopenharmony_ci			Format: { 0 | 1 }
452162306a36Sopenharmony_ci			See arch/parisc/kernel/pdc_chassis.c
452262306a36Sopenharmony_ci
452362306a36Sopenharmony_ci	percpu_alloc=	Select which percpu first chunk allocator to use.
452462306a36Sopenharmony_ci			Currently supported values are "embed" and "page".
452562306a36Sopenharmony_ci			Archs may support subset or none of the	selections.
452662306a36Sopenharmony_ci			See comments in mm/percpu.c for details on each
452762306a36Sopenharmony_ci			allocator.  This parameter is primarily	for debugging
452862306a36Sopenharmony_ci			and performance comparison.
452962306a36Sopenharmony_ci
453062306a36Sopenharmony_ci	pirq=		[SMP,APIC] Manual mp-table setup
453162306a36Sopenharmony_ci			See Documentation/arch/x86/i386/IO-APIC.rst.
453262306a36Sopenharmony_ci
453362306a36Sopenharmony_ci	plip=		[PPT,NET] Parallel port network link
453462306a36Sopenharmony_ci			Format: { parport<nr> | timid | 0 }
453562306a36Sopenharmony_ci			See also Documentation/admin-guide/parport.rst.
453662306a36Sopenharmony_ci
453762306a36Sopenharmony_ci	pmtmr=		[X86] Manual setup of pmtmr I/O Port.
453862306a36Sopenharmony_ci			Override pmtimer IOPort with a hex value.
453962306a36Sopenharmony_ci			e.g. pmtmr=0x508
454062306a36Sopenharmony_ci
454162306a36Sopenharmony_ci	pmu_override=	[PPC] Override the PMU.
454262306a36Sopenharmony_ci			This option takes over the PMU facility, so it is no
454362306a36Sopenharmony_ci			longer usable by perf. Setting this option starts the
454462306a36Sopenharmony_ci			PMU counters by setting MMCR0 to 0 (the FC bit is
454562306a36Sopenharmony_ci			cleared). If a number is given, then MMCR1 is set to
454662306a36Sopenharmony_ci			that number, otherwise (e.g., 'pmu_override=on'), MMCR1
454762306a36Sopenharmony_ci			remains 0.
454862306a36Sopenharmony_ci
454962306a36Sopenharmony_ci	pm_debug_messages	[SUSPEND,KNL]
455062306a36Sopenharmony_ci			Enable suspend/resume debug messages during boot up.
455162306a36Sopenharmony_ci
455262306a36Sopenharmony_ci	pnp.debug=1	[PNP]
455362306a36Sopenharmony_ci			Enable PNP debug messages (depends on the
455462306a36Sopenharmony_ci			CONFIG_PNP_DEBUG_MESSAGES option).  Change at run-time
455562306a36Sopenharmony_ci			via /sys/module/pnp/parameters/debug.  We always show
455662306a36Sopenharmony_ci			current resource usage; turning this on also shows
455762306a36Sopenharmony_ci			possible settings and some assignment information.
455862306a36Sopenharmony_ci
455962306a36Sopenharmony_ci	pnpacpi=	[ACPI]
456062306a36Sopenharmony_ci			{ off }
456162306a36Sopenharmony_ci
456262306a36Sopenharmony_ci	pnpbios=	[ISAPNP]
456362306a36Sopenharmony_ci			{ on | off | curr | res | no-curr | no-res }
456462306a36Sopenharmony_ci
456562306a36Sopenharmony_ci	pnp_reserve_irq=
456662306a36Sopenharmony_ci			[ISAPNP] Exclude IRQs for the autoconfiguration
456762306a36Sopenharmony_ci
456862306a36Sopenharmony_ci	pnp_reserve_dma=
456962306a36Sopenharmony_ci			[ISAPNP] Exclude DMAs for the autoconfiguration
457062306a36Sopenharmony_ci
457162306a36Sopenharmony_ci	pnp_reserve_io=	[ISAPNP] Exclude I/O ports for the autoconfiguration
457262306a36Sopenharmony_ci			Ranges are in pairs (I/O port base and size).
457362306a36Sopenharmony_ci
457462306a36Sopenharmony_ci	pnp_reserve_mem=
457562306a36Sopenharmony_ci			[ISAPNP] Exclude memory regions for the
457662306a36Sopenharmony_ci			autoconfiguration.
457762306a36Sopenharmony_ci			Ranges are in pairs (memory base and size).
457862306a36Sopenharmony_ci
457962306a36Sopenharmony_ci	ports=		[IP_VS_FTP] IPVS ftp helper module
458062306a36Sopenharmony_ci			Default is 21.
458162306a36Sopenharmony_ci			Up to 8 (IP_VS_APP_MAX_PORTS) ports
458262306a36Sopenharmony_ci			may be specified.
458362306a36Sopenharmony_ci			Format: <port>,<port>....
458462306a36Sopenharmony_ci
458562306a36Sopenharmony_ci	powersave=off	[PPC] This option disables power saving features.
458662306a36Sopenharmony_ci			It specifically disables cpuidle and sets the
458762306a36Sopenharmony_ci			platform machine description specific power_save
458862306a36Sopenharmony_ci			function to NULL. On Idle the CPU just reduces
458962306a36Sopenharmony_ci			execution priority.
459062306a36Sopenharmony_ci
459162306a36Sopenharmony_ci	ppc_strict_facility_enable
459262306a36Sopenharmony_ci			[PPC] This option catches any kernel floating point,
459362306a36Sopenharmony_ci			Altivec, VSX and SPE outside of regions specifically
459462306a36Sopenharmony_ci			allowed (eg kernel_enable_fpu()/kernel_disable_fpu()).
459562306a36Sopenharmony_ci			There is some performance impact when enabling this.
459662306a36Sopenharmony_ci
459762306a36Sopenharmony_ci	ppc_tm=		[PPC]
459862306a36Sopenharmony_ci			Format: {"off"}
459962306a36Sopenharmony_ci			Disable Hardware Transactional Memory
460062306a36Sopenharmony_ci
460162306a36Sopenharmony_ci	preempt=	[KNL]
460262306a36Sopenharmony_ci			Select preemption mode if you have CONFIG_PREEMPT_DYNAMIC
460362306a36Sopenharmony_ci			none - Limited to cond_resched() calls
460462306a36Sopenharmony_ci			voluntary - Limited to cond_resched() and might_sleep() calls
460562306a36Sopenharmony_ci			full - Any section that isn't explicitly preempt disabled
460662306a36Sopenharmony_ci			       can be preempted anytime.
460762306a36Sopenharmony_ci
460862306a36Sopenharmony_ci	print-fatal-signals=
460962306a36Sopenharmony_ci			[KNL] debug: print fatal signals
461062306a36Sopenharmony_ci
461162306a36Sopenharmony_ci			If enabled, warn about various signal handling
461262306a36Sopenharmony_ci			related application anomalies: too many signals,
461362306a36Sopenharmony_ci			too many POSIX.1 timers, fatal signals causing a
461462306a36Sopenharmony_ci			coredump - etc.
461562306a36Sopenharmony_ci
461662306a36Sopenharmony_ci			If you hit the warning due to signal overflow,
461762306a36Sopenharmony_ci			you might want to try "ulimit -i unlimited".
461862306a36Sopenharmony_ci
461962306a36Sopenharmony_ci			default: off.
462062306a36Sopenharmony_ci
462162306a36Sopenharmony_ci	printk.always_kmsg_dump=
462262306a36Sopenharmony_ci			Trigger kmsg_dump for cases other than kernel oops or
462362306a36Sopenharmony_ci			panics
462462306a36Sopenharmony_ci			Format: <bool>  (1/Y/y=enable, 0/N/n=disable)
462562306a36Sopenharmony_ci			default: disabled
462662306a36Sopenharmony_ci
462762306a36Sopenharmony_ci	printk.console_no_auto_verbose=
462862306a36Sopenharmony_ci			Disable console loglevel raise on oops, panic
462962306a36Sopenharmony_ci			or lockdep-detected issues (only if lock debug is on).
463062306a36Sopenharmony_ci			With an exception to setups with low baudrate on
463162306a36Sopenharmony_ci			serial console, keeping this 0 is a good choice
463262306a36Sopenharmony_ci			in order to provide more debug information.
463362306a36Sopenharmony_ci			Format: <bool>
463462306a36Sopenharmony_ci			default: 0 (auto_verbose is enabled)
463562306a36Sopenharmony_ci
463662306a36Sopenharmony_ci	printk.devkmsg={on,off,ratelimit}
463762306a36Sopenharmony_ci			Control writing to /dev/kmsg.
463862306a36Sopenharmony_ci			on - unlimited logging to /dev/kmsg from userspace
463962306a36Sopenharmony_ci			off - logging to /dev/kmsg disabled
464062306a36Sopenharmony_ci			ratelimit - ratelimit the logging
464162306a36Sopenharmony_ci			Default: ratelimit
464262306a36Sopenharmony_ci
464362306a36Sopenharmony_ci	printk.time=	Show timing data prefixed to each printk message line
464462306a36Sopenharmony_ci			Format: <bool>  (1/Y/y=enable, 0/N/n=disable)
464562306a36Sopenharmony_ci
464662306a36Sopenharmony_ci	processor.max_cstate=	[HW,ACPI]
464762306a36Sopenharmony_ci			Limit processor to maximum C-state
464862306a36Sopenharmony_ci			max_cstate=9 overrides any DMI blacklist limit.
464962306a36Sopenharmony_ci
465062306a36Sopenharmony_ci	processor.nocst	[HW,ACPI]
465162306a36Sopenharmony_ci			Ignore the _CST method to determine C-states,
465262306a36Sopenharmony_ci			instead using the legacy FADT method
465362306a36Sopenharmony_ci
465462306a36Sopenharmony_ci	profile=	[KNL] Enable kernel profiling via /proc/profile
465562306a36Sopenharmony_ci			Format: [<profiletype>,]<number>
465662306a36Sopenharmony_ci			Param: <profiletype>: "schedule", "sleep", or "kvm"
465762306a36Sopenharmony_ci				[defaults to kernel profiling]
465862306a36Sopenharmony_ci			Param: "schedule" - profile schedule points.
465962306a36Sopenharmony_ci			Param: "sleep" - profile D-state sleeping (millisecs).
466062306a36Sopenharmony_ci				Requires CONFIG_SCHEDSTATS
466162306a36Sopenharmony_ci			Param: "kvm" - profile VM exits.
466262306a36Sopenharmony_ci			Param: <number> - step/bucket size as a power of 2 for
466362306a36Sopenharmony_ci				statistical time based profiling.
466462306a36Sopenharmony_ci
466562306a36Sopenharmony_ci	prompt_ramdisk=	[RAM] [Deprecated]
466662306a36Sopenharmony_ci
466762306a36Sopenharmony_ci	prot_virt=	[S390] enable hosting protected virtual machines
466862306a36Sopenharmony_ci			isolated from the hypervisor (if hardware supports
466962306a36Sopenharmony_ci			that).
467062306a36Sopenharmony_ci			Format: <bool>
467162306a36Sopenharmony_ci
467262306a36Sopenharmony_ci	psi=		[KNL] Enable or disable pressure stall information
467362306a36Sopenharmony_ci			tracking.
467462306a36Sopenharmony_ci			Format: <bool>
467562306a36Sopenharmony_ci
467662306a36Sopenharmony_ci	psmouse.proto=	[HW,MOUSE] Highest PS2 mouse protocol extension to
467762306a36Sopenharmony_ci			probe for; one of (bare|imps|exps|lifebook|any).
467862306a36Sopenharmony_ci	psmouse.rate=	[HW,MOUSE] Set desired mouse report rate, in reports
467962306a36Sopenharmony_ci			per second.
468062306a36Sopenharmony_ci	psmouse.resetafter=	[HW,MOUSE]
468162306a36Sopenharmony_ci			Try to reset the device after so many bad packets
468262306a36Sopenharmony_ci			(0 = never).
468362306a36Sopenharmony_ci	psmouse.resolution=
468462306a36Sopenharmony_ci			[HW,MOUSE] Set desired mouse resolution, in dpi.
468562306a36Sopenharmony_ci	psmouse.smartscroll=
468662306a36Sopenharmony_ci			[HW,MOUSE] Controls Logitech smartscroll autorepeat.
468762306a36Sopenharmony_ci			0 = disabled, 1 = enabled (default).
468862306a36Sopenharmony_ci
468962306a36Sopenharmony_ci	pstore.backend=	Specify the name of the pstore backend to use
469062306a36Sopenharmony_ci
469162306a36Sopenharmony_ci	pti=		[X86-64] Control Page Table Isolation of user and
469262306a36Sopenharmony_ci			kernel address spaces.  Disabling this feature
469362306a36Sopenharmony_ci			removes hardening, but improves performance of
469462306a36Sopenharmony_ci			system calls and interrupts.
469562306a36Sopenharmony_ci
469662306a36Sopenharmony_ci			on   - unconditionally enable
469762306a36Sopenharmony_ci			off  - unconditionally disable
469862306a36Sopenharmony_ci			auto - kernel detects whether your CPU model is
469962306a36Sopenharmony_ci			       vulnerable to issues that PTI mitigates
470062306a36Sopenharmony_ci
470162306a36Sopenharmony_ci			Not specifying this option is equivalent to pti=auto.
470262306a36Sopenharmony_ci
470362306a36Sopenharmony_ci	pty.legacy_count=
470462306a36Sopenharmony_ci			[KNL] Number of legacy pty's. Overwrites compiled-in
470562306a36Sopenharmony_ci			default number.
470662306a36Sopenharmony_ci
470762306a36Sopenharmony_ci	quiet		[KNL] Disable most log messages
470862306a36Sopenharmony_ci
470962306a36Sopenharmony_ci	r128=		[HW,DRM]
471062306a36Sopenharmony_ci
471162306a36Sopenharmony_ci	radix_hcall_invalidate=on  [PPC/PSERIES]
471262306a36Sopenharmony_ci			Disable RADIX GTSE feature and use hcall for TLB
471362306a36Sopenharmony_ci			invalidate.
471462306a36Sopenharmony_ci
471562306a36Sopenharmony_ci	raid=		[HW,RAID]
471662306a36Sopenharmony_ci			See Documentation/admin-guide/md.rst.
471762306a36Sopenharmony_ci
471862306a36Sopenharmony_ci	ramdisk_size=	[RAM] Sizes of RAM disks in kilobytes
471962306a36Sopenharmony_ci			See Documentation/admin-guide/blockdev/ramdisk.rst.
472062306a36Sopenharmony_ci
472162306a36Sopenharmony_ci	ramdisk_start=	[RAM] RAM disk image start address
472262306a36Sopenharmony_ci
472362306a36Sopenharmony_ci	random.trust_cpu=off
472462306a36Sopenharmony_ci			[KNL] Disable trusting the use of the CPU's
472562306a36Sopenharmony_ci			random number generator (if available) to
472662306a36Sopenharmony_ci			initialize the kernel's RNG.
472762306a36Sopenharmony_ci
472862306a36Sopenharmony_ci	random.trust_bootloader=off
472962306a36Sopenharmony_ci			[KNL] Disable trusting the use of the a seed
473062306a36Sopenharmony_ci			passed by the bootloader (if available) to
473162306a36Sopenharmony_ci			initialize the kernel's RNG.
473262306a36Sopenharmony_ci
473362306a36Sopenharmony_ci	randomize_kstack_offset=
473462306a36Sopenharmony_ci			[KNL] Enable or disable kernel stack offset
473562306a36Sopenharmony_ci			randomization, which provides roughly 5 bits of
473662306a36Sopenharmony_ci			entropy, frustrating memory corruption attacks
473762306a36Sopenharmony_ci			that depend on stack address determinism or
473862306a36Sopenharmony_ci			cross-syscall address exposures. This is only
473962306a36Sopenharmony_ci			available on architectures that have defined
474062306a36Sopenharmony_ci			CONFIG_HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET.
474162306a36Sopenharmony_ci			Format: <bool>  (1/Y/y=enable, 0/N/n=disable)
474262306a36Sopenharmony_ci			Default is CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT.
474362306a36Sopenharmony_ci
474462306a36Sopenharmony_ci	ras=option[,option,...]	[KNL] RAS-specific options
474562306a36Sopenharmony_ci
474662306a36Sopenharmony_ci		cec_disable	[X86]
474762306a36Sopenharmony_ci				Disable the Correctable Errors Collector,
474862306a36Sopenharmony_ci				see CONFIG_RAS_CEC help text.
474962306a36Sopenharmony_ci
475062306a36Sopenharmony_ci	rcu_nocbs[=cpu-list]
475162306a36Sopenharmony_ci			[KNL] The optional argument is a cpu list,
475262306a36Sopenharmony_ci			as described above.
475362306a36Sopenharmony_ci
475462306a36Sopenharmony_ci			In kernels built with CONFIG_RCU_NOCB_CPU=y,
475562306a36Sopenharmony_ci			enable the no-callback CPU mode, which prevents
475662306a36Sopenharmony_ci			such CPUs' callbacks from being invoked in
475762306a36Sopenharmony_ci			softirq context.  Invocation of such CPUs' RCU
475862306a36Sopenharmony_ci			callbacks will instead be offloaded to "rcuox/N"
475962306a36Sopenharmony_ci			kthreads created for that purpose, where "x" is
476062306a36Sopenharmony_ci			"p" for RCU-preempt, "s" for RCU-sched, and "g"
476162306a36Sopenharmony_ci			for the kthreads that mediate grace periods; and
476262306a36Sopenharmony_ci			"N" is the CPU number. This reduces OS jitter on
476362306a36Sopenharmony_ci			the offloaded CPUs, which can be useful for HPC
476462306a36Sopenharmony_ci			and real-time workloads.  It can also improve
476562306a36Sopenharmony_ci			energy efficiency for asymmetric multiprocessors.
476662306a36Sopenharmony_ci
476762306a36Sopenharmony_ci			If a cpulist is passed as an argument, the specified
476862306a36Sopenharmony_ci			list of	CPUs is set to no-callback mode from boot.
476962306a36Sopenharmony_ci
477062306a36Sopenharmony_ci			Otherwise, if the '=' sign and the cpulist
477162306a36Sopenharmony_ci			arguments are omitted, no CPU will be set to
477262306a36Sopenharmony_ci			no-callback mode from boot but the mode may be
477362306a36Sopenharmony_ci			toggled at runtime via cpusets.
477462306a36Sopenharmony_ci
477562306a36Sopenharmony_ci			Note that this argument takes precedence over
477662306a36Sopenharmony_ci			the CONFIG_RCU_NOCB_CPU_DEFAULT_ALL option.
477762306a36Sopenharmony_ci
477862306a36Sopenharmony_ci	rcu_nocb_poll	[KNL]
477962306a36Sopenharmony_ci			Rather than requiring that offloaded CPUs
478062306a36Sopenharmony_ci			(specified by rcu_nocbs= above) explicitly
478162306a36Sopenharmony_ci			awaken the corresponding "rcuoN" kthreads,
478262306a36Sopenharmony_ci			make these kthreads poll for callbacks.
478362306a36Sopenharmony_ci			This improves the real-time response for the
478462306a36Sopenharmony_ci			offloaded CPUs by relieving them of the need to
478562306a36Sopenharmony_ci			wake up the corresponding kthread, but degrades
478662306a36Sopenharmony_ci			energy efficiency by requiring that the kthreads
478762306a36Sopenharmony_ci			periodically wake up to do the polling.
478862306a36Sopenharmony_ci
478962306a36Sopenharmony_ci	rcutree.blimit=	[KNL]
479062306a36Sopenharmony_ci			Set maximum number of finished RCU callbacks to
479162306a36Sopenharmony_ci			process in one batch.
479262306a36Sopenharmony_ci
479362306a36Sopenharmony_ci	rcutree.dump_tree=	[KNL]
479462306a36Sopenharmony_ci			Dump the structure of the rcu_node combining tree
479562306a36Sopenharmony_ci			out at early boot.  This is used for diagnostic
479662306a36Sopenharmony_ci			purposes, to verify correct tree setup.
479762306a36Sopenharmony_ci
479862306a36Sopenharmony_ci	rcutree.gp_cleanup_delay=	[KNL]
479962306a36Sopenharmony_ci			Set the number of jiffies to delay each step of
480062306a36Sopenharmony_ci			RCU grace-period cleanup.
480162306a36Sopenharmony_ci
480262306a36Sopenharmony_ci	rcutree.gp_init_delay=	[KNL]
480362306a36Sopenharmony_ci			Set the number of jiffies to delay each step of
480462306a36Sopenharmony_ci			RCU grace-period initialization.
480562306a36Sopenharmony_ci
480662306a36Sopenharmony_ci	rcutree.gp_preinit_delay=	[KNL]
480762306a36Sopenharmony_ci			Set the number of jiffies to delay each step of
480862306a36Sopenharmony_ci			RCU grace-period pre-initialization, that is,
480962306a36Sopenharmony_ci			the propagation of recent CPU-hotplug changes up
481062306a36Sopenharmony_ci			the rcu_node combining tree.
481162306a36Sopenharmony_ci
481262306a36Sopenharmony_ci	rcutree.jiffies_till_first_fqs= [KNL]
481362306a36Sopenharmony_ci			Set delay from grace-period initialization to
481462306a36Sopenharmony_ci			first attempt to force quiescent states.
481562306a36Sopenharmony_ci			Units are jiffies, minimum value is zero,
481662306a36Sopenharmony_ci			and maximum value is HZ.
481762306a36Sopenharmony_ci
481862306a36Sopenharmony_ci	rcutree.jiffies_till_next_fqs= [KNL]
481962306a36Sopenharmony_ci			Set delay between subsequent attempts to force
482062306a36Sopenharmony_ci			quiescent states.  Units are jiffies, minimum
482162306a36Sopenharmony_ci			value is one, and maximum value is HZ.
482262306a36Sopenharmony_ci
482362306a36Sopenharmony_ci	rcutree.jiffies_till_sched_qs= [KNL]
482462306a36Sopenharmony_ci			Set required age in jiffies for a
482562306a36Sopenharmony_ci			given grace period before RCU starts
482662306a36Sopenharmony_ci			soliciting quiescent-state help from
482762306a36Sopenharmony_ci			rcu_note_context_switch() and cond_resched().
482862306a36Sopenharmony_ci			If not specified, the kernel will calculate
482962306a36Sopenharmony_ci			a value based on the most recent settings
483062306a36Sopenharmony_ci			of rcutree.jiffies_till_first_fqs
483162306a36Sopenharmony_ci			and rcutree.jiffies_till_next_fqs.
483262306a36Sopenharmony_ci			This calculated value may be viewed in
483362306a36Sopenharmony_ci			rcutree.jiffies_to_sched_qs.  Any attempt to set
483462306a36Sopenharmony_ci			rcutree.jiffies_to_sched_qs will be cheerfully
483562306a36Sopenharmony_ci			overwritten.
483662306a36Sopenharmony_ci
483762306a36Sopenharmony_ci	rcutree.kthread_prio= 	 [KNL,BOOT]
483862306a36Sopenharmony_ci			Set the SCHED_FIFO priority of the RCU per-CPU
483962306a36Sopenharmony_ci			kthreads (rcuc/N). This value is also used for
484062306a36Sopenharmony_ci			the priority of the RCU boost threads (rcub/N)
484162306a36Sopenharmony_ci			and for the RCU grace-period kthreads (rcu_bh,
484262306a36Sopenharmony_ci			rcu_preempt, and rcu_sched). If RCU_BOOST is
484362306a36Sopenharmony_ci			set, valid values are 1-99 and the default is 1
484462306a36Sopenharmony_ci			(the least-favored priority).  Otherwise, when
484562306a36Sopenharmony_ci			RCU_BOOST is not set, valid values are 0-99 and
484662306a36Sopenharmony_ci			the default is zero (non-realtime operation).
484762306a36Sopenharmony_ci			When RCU_NOCB_CPU is set, also adjust the
484862306a36Sopenharmony_ci			priority of NOCB callback kthreads.
484962306a36Sopenharmony_ci
485062306a36Sopenharmony_ci	rcutree.nocb_nobypass_lim_per_jiffy= [KNL]
485162306a36Sopenharmony_ci			On callback-offloaded (rcu_nocbs) CPUs,
485262306a36Sopenharmony_ci			RCU reduces the lock contention that would
485362306a36Sopenharmony_ci			otherwise be caused by callback floods through
485462306a36Sopenharmony_ci			use of the ->nocb_bypass list.	However, in the
485562306a36Sopenharmony_ci			common non-flooded case, RCU queues directly to
485662306a36Sopenharmony_ci			the main ->cblist in order to avoid the extra
485762306a36Sopenharmony_ci			overhead of the ->nocb_bypass list and its lock.
485862306a36Sopenharmony_ci			But if there are too many callbacks queued during
485962306a36Sopenharmony_ci			a single jiffy, RCU pre-queues the callbacks into
486062306a36Sopenharmony_ci			the ->nocb_bypass queue.  The definition of "too
486162306a36Sopenharmony_ci			many" is supplied by this kernel boot parameter.
486262306a36Sopenharmony_ci
486362306a36Sopenharmony_ci	rcutree.qhimark= [KNL]
486462306a36Sopenharmony_ci			Set threshold of queued RCU callbacks beyond which
486562306a36Sopenharmony_ci			batch limiting is disabled.
486662306a36Sopenharmony_ci
486762306a36Sopenharmony_ci	rcutree.qlowmark= [KNL]
486862306a36Sopenharmony_ci			Set threshold of queued RCU callbacks below which
486962306a36Sopenharmony_ci			batch limiting is re-enabled.
487062306a36Sopenharmony_ci
487162306a36Sopenharmony_ci	rcutree.qovld= [KNL]
487262306a36Sopenharmony_ci			Set threshold of queued RCU callbacks beyond which
487362306a36Sopenharmony_ci			RCU's force-quiescent-state scan will aggressively
487462306a36Sopenharmony_ci			enlist help from cond_resched() and sched IPIs to
487562306a36Sopenharmony_ci			help CPUs more quickly reach quiescent states.
487662306a36Sopenharmony_ci			Set to less than zero to make this be set based
487762306a36Sopenharmony_ci			on rcutree.qhimark at boot time and to zero to
487862306a36Sopenharmony_ci			disable more aggressive help enlistment.
487962306a36Sopenharmony_ci
488062306a36Sopenharmony_ci	rcutree.rcu_delay_page_cache_fill_msec= [KNL]
488162306a36Sopenharmony_ci			Set the page-cache refill delay (in milliseconds)
488262306a36Sopenharmony_ci			in response to low-memory conditions.  The range
488362306a36Sopenharmony_ci			of permitted values is in the range 0:100000.
488462306a36Sopenharmony_ci
488562306a36Sopenharmony_ci	rcutree.rcu_divisor= [KNL]
488662306a36Sopenharmony_ci			Set the shift-right count to use to compute
488762306a36Sopenharmony_ci			the callback-invocation batch limit bl from
488862306a36Sopenharmony_ci			the number of callbacks queued on this CPU.
488962306a36Sopenharmony_ci			The result will be bounded below by the value of
489062306a36Sopenharmony_ci			the rcutree.blimit kernel parameter.  Every bl
489162306a36Sopenharmony_ci			callbacks, the softirq handler will exit in
489262306a36Sopenharmony_ci			order to allow the CPU to do other work.
489362306a36Sopenharmony_ci
489462306a36Sopenharmony_ci			Please note that this callback-invocation batch
489562306a36Sopenharmony_ci			limit applies only to non-offloaded callback
489662306a36Sopenharmony_ci			invocation.  Offloaded callbacks are instead
489762306a36Sopenharmony_ci			invoked in the context of an rcuoc kthread, which
489862306a36Sopenharmony_ci			scheduler will preempt as it does any other task.
489962306a36Sopenharmony_ci
490062306a36Sopenharmony_ci	rcutree.rcu_fanout_exact= [KNL]
490162306a36Sopenharmony_ci			Disable autobalancing of the rcu_node combining
490262306a36Sopenharmony_ci			tree.  This is used by rcutorture, and might
490362306a36Sopenharmony_ci			possibly be useful for architectures having high
490462306a36Sopenharmony_ci			cache-to-cache transfer latencies.
490562306a36Sopenharmony_ci
490662306a36Sopenharmony_ci	rcutree.rcu_fanout_leaf= [KNL]
490762306a36Sopenharmony_ci			Change the number of CPUs assigned to each
490862306a36Sopenharmony_ci			leaf rcu_node structure.  Useful for very
490962306a36Sopenharmony_ci			large systems, which will choose the value 64,
491062306a36Sopenharmony_ci			and for NUMA systems with large remote-access
491162306a36Sopenharmony_ci			latencies, which will choose a value aligned
491262306a36Sopenharmony_ci			with the appropriate hardware boundaries.
491362306a36Sopenharmony_ci
491462306a36Sopenharmony_ci	rcutree.rcu_min_cached_objs= [KNL]
491562306a36Sopenharmony_ci			Minimum number of objects which are cached and
491662306a36Sopenharmony_ci			maintained per one CPU. Object size is equal
491762306a36Sopenharmony_ci			to PAGE_SIZE. The cache allows to reduce the
491862306a36Sopenharmony_ci			pressure to page allocator, also it makes the
491962306a36Sopenharmony_ci			whole algorithm to behave better in low memory
492062306a36Sopenharmony_ci			condition.
492162306a36Sopenharmony_ci
492262306a36Sopenharmony_ci	rcutree.rcu_nocb_gp_stride= [KNL]
492362306a36Sopenharmony_ci			Set the number of NOCB callback kthreads in
492462306a36Sopenharmony_ci			each group, which defaults to the square root
492562306a36Sopenharmony_ci			of the number of CPUs.	Larger numbers reduce
492662306a36Sopenharmony_ci			the wakeup overhead on the global grace-period
492762306a36Sopenharmony_ci			kthread, but increases that same overhead on
492862306a36Sopenharmony_ci			each group's NOCB grace-period kthread.
492962306a36Sopenharmony_ci
493062306a36Sopenharmony_ci	rcutree.rcu_kick_kthreads= [KNL]
493162306a36Sopenharmony_ci			Cause the grace-period kthread to get an extra
493262306a36Sopenharmony_ci			wake_up() if it sleeps three times longer than
493362306a36Sopenharmony_ci			it should at force-quiescent-state time.
493462306a36Sopenharmony_ci			This wake_up() will be accompanied by a
493562306a36Sopenharmony_ci			WARN_ONCE() splat and an ftrace_dump().
493662306a36Sopenharmony_ci
493762306a36Sopenharmony_ci	rcutree.rcu_resched_ns= [KNL]
493862306a36Sopenharmony_ci			Limit the time spend invoking a batch of RCU
493962306a36Sopenharmony_ci			callbacks to the specified number of nanoseconds.
494062306a36Sopenharmony_ci			By default, this limit is checked only once
494162306a36Sopenharmony_ci			every 32 callbacks in order to limit the pain
494262306a36Sopenharmony_ci			inflicted by local_clock() overhead.
494362306a36Sopenharmony_ci
494462306a36Sopenharmony_ci	rcutree.rcu_unlock_delay= [KNL]
494562306a36Sopenharmony_ci			In CONFIG_RCU_STRICT_GRACE_PERIOD=y kernels,
494662306a36Sopenharmony_ci			this specifies an rcu_read_unlock()-time delay
494762306a36Sopenharmony_ci			in microseconds.  This defaults to zero.
494862306a36Sopenharmony_ci			Larger delays increase the probability of
494962306a36Sopenharmony_ci			catching RCU pointer leaks, that is, buggy use
495062306a36Sopenharmony_ci			of RCU-protected pointers after the relevant
495162306a36Sopenharmony_ci			rcu_read_unlock() has completed.
495262306a36Sopenharmony_ci
495362306a36Sopenharmony_ci	rcutree.sysrq_rcu= [KNL]
495462306a36Sopenharmony_ci			Commandeer a sysrq key to dump out Tree RCU's
495562306a36Sopenharmony_ci			rcu_node tree with an eye towards determining
495662306a36Sopenharmony_ci			why a new grace period has not yet started.
495762306a36Sopenharmony_ci
495862306a36Sopenharmony_ci	rcutree.use_softirq=	[KNL]
495962306a36Sopenharmony_ci			If set to zero, move all RCU_SOFTIRQ processing to
496062306a36Sopenharmony_ci			per-CPU rcuc kthreads.  Defaults to a non-zero
496162306a36Sopenharmony_ci			value, meaning that RCU_SOFTIRQ is used by default.
496262306a36Sopenharmony_ci			Specify rcutree.use_softirq=0 to use rcuc kthreads.
496362306a36Sopenharmony_ci
496462306a36Sopenharmony_ci			But note that CONFIG_PREEMPT_RT=y kernels disable
496562306a36Sopenharmony_ci			this kernel boot parameter, forcibly setting it
496662306a36Sopenharmony_ci			to zero.
496762306a36Sopenharmony_ci
496862306a36Sopenharmony_ci	rcuscale.gp_async= [KNL]
496962306a36Sopenharmony_ci			Measure performance of asynchronous
497062306a36Sopenharmony_ci			grace-period primitives such as call_rcu().
497162306a36Sopenharmony_ci
497262306a36Sopenharmony_ci	rcuscale.gp_async_max= [KNL]
497362306a36Sopenharmony_ci			Specify the maximum number of outstanding
497462306a36Sopenharmony_ci			callbacks per writer thread.  When a writer
497562306a36Sopenharmony_ci			thread exceeds this limit, it invokes the
497662306a36Sopenharmony_ci			corresponding flavor of rcu_barrier() to allow
497762306a36Sopenharmony_ci			previously posted callbacks to drain.
497862306a36Sopenharmony_ci
497962306a36Sopenharmony_ci	rcuscale.gp_exp= [KNL]
498062306a36Sopenharmony_ci			Measure performance of expedited synchronous
498162306a36Sopenharmony_ci			grace-period primitives.
498262306a36Sopenharmony_ci
498362306a36Sopenharmony_ci	rcuscale.holdoff= [KNL]
498462306a36Sopenharmony_ci			Set test-start holdoff period.  The purpose of
498562306a36Sopenharmony_ci			this parameter is to delay the start of the
498662306a36Sopenharmony_ci			test until boot completes in order to avoid
498762306a36Sopenharmony_ci			interference.
498862306a36Sopenharmony_ci
498962306a36Sopenharmony_ci	rcuscale.kfree_by_call_rcu= [KNL]
499062306a36Sopenharmony_ci			In kernels built with CONFIG_RCU_LAZY=y, test
499162306a36Sopenharmony_ci			call_rcu() instead of kfree_rcu().
499262306a36Sopenharmony_ci
499362306a36Sopenharmony_ci	rcuscale.kfree_mult= [KNL]
499462306a36Sopenharmony_ci			Instead of allocating an object of size kfree_obj,
499562306a36Sopenharmony_ci			allocate one of kfree_mult * sizeof(kfree_obj).
499662306a36Sopenharmony_ci			Defaults to 1.
499762306a36Sopenharmony_ci
499862306a36Sopenharmony_ci	rcuscale.kfree_rcu_test= [KNL]
499962306a36Sopenharmony_ci			Set to measure performance of kfree_rcu() flooding.
500062306a36Sopenharmony_ci
500162306a36Sopenharmony_ci	rcuscale.kfree_rcu_test_double= [KNL]
500262306a36Sopenharmony_ci			Test the double-argument variant of kfree_rcu().
500362306a36Sopenharmony_ci			If this parameter has the same value as
500462306a36Sopenharmony_ci			rcuscale.kfree_rcu_test_single, both the single-
500562306a36Sopenharmony_ci			and double-argument variants are tested.
500662306a36Sopenharmony_ci
500762306a36Sopenharmony_ci	rcuscale.kfree_rcu_test_single= [KNL]
500862306a36Sopenharmony_ci			Test the single-argument variant of kfree_rcu().
500962306a36Sopenharmony_ci			If this parameter has the same value as
501062306a36Sopenharmony_ci			rcuscale.kfree_rcu_test_double, both the single-
501162306a36Sopenharmony_ci			and double-argument variants are tested.
501262306a36Sopenharmony_ci
501362306a36Sopenharmony_ci	rcuscale.kfree_nthreads= [KNL]
501462306a36Sopenharmony_ci			The number of threads running loops of kfree_rcu().
501562306a36Sopenharmony_ci
501662306a36Sopenharmony_ci	rcuscale.kfree_alloc_num= [KNL]
501762306a36Sopenharmony_ci			Number of allocations and frees done in an iteration.
501862306a36Sopenharmony_ci
501962306a36Sopenharmony_ci	rcuscale.kfree_loops= [KNL]
502062306a36Sopenharmony_ci			Number of loops doing rcuscale.kfree_alloc_num number
502162306a36Sopenharmony_ci			of allocations and frees.
502262306a36Sopenharmony_ci
502362306a36Sopenharmony_ci	rcuscale.minruntime= [KNL]
502462306a36Sopenharmony_ci			Set the minimum test run time in seconds.  This
502562306a36Sopenharmony_ci			does not affect the data-collection interval,
502662306a36Sopenharmony_ci			but instead allows better measurement of things
502762306a36Sopenharmony_ci			like CPU consumption.
502862306a36Sopenharmony_ci
502962306a36Sopenharmony_ci	rcuscale.nreaders= [KNL]
503062306a36Sopenharmony_ci			Set number of RCU readers.  The value -1 selects
503162306a36Sopenharmony_ci			N, where N is the number of CPUs.  A value
503262306a36Sopenharmony_ci			"n" less than -1 selects N-n+1, where N is again
503362306a36Sopenharmony_ci			the number of CPUs.  For example, -2 selects N
503462306a36Sopenharmony_ci			(the number of CPUs), -3 selects N+1, and so on.
503562306a36Sopenharmony_ci			A value of "n" less than or equal to -N selects
503662306a36Sopenharmony_ci			a single reader.
503762306a36Sopenharmony_ci
503862306a36Sopenharmony_ci	rcuscale.nwriters= [KNL]
503962306a36Sopenharmony_ci			Set number of RCU writers.  The values operate
504062306a36Sopenharmony_ci			the same as for rcuscale.nreaders.
504162306a36Sopenharmony_ci			N, where N is the number of CPUs
504262306a36Sopenharmony_ci
504362306a36Sopenharmony_ci	rcuscale.scale_type= [KNL]
504462306a36Sopenharmony_ci			Specify the RCU implementation to test.
504562306a36Sopenharmony_ci
504662306a36Sopenharmony_ci	rcuscale.shutdown= [KNL]
504762306a36Sopenharmony_ci			Shut the system down after performance tests
504862306a36Sopenharmony_ci			complete.  This is useful for hands-off automated
504962306a36Sopenharmony_ci			testing.
505062306a36Sopenharmony_ci
505162306a36Sopenharmony_ci	rcuscale.verbose= [KNL]
505262306a36Sopenharmony_ci			Enable additional printk() statements.
505362306a36Sopenharmony_ci
505462306a36Sopenharmony_ci	rcuscale.writer_holdoff= [KNL]
505562306a36Sopenharmony_ci			Write-side holdoff between grace periods,
505662306a36Sopenharmony_ci			in microseconds.  The default of zero says
505762306a36Sopenharmony_ci			no holdoff.
505862306a36Sopenharmony_ci
505962306a36Sopenharmony_ci	rcuscale.writer_holdoff_jiffies= [KNL]
506062306a36Sopenharmony_ci			Additional write-side holdoff between grace
506162306a36Sopenharmony_ci			periods, but in jiffies.  The default of zero
506262306a36Sopenharmony_ci			says no holdoff.
506362306a36Sopenharmony_ci
506462306a36Sopenharmony_ci	rcutorture.fqs_duration= [KNL]
506562306a36Sopenharmony_ci			Set duration of force_quiescent_state bursts
506662306a36Sopenharmony_ci			in microseconds.
506762306a36Sopenharmony_ci
506862306a36Sopenharmony_ci	rcutorture.fqs_holdoff= [KNL]
506962306a36Sopenharmony_ci			Set holdoff time within force_quiescent_state bursts
507062306a36Sopenharmony_ci			in microseconds.
507162306a36Sopenharmony_ci
507262306a36Sopenharmony_ci	rcutorture.fqs_stutter= [KNL]
507362306a36Sopenharmony_ci			Set wait time between force_quiescent_state bursts
507462306a36Sopenharmony_ci			in seconds.
507562306a36Sopenharmony_ci
507662306a36Sopenharmony_ci	rcutorture.fwd_progress= [KNL]
507762306a36Sopenharmony_ci			Specifies the number of kthreads to be used
507862306a36Sopenharmony_ci			for  RCU grace-period forward-progress testing
507962306a36Sopenharmony_ci			for the types of RCU supporting this notion.
508062306a36Sopenharmony_ci			Defaults to 1 kthread, values less than zero or
508162306a36Sopenharmony_ci			greater than the number of CPUs cause the number
508262306a36Sopenharmony_ci			of CPUs to be used.
508362306a36Sopenharmony_ci
508462306a36Sopenharmony_ci	rcutorture.fwd_progress_div= [KNL]
508562306a36Sopenharmony_ci			Specify the fraction of a CPU-stall-warning
508662306a36Sopenharmony_ci			period to do tight-loop forward-progress testing.
508762306a36Sopenharmony_ci
508862306a36Sopenharmony_ci	rcutorture.fwd_progress_holdoff= [KNL]
508962306a36Sopenharmony_ci			Number of seconds to wait between successive
509062306a36Sopenharmony_ci			forward-progress tests.
509162306a36Sopenharmony_ci
509262306a36Sopenharmony_ci	rcutorture.fwd_progress_need_resched= [KNL]
509362306a36Sopenharmony_ci			Enclose cond_resched() calls within checks for
509462306a36Sopenharmony_ci			need_resched() during tight-loop forward-progress
509562306a36Sopenharmony_ci			testing.
509662306a36Sopenharmony_ci
509762306a36Sopenharmony_ci	rcutorture.gp_cond= [KNL]
509862306a36Sopenharmony_ci			Use conditional/asynchronous update-side
509962306a36Sopenharmony_ci			primitives, if available.
510062306a36Sopenharmony_ci
510162306a36Sopenharmony_ci	rcutorture.gp_exp= [KNL]
510262306a36Sopenharmony_ci			Use expedited update-side primitives, if available.
510362306a36Sopenharmony_ci
510462306a36Sopenharmony_ci	rcutorture.gp_normal= [KNL]
510562306a36Sopenharmony_ci			Use normal (non-expedited) asynchronous
510662306a36Sopenharmony_ci			update-side primitives, if available.
510762306a36Sopenharmony_ci
510862306a36Sopenharmony_ci	rcutorture.gp_sync= [KNL]
510962306a36Sopenharmony_ci			Use normal (non-expedited) synchronous
511062306a36Sopenharmony_ci			update-side primitives, if available.  If all
511162306a36Sopenharmony_ci			of rcutorture.gp_cond=, rcutorture.gp_exp=,
511262306a36Sopenharmony_ci			rcutorture.gp_normal=, and rcutorture.gp_sync=
511362306a36Sopenharmony_ci			are zero, rcutorture acts as if is interpreted
511462306a36Sopenharmony_ci			they are all non-zero.
511562306a36Sopenharmony_ci
511662306a36Sopenharmony_ci	rcutorture.irqreader= [KNL]
511762306a36Sopenharmony_ci			Run RCU readers from irq handlers, or, more
511862306a36Sopenharmony_ci			accurately, from a timer handler.  Not all RCU
511962306a36Sopenharmony_ci			flavors take kindly to this sort of thing.
512062306a36Sopenharmony_ci
512162306a36Sopenharmony_ci	rcutorture.leakpointer= [KNL]
512262306a36Sopenharmony_ci			Leak an RCU-protected pointer out of the reader.
512362306a36Sopenharmony_ci			This can of course result in splats, and is
512462306a36Sopenharmony_ci			intended to test the ability of things like
512562306a36Sopenharmony_ci			CONFIG_RCU_STRICT_GRACE_PERIOD=y to detect
512662306a36Sopenharmony_ci			such leaks.
512762306a36Sopenharmony_ci
512862306a36Sopenharmony_ci	rcutorture.n_barrier_cbs= [KNL]
512962306a36Sopenharmony_ci			Set callbacks/threads for rcu_barrier() testing.
513062306a36Sopenharmony_ci
513162306a36Sopenharmony_ci	rcutorture.nfakewriters= [KNL]
513262306a36Sopenharmony_ci			Set number of concurrent RCU writers.  These just
513362306a36Sopenharmony_ci			stress RCU, they don't participate in the actual
513462306a36Sopenharmony_ci			test, hence the "fake".
513562306a36Sopenharmony_ci
513662306a36Sopenharmony_ci	rcutorture.nocbs_nthreads= [KNL]
513762306a36Sopenharmony_ci			Set number of RCU callback-offload togglers.
513862306a36Sopenharmony_ci			Zero (the default) disables toggling.
513962306a36Sopenharmony_ci
514062306a36Sopenharmony_ci	rcutorture.nocbs_toggle= [KNL]
514162306a36Sopenharmony_ci			Set the delay in milliseconds between successive
514262306a36Sopenharmony_ci			callback-offload toggling attempts.
514362306a36Sopenharmony_ci
514462306a36Sopenharmony_ci	rcutorture.nreaders= [KNL]
514562306a36Sopenharmony_ci			Set number of RCU readers.  The value -1 selects
514662306a36Sopenharmony_ci			N-1, where N is the number of CPUs.  A value
514762306a36Sopenharmony_ci			"n" less than -1 selects N-n-2, where N is again
514862306a36Sopenharmony_ci			the number of CPUs.  For example, -2 selects N
514962306a36Sopenharmony_ci			(the number of CPUs), -3 selects N+1, and so on.
515062306a36Sopenharmony_ci
515162306a36Sopenharmony_ci	rcutorture.object_debug= [KNL]
515262306a36Sopenharmony_ci			Enable debug-object double-call_rcu() testing.
515362306a36Sopenharmony_ci
515462306a36Sopenharmony_ci	rcutorture.onoff_holdoff= [KNL]
515562306a36Sopenharmony_ci			Set time (s) after boot for CPU-hotplug testing.
515662306a36Sopenharmony_ci
515762306a36Sopenharmony_ci	rcutorture.onoff_interval= [KNL]
515862306a36Sopenharmony_ci			Set time (jiffies) between CPU-hotplug operations,
515962306a36Sopenharmony_ci			or zero to disable CPU-hotplug testing.
516062306a36Sopenharmony_ci
516162306a36Sopenharmony_ci	rcutorture.read_exit= [KNL]
516262306a36Sopenharmony_ci			Set the number of read-then-exit kthreads used
516362306a36Sopenharmony_ci			to test the interaction of RCU updaters and
516462306a36Sopenharmony_ci			task-exit processing.
516562306a36Sopenharmony_ci
516662306a36Sopenharmony_ci	rcutorture.read_exit_burst= [KNL]
516762306a36Sopenharmony_ci			The number of times in a given read-then-exit
516862306a36Sopenharmony_ci			episode that a set of read-then-exit kthreads
516962306a36Sopenharmony_ci			is spawned.
517062306a36Sopenharmony_ci
517162306a36Sopenharmony_ci	rcutorture.read_exit_delay= [KNL]
517262306a36Sopenharmony_ci			The delay, in seconds, between successive
517362306a36Sopenharmony_ci			read-then-exit testing episodes.
517462306a36Sopenharmony_ci
517562306a36Sopenharmony_ci	rcutorture.shuffle_interval= [KNL]
517662306a36Sopenharmony_ci			Set task-shuffle interval (s).  Shuffling tasks
517762306a36Sopenharmony_ci			allows some CPUs to go into dyntick-idle mode
517862306a36Sopenharmony_ci			during the rcutorture test.
517962306a36Sopenharmony_ci
518062306a36Sopenharmony_ci	rcutorture.shutdown_secs= [KNL]
518162306a36Sopenharmony_ci			Set time (s) after boot system shutdown.  This
518262306a36Sopenharmony_ci			is useful for hands-off automated testing.
518362306a36Sopenharmony_ci
518462306a36Sopenharmony_ci	rcutorture.stall_cpu= [KNL]
518562306a36Sopenharmony_ci			Duration of CPU stall (s) to test RCU CPU stall
518662306a36Sopenharmony_ci			warnings, zero to disable.
518762306a36Sopenharmony_ci
518862306a36Sopenharmony_ci	rcutorture.stall_cpu_block= [KNL]
518962306a36Sopenharmony_ci			Sleep while stalling if set.  This will result
519062306a36Sopenharmony_ci			in warnings from preemptible RCU in addition to
519162306a36Sopenharmony_ci			any other stall-related activity.  Note that
519262306a36Sopenharmony_ci			in kernels built with CONFIG_PREEMPTION=n and
519362306a36Sopenharmony_ci			CONFIG_PREEMPT_COUNT=y, this parameter will
519462306a36Sopenharmony_ci			cause the CPU to pass through a quiescent state.
519562306a36Sopenharmony_ci			Given CONFIG_PREEMPTION=n, this will suppress
519662306a36Sopenharmony_ci			RCU CPU stall warnings, but will instead result
519762306a36Sopenharmony_ci			in scheduling-while-atomic splats.
519862306a36Sopenharmony_ci
519962306a36Sopenharmony_ci			Use of this module parameter results in splats.
520062306a36Sopenharmony_ci
520162306a36Sopenharmony_ci
520262306a36Sopenharmony_ci	rcutorture.stall_cpu_holdoff= [KNL]
520362306a36Sopenharmony_ci			Time to wait (s) after boot before inducing stall.
520462306a36Sopenharmony_ci
520562306a36Sopenharmony_ci	rcutorture.stall_cpu_irqsoff= [KNL]
520662306a36Sopenharmony_ci			Disable interrupts while stalling if set.
520762306a36Sopenharmony_ci
520862306a36Sopenharmony_ci	rcutorture.stall_gp_kthread= [KNL]
520962306a36Sopenharmony_ci			Duration (s) of forced sleep within RCU
521062306a36Sopenharmony_ci			grace-period kthread to test RCU CPU stall
521162306a36Sopenharmony_ci			warnings, zero to disable.  If both stall_cpu
521262306a36Sopenharmony_ci			and stall_gp_kthread are specified, the
521362306a36Sopenharmony_ci			kthread is starved first, then the CPU.
521462306a36Sopenharmony_ci
521562306a36Sopenharmony_ci	rcutorture.stat_interval= [KNL]
521662306a36Sopenharmony_ci			Time (s) between statistics printk()s.
521762306a36Sopenharmony_ci
521862306a36Sopenharmony_ci	rcutorture.stutter= [KNL]
521962306a36Sopenharmony_ci			Time (s) to stutter testing, for example, specifying
522062306a36Sopenharmony_ci			five seconds causes the test to run for five seconds,
522162306a36Sopenharmony_ci			wait for five seconds, and so on.  This tests RCU's
522262306a36Sopenharmony_ci			ability to transition abruptly to and from idle.
522362306a36Sopenharmony_ci
522462306a36Sopenharmony_ci	rcutorture.test_boost= [KNL]
522562306a36Sopenharmony_ci			Test RCU priority boosting?  0=no, 1=maybe, 2=yes.
522662306a36Sopenharmony_ci			"Maybe" means test if the RCU implementation
522762306a36Sopenharmony_ci			under test support RCU priority boosting.
522862306a36Sopenharmony_ci
522962306a36Sopenharmony_ci	rcutorture.test_boost_duration= [KNL]
523062306a36Sopenharmony_ci			Duration (s) of each individual boost test.
523162306a36Sopenharmony_ci
523262306a36Sopenharmony_ci	rcutorture.test_boost_interval= [KNL]
523362306a36Sopenharmony_ci			Interval (s) between each boost test.
523462306a36Sopenharmony_ci
523562306a36Sopenharmony_ci	rcutorture.test_no_idle_hz= [KNL]
523662306a36Sopenharmony_ci			Test RCU's dyntick-idle handling.  See also the
523762306a36Sopenharmony_ci			rcutorture.shuffle_interval parameter.
523862306a36Sopenharmony_ci
523962306a36Sopenharmony_ci	rcutorture.torture_type= [KNL]
524062306a36Sopenharmony_ci			Specify the RCU implementation to test.
524162306a36Sopenharmony_ci
524262306a36Sopenharmony_ci	rcutorture.verbose= [KNL]
524362306a36Sopenharmony_ci			Enable additional printk() statements.
524462306a36Sopenharmony_ci
524562306a36Sopenharmony_ci	rcupdate.rcu_cpu_stall_ftrace_dump= [KNL]
524662306a36Sopenharmony_ci			Dump ftrace buffer after reporting RCU CPU
524762306a36Sopenharmony_ci			stall warning.
524862306a36Sopenharmony_ci
524962306a36Sopenharmony_ci	rcupdate.rcu_cpu_stall_suppress= [KNL]
525062306a36Sopenharmony_ci			Suppress RCU CPU stall warning messages.
525162306a36Sopenharmony_ci
525262306a36Sopenharmony_ci	rcupdate.rcu_cpu_stall_suppress_at_boot= [KNL]
525362306a36Sopenharmony_ci			Suppress RCU CPU stall warning messages and
525462306a36Sopenharmony_ci			rcutorture writer stall warnings that occur
525562306a36Sopenharmony_ci			during early boot, that is, during the time
525662306a36Sopenharmony_ci			before the init task is spawned.
525762306a36Sopenharmony_ci
525862306a36Sopenharmony_ci	rcupdate.rcu_cpu_stall_timeout= [KNL]
525962306a36Sopenharmony_ci			Set timeout for RCU CPU stall warning messages.
526062306a36Sopenharmony_ci			The value is in seconds and the maximum allowed
526162306a36Sopenharmony_ci			value is 300 seconds.
526262306a36Sopenharmony_ci
526362306a36Sopenharmony_ci	rcupdate.rcu_exp_cpu_stall_timeout= [KNL]
526462306a36Sopenharmony_ci			Set timeout for expedited RCU CPU stall warning
526562306a36Sopenharmony_ci			messages.  The value is in milliseconds
526662306a36Sopenharmony_ci			and the maximum allowed value is 21000
526762306a36Sopenharmony_ci			milliseconds. Please note that this value is
526862306a36Sopenharmony_ci			adjusted to an arch timer tick resolution.
526962306a36Sopenharmony_ci			Setting this to zero causes the value from
527062306a36Sopenharmony_ci			rcupdate.rcu_cpu_stall_timeout to be used (after
527162306a36Sopenharmony_ci			conversion from seconds to milliseconds).
527262306a36Sopenharmony_ci
527362306a36Sopenharmony_ci	rcupdate.rcu_cpu_stall_cputime= [KNL]
527462306a36Sopenharmony_ci			Provide statistics on the cputime and count of
527562306a36Sopenharmony_ci			interrupts and tasks during the sampling period. For
527662306a36Sopenharmony_ci			multiple continuous RCU stalls, all sampling periods
527762306a36Sopenharmony_ci			begin at half of the first RCU stall timeout.
527862306a36Sopenharmony_ci
527962306a36Sopenharmony_ci	rcupdate.rcu_exp_stall_task_details= [KNL]
528062306a36Sopenharmony_ci			Print stack dumps of any tasks blocking the
528162306a36Sopenharmony_ci			current expedited RCU grace period during an
528262306a36Sopenharmony_ci			expedited RCU CPU stall warning.
528362306a36Sopenharmony_ci
528462306a36Sopenharmony_ci	rcupdate.rcu_expedited= [KNL]
528562306a36Sopenharmony_ci			Use expedited grace-period primitives, for
528662306a36Sopenharmony_ci			example, synchronize_rcu_expedited() instead
528762306a36Sopenharmony_ci			of synchronize_rcu().  This reduces latency,
528862306a36Sopenharmony_ci			but can increase CPU utilization, degrade
528962306a36Sopenharmony_ci			real-time latency, and degrade energy efficiency.
529062306a36Sopenharmony_ci			No effect on CONFIG_TINY_RCU kernels.
529162306a36Sopenharmony_ci
529262306a36Sopenharmony_ci	rcupdate.rcu_normal= [KNL]
529362306a36Sopenharmony_ci			Use only normal grace-period primitives,
529462306a36Sopenharmony_ci			for example, synchronize_rcu() instead of
529562306a36Sopenharmony_ci			synchronize_rcu_expedited().  This improves
529662306a36Sopenharmony_ci			real-time latency, CPU utilization, and
529762306a36Sopenharmony_ci			energy efficiency, but can expose users to
529862306a36Sopenharmony_ci			increased grace-period latency.  This parameter
529962306a36Sopenharmony_ci			overrides rcupdate.rcu_expedited.  No effect on
530062306a36Sopenharmony_ci			CONFIG_TINY_RCU kernels.
530162306a36Sopenharmony_ci
530262306a36Sopenharmony_ci	rcupdate.rcu_normal_after_boot= [KNL]
530362306a36Sopenharmony_ci			Once boot has completed (that is, after
530462306a36Sopenharmony_ci			rcu_end_inkernel_boot() has been invoked), use
530562306a36Sopenharmony_ci			only normal grace-period primitives.  No effect
530662306a36Sopenharmony_ci			on CONFIG_TINY_RCU kernels.
530762306a36Sopenharmony_ci
530862306a36Sopenharmony_ci			But note that CONFIG_PREEMPT_RT=y kernels enables
530962306a36Sopenharmony_ci			this kernel boot parameter, forcibly setting
531062306a36Sopenharmony_ci			it to the value one, that is, converting any
531162306a36Sopenharmony_ci			post-boot attempt at an expedited RCU grace
531262306a36Sopenharmony_ci			period to instead use normal non-expedited
531362306a36Sopenharmony_ci			grace-period processing.
531462306a36Sopenharmony_ci
531562306a36Sopenharmony_ci	rcupdate.rcu_task_collapse_lim= [KNL]
531662306a36Sopenharmony_ci			Set the maximum number of callbacks present
531762306a36Sopenharmony_ci			at the beginning of a grace period that allows
531862306a36Sopenharmony_ci			the RCU Tasks flavors to collapse back to using
531962306a36Sopenharmony_ci			a single callback queue.  This switching only
532062306a36Sopenharmony_ci			occurs when rcupdate.rcu_task_enqueue_lim is
532162306a36Sopenharmony_ci			set to the default value of -1.
532262306a36Sopenharmony_ci
532362306a36Sopenharmony_ci	rcupdate.rcu_task_contend_lim= [KNL]
532462306a36Sopenharmony_ci			Set the minimum number of callback-queuing-time
532562306a36Sopenharmony_ci			lock-contention events per jiffy required to
532662306a36Sopenharmony_ci			cause the RCU Tasks flavors to switch to per-CPU
532762306a36Sopenharmony_ci			callback queuing.  This switching only occurs
532862306a36Sopenharmony_ci			when rcupdate.rcu_task_enqueue_lim is set to
532962306a36Sopenharmony_ci			the default value of -1.
533062306a36Sopenharmony_ci
533162306a36Sopenharmony_ci	rcupdate.rcu_task_enqueue_lim= [KNL]
533262306a36Sopenharmony_ci			Set the number of callback queues to use for the
533362306a36Sopenharmony_ci			RCU Tasks family of RCU flavors.  The default
533462306a36Sopenharmony_ci			of -1 allows this to be automatically (and
533562306a36Sopenharmony_ci			dynamically) adjusted.	This parameter is intended
533662306a36Sopenharmony_ci			for use in testing.
533762306a36Sopenharmony_ci
533862306a36Sopenharmony_ci	rcupdate.rcu_task_ipi_delay= [KNL]
533962306a36Sopenharmony_ci			Set time in jiffies during which RCU tasks will
534062306a36Sopenharmony_ci			avoid sending IPIs, starting with the beginning
534162306a36Sopenharmony_ci			of a given grace period.  Setting a large
534262306a36Sopenharmony_ci			number avoids disturbing real-time workloads,
534362306a36Sopenharmony_ci			but lengthens grace periods.
534462306a36Sopenharmony_ci
534562306a36Sopenharmony_ci	rcupdate.rcu_task_lazy_lim= [KNL]
534662306a36Sopenharmony_ci			Number of callbacks on a given CPU that will
534762306a36Sopenharmony_ci			cancel laziness on that CPU.  Use -1 to disable
534862306a36Sopenharmony_ci			cancellation of laziness, but be advised that
534962306a36Sopenharmony_ci			doing so increases the danger of OOM due to
535062306a36Sopenharmony_ci			callback flooding.
535162306a36Sopenharmony_ci
535262306a36Sopenharmony_ci	rcupdate.rcu_task_stall_info= [KNL]
535362306a36Sopenharmony_ci			Set initial timeout in jiffies for RCU task stall
535462306a36Sopenharmony_ci			informational messages, which give some indication
535562306a36Sopenharmony_ci			of the problem for those not patient enough to
535662306a36Sopenharmony_ci			wait for ten minutes.  Informational messages are
535762306a36Sopenharmony_ci			only printed prior to the stall-warning message
535862306a36Sopenharmony_ci			for a given grace period. Disable with a value
535962306a36Sopenharmony_ci			less than or equal to zero.  Defaults to ten
536062306a36Sopenharmony_ci			seconds.  A change in value does not take effect
536162306a36Sopenharmony_ci			until the beginning of the next grace period.
536262306a36Sopenharmony_ci
536362306a36Sopenharmony_ci	rcupdate.rcu_task_stall_info_mult= [KNL]
536462306a36Sopenharmony_ci			Multiplier for time interval between successive
536562306a36Sopenharmony_ci			RCU task stall informational messages for a given
536662306a36Sopenharmony_ci			RCU tasks grace period.  This value is clamped
536762306a36Sopenharmony_ci			to one through ten, inclusive.	It defaults to
536862306a36Sopenharmony_ci			the value three, so that the first informational
536962306a36Sopenharmony_ci			message is printed 10 seconds into the grace
537062306a36Sopenharmony_ci			period, the second at 40 seconds, the third at
537162306a36Sopenharmony_ci			160 seconds, and then the stall warning at 600
537262306a36Sopenharmony_ci			seconds would prevent a fourth at 640 seconds.
537362306a36Sopenharmony_ci
537462306a36Sopenharmony_ci	rcupdate.rcu_task_stall_timeout= [KNL]
537562306a36Sopenharmony_ci			Set timeout in jiffies for RCU task stall
537662306a36Sopenharmony_ci			warning messages.  Disable with a value less
537762306a36Sopenharmony_ci			than or equal to zero.	Defaults to ten minutes.
537862306a36Sopenharmony_ci			A change in value does not take effect until
537962306a36Sopenharmony_ci			the beginning of the next grace period.
538062306a36Sopenharmony_ci
538162306a36Sopenharmony_ci	rcupdate.rcu_tasks_lazy_ms= [KNL]
538262306a36Sopenharmony_ci			Set timeout in milliseconds RCU Tasks asynchronous
538362306a36Sopenharmony_ci			callback batching for call_rcu_tasks().
538462306a36Sopenharmony_ci			A negative value will take the default.  A value
538562306a36Sopenharmony_ci			of zero will disable batching.	Batching is
538662306a36Sopenharmony_ci			always disabled for synchronize_rcu_tasks().
538762306a36Sopenharmony_ci
538862306a36Sopenharmony_ci	rcupdate.rcu_tasks_rude_lazy_ms= [KNL]
538962306a36Sopenharmony_ci			Set timeout in milliseconds RCU Tasks
539062306a36Sopenharmony_ci			Rude asynchronous callback batching for
539162306a36Sopenharmony_ci			call_rcu_tasks_rude().	A negative value
539262306a36Sopenharmony_ci			will take the default.	A value of zero will
539362306a36Sopenharmony_ci			disable batching.  Batching is always disabled
539462306a36Sopenharmony_ci			for synchronize_rcu_tasks_rude().
539562306a36Sopenharmony_ci
539662306a36Sopenharmony_ci	rcupdate.rcu_tasks_trace_lazy_ms= [KNL]
539762306a36Sopenharmony_ci			Set timeout in milliseconds RCU Tasks
539862306a36Sopenharmony_ci			Trace asynchronous callback batching for
539962306a36Sopenharmony_ci			call_rcu_tasks_trace().  A negative value
540062306a36Sopenharmony_ci			will take the default.	A value of zero will
540162306a36Sopenharmony_ci			disable batching.  Batching is always disabled
540262306a36Sopenharmony_ci			for synchronize_rcu_tasks_trace().
540362306a36Sopenharmony_ci
540462306a36Sopenharmony_ci	rcupdate.rcu_self_test= [KNL]
540562306a36Sopenharmony_ci			Run the RCU early boot self tests
540662306a36Sopenharmony_ci
540762306a36Sopenharmony_ci	rdinit=		[KNL]
540862306a36Sopenharmony_ci			Format: <full_path>
540962306a36Sopenharmony_ci			Run specified binary instead of /init from the ramdisk,
541062306a36Sopenharmony_ci			used for early userspace startup. See initrd.
541162306a36Sopenharmony_ci
541262306a36Sopenharmony_ci	rdrand=		[X86]
541362306a36Sopenharmony_ci			force - Override the decision by the kernel to hide the
541462306a36Sopenharmony_ci				advertisement of RDRAND support (this affects
541562306a36Sopenharmony_ci				certain AMD processors because of buggy BIOS
541662306a36Sopenharmony_ci				support, specifically around the suspend/resume
541762306a36Sopenharmony_ci				path).
541862306a36Sopenharmony_ci
541962306a36Sopenharmony_ci	rdt=		[HW,X86,RDT]
542062306a36Sopenharmony_ci			Turn on/off individual RDT features. List is:
542162306a36Sopenharmony_ci			cmt, mbmtotal, mbmlocal, l3cat, l3cdp, l2cat, l2cdp,
542262306a36Sopenharmony_ci			mba, smba, bmec.
542362306a36Sopenharmony_ci			E.g. to turn on cmt and turn off mba use:
542462306a36Sopenharmony_ci				rdt=cmt,!mba
542562306a36Sopenharmony_ci
542662306a36Sopenharmony_ci	reboot=		[KNL]
542762306a36Sopenharmony_ci			Format (x86 or x86_64):
542862306a36Sopenharmony_ci				[w[arm] | c[old] | h[ard] | s[oft] | g[pio]] | d[efault] \
542962306a36Sopenharmony_ci				[[,]s[mp]#### \
543062306a36Sopenharmony_ci				[[,]b[ios] | a[cpi] | k[bd] | t[riple] | e[fi] | p[ci]] \
543162306a36Sopenharmony_ci				[[,]f[orce]
543262306a36Sopenharmony_ci			Where reboot_mode is one of warm (soft) or cold (hard) or gpio
543362306a36Sopenharmony_ci					(prefix with 'panic_' to set mode for panic
543462306a36Sopenharmony_ci					reboot only),
543562306a36Sopenharmony_ci			      reboot_type is one of bios, acpi, kbd, triple, efi, or pci,
543662306a36Sopenharmony_ci			      reboot_force is either force or not specified,
543762306a36Sopenharmony_ci			      reboot_cpu is s[mp]#### with #### being the processor
543862306a36Sopenharmony_ci					to be used for rebooting.
543962306a36Sopenharmony_ci
544062306a36Sopenharmony_ci	refscale.holdoff= [KNL]
544162306a36Sopenharmony_ci			Set test-start holdoff period.  The purpose of
544262306a36Sopenharmony_ci			this parameter is to delay the start of the
544362306a36Sopenharmony_ci			test until boot completes in order to avoid
544462306a36Sopenharmony_ci			interference.
544562306a36Sopenharmony_ci
544662306a36Sopenharmony_ci	refscale.loops= [KNL]
544762306a36Sopenharmony_ci			Set the number of loops over the synchronization
544862306a36Sopenharmony_ci			primitive under test.  Increasing this number
544962306a36Sopenharmony_ci			reduces noise due to loop start/end overhead,
545062306a36Sopenharmony_ci			but the default has already reduced the per-pass
545162306a36Sopenharmony_ci			noise to a handful of picoseconds on ca. 2020
545262306a36Sopenharmony_ci			x86 laptops.
545362306a36Sopenharmony_ci
545462306a36Sopenharmony_ci	refscale.nreaders= [KNL]
545562306a36Sopenharmony_ci			Set number of readers.  The default value of -1
545662306a36Sopenharmony_ci			selects N, where N is roughly 75% of the number
545762306a36Sopenharmony_ci			of CPUs.  A value of zero is an interesting choice.
545862306a36Sopenharmony_ci
545962306a36Sopenharmony_ci	refscale.nruns= [KNL]
546062306a36Sopenharmony_ci			Set number of runs, each of which is dumped onto
546162306a36Sopenharmony_ci			the console log.
546262306a36Sopenharmony_ci
546362306a36Sopenharmony_ci	refscale.readdelay= [KNL]
546462306a36Sopenharmony_ci			Set the read-side critical-section duration,
546562306a36Sopenharmony_ci			measured in microseconds.
546662306a36Sopenharmony_ci
546762306a36Sopenharmony_ci	refscale.scale_type= [KNL]
546862306a36Sopenharmony_ci			Specify the read-protection implementation to test.
546962306a36Sopenharmony_ci
547062306a36Sopenharmony_ci	refscale.shutdown= [KNL]
547162306a36Sopenharmony_ci			Shut down the system at the end of the performance
547262306a36Sopenharmony_ci			test.  This defaults to 1 (shut it down) when
547362306a36Sopenharmony_ci			refscale is built into the kernel and to 0 (leave
547462306a36Sopenharmony_ci			it running) when refscale is built as a module.
547562306a36Sopenharmony_ci
547662306a36Sopenharmony_ci	refscale.verbose= [KNL]
547762306a36Sopenharmony_ci			Enable additional printk() statements.
547862306a36Sopenharmony_ci
547962306a36Sopenharmony_ci	refscale.verbose_batched= [KNL]
548062306a36Sopenharmony_ci			Batch the additional printk() statements.  If zero
548162306a36Sopenharmony_ci			(the default) or negative, print everything.  Otherwise,
548262306a36Sopenharmony_ci			print every Nth verbose statement, where N is the value
548362306a36Sopenharmony_ci			specified.
548462306a36Sopenharmony_ci
548562306a36Sopenharmony_ci	relax_domain_level=
548662306a36Sopenharmony_ci			[KNL, SMP] Set scheduler's default relax_domain_level.
548762306a36Sopenharmony_ci			See Documentation/admin-guide/cgroup-v1/cpusets.rst.
548862306a36Sopenharmony_ci
548962306a36Sopenharmony_ci	reserve=	[KNL,BUGS] Force kernel to ignore I/O ports or memory
549062306a36Sopenharmony_ci			Format: <base1>,<size1>[,<base2>,<size2>,...]
549162306a36Sopenharmony_ci			Reserve I/O ports or memory so the kernel won't use
549262306a36Sopenharmony_ci			them.  If <base> is less than 0x10000, the region
549362306a36Sopenharmony_ci			is assumed to be I/O ports; otherwise it is memory.
549462306a36Sopenharmony_ci
549562306a36Sopenharmony_ci	reservetop=	[X86-32]
549662306a36Sopenharmony_ci			Format: nn[KMG]
549762306a36Sopenharmony_ci			Reserves a hole at the top of the kernel virtual
549862306a36Sopenharmony_ci			address space.
549962306a36Sopenharmony_ci
550062306a36Sopenharmony_ci	reset_devices	[KNL] Force drivers to reset the underlying device
550162306a36Sopenharmony_ci			during initialization.
550262306a36Sopenharmony_ci
550362306a36Sopenharmony_ci	resume=		[SWSUSP]
550462306a36Sopenharmony_ci			Specify the partition device for software suspend
550562306a36Sopenharmony_ci			Format:
550662306a36Sopenharmony_ci			{/dev/<dev> | PARTUUID=<uuid> | <int>:<int> | <hex>}
550762306a36Sopenharmony_ci
550862306a36Sopenharmony_ci	resume_offset=	[SWSUSP]
550962306a36Sopenharmony_ci			Specify the offset from the beginning of the partition
551062306a36Sopenharmony_ci			given by "resume=" at which the swap header is located,
551162306a36Sopenharmony_ci			in <PAGE_SIZE> units (needed only for swap files).
551262306a36Sopenharmony_ci			See  Documentation/power/swsusp-and-swap-files.rst
551362306a36Sopenharmony_ci
551462306a36Sopenharmony_ci	resumedelay=	[HIBERNATION] Delay (in seconds) to pause before attempting to
551562306a36Sopenharmony_ci			read the resume files
551662306a36Sopenharmony_ci
551762306a36Sopenharmony_ci	resumewait	[HIBERNATION] Wait (indefinitely) for resume device to show up.
551862306a36Sopenharmony_ci			Useful for devices that are detected asynchronously
551962306a36Sopenharmony_ci			(e.g. USB and MMC devices).
552062306a36Sopenharmony_ci
552162306a36Sopenharmony_ci	retain_initrd	[RAM] Keep initrd memory after extraction
552262306a36Sopenharmony_ci
552362306a36Sopenharmony_ci	retbleed=	[X86] Control mitigation of RETBleed (Arbitrary
552462306a36Sopenharmony_ci			Speculative Code Execution with Return Instructions)
552562306a36Sopenharmony_ci			vulnerability.
552662306a36Sopenharmony_ci
552762306a36Sopenharmony_ci			AMD-based UNRET and IBPB mitigations alone do not stop
552862306a36Sopenharmony_ci			sibling threads from influencing the predictions of other
552962306a36Sopenharmony_ci			sibling threads. For that reason, STIBP is used on pro-
553062306a36Sopenharmony_ci			cessors that support it, and mitigate SMT on processors
553162306a36Sopenharmony_ci			that don't.
553262306a36Sopenharmony_ci
553362306a36Sopenharmony_ci			off          - no mitigation
553462306a36Sopenharmony_ci			auto         - automatically select a migitation
553562306a36Sopenharmony_ci			auto,nosmt   - automatically select a mitigation,
553662306a36Sopenharmony_ci				       disabling SMT if necessary for
553762306a36Sopenharmony_ci				       the full mitigation (only on Zen1
553862306a36Sopenharmony_ci				       and older without STIBP).
553962306a36Sopenharmony_ci			ibpb         - On AMD, mitigate short speculation
554062306a36Sopenharmony_ci				       windows on basic block boundaries too.
554162306a36Sopenharmony_ci				       Safe, highest perf impact. It also
554262306a36Sopenharmony_ci				       enables STIBP if present. Not suitable
554362306a36Sopenharmony_ci				       on Intel.
554462306a36Sopenharmony_ci			ibpb,nosmt   - Like "ibpb" above but will disable SMT
554562306a36Sopenharmony_ci				       when STIBP is not available. This is
554662306a36Sopenharmony_ci				       the alternative for systems which do not
554762306a36Sopenharmony_ci				       have STIBP.
554862306a36Sopenharmony_ci			unret        - Force enable untrained return thunks,
554962306a36Sopenharmony_ci				       only effective on AMD f15h-f17h based
555062306a36Sopenharmony_ci				       systems.
555162306a36Sopenharmony_ci			unret,nosmt  - Like unret, but will disable SMT when STIBP
555262306a36Sopenharmony_ci				       is not available. This is the alternative for
555362306a36Sopenharmony_ci				       systems which do not have STIBP.
555462306a36Sopenharmony_ci
555562306a36Sopenharmony_ci			Selecting 'auto' will choose a mitigation method at run
555662306a36Sopenharmony_ci			time according to the CPU.
555762306a36Sopenharmony_ci
555862306a36Sopenharmony_ci			Not specifying this option is equivalent to retbleed=auto.
555962306a36Sopenharmony_ci
556062306a36Sopenharmony_ci	rfkill.default_state=
556162306a36Sopenharmony_ci		0	"airplane mode".  All wifi, bluetooth, wimax, gps, fm,
556262306a36Sopenharmony_ci			etc. communication is blocked by default.
556362306a36Sopenharmony_ci		1	Unblocked.
556462306a36Sopenharmony_ci
556562306a36Sopenharmony_ci	rfkill.master_switch_mode=
556662306a36Sopenharmony_ci		0	The "airplane mode" button does nothing.
556762306a36Sopenharmony_ci		1	The "airplane mode" button toggles between everything
556862306a36Sopenharmony_ci			blocked and the previous configuration.
556962306a36Sopenharmony_ci		2	The "airplane mode" button toggles between everything
557062306a36Sopenharmony_ci			blocked and everything unblocked.
557162306a36Sopenharmony_ci
557262306a36Sopenharmony_ci	rhash_entries=	[KNL,NET]
557362306a36Sopenharmony_ci			Set number of hash buckets for route cache
557462306a36Sopenharmony_ci
557562306a36Sopenharmony_ci	ring3mwait=disable
557662306a36Sopenharmony_ci			[KNL] Disable ring 3 MONITOR/MWAIT feature on supported
557762306a36Sopenharmony_ci			CPUs.
557862306a36Sopenharmony_ci
557962306a36Sopenharmony_ci	riscv_isa_fallback [RISCV]
558062306a36Sopenharmony_ci			When CONFIG_RISCV_ISA_FALLBACK is not enabled, permit
558162306a36Sopenharmony_ci			falling back to detecting extension support by parsing
558262306a36Sopenharmony_ci			"riscv,isa" property on devicetree systems when the
558362306a36Sopenharmony_ci			replacement properties are not found. See the Kconfig
558462306a36Sopenharmony_ci			entry for RISCV_ISA_FALLBACK.
558562306a36Sopenharmony_ci
558662306a36Sopenharmony_ci	ro		[KNL] Mount root device read-only on boot
558762306a36Sopenharmony_ci
558862306a36Sopenharmony_ci	rodata=		[KNL]
558962306a36Sopenharmony_ci		on	Mark read-only kernel memory as read-only (default).
559062306a36Sopenharmony_ci		off	Leave read-only kernel memory writable for debugging.
559162306a36Sopenharmony_ci		full	Mark read-only kernel memory and aliases as read-only
559262306a36Sopenharmony_ci		        [arm64]
559362306a36Sopenharmony_ci
559462306a36Sopenharmony_ci	rockchip.usb_uart
559562306a36Sopenharmony_ci			Enable the uart passthrough on the designated usb port
559662306a36Sopenharmony_ci			on Rockchip SoCs. When active, the signals of the
559762306a36Sopenharmony_ci			debug-uart get routed to the D+ and D- pins of the usb
559862306a36Sopenharmony_ci			port and the regular usb controller gets disabled.
559962306a36Sopenharmony_ci
560062306a36Sopenharmony_ci	root=		[KNL] Root filesystem
560162306a36Sopenharmony_ci			Usually this a a block device specifier of some kind,
560262306a36Sopenharmony_ci			see the early_lookup_bdev comment in
560362306a36Sopenharmony_ci			block/early-lookup.c for details.
560462306a36Sopenharmony_ci			Alternatively this can be "ram" for the legacy initial
560562306a36Sopenharmony_ci			ramdisk, "nfs" and "cifs" for root on a network file
560662306a36Sopenharmony_ci			system, or "mtd" and "ubi" for mounting from raw flash.
560762306a36Sopenharmony_ci
560862306a36Sopenharmony_ci	rootdelay=	[KNL] Delay (in seconds) to pause before attempting to
560962306a36Sopenharmony_ci			mount the root filesystem
561062306a36Sopenharmony_ci
561162306a36Sopenharmony_ci	rootflags=	[KNL] Set root filesystem mount option string
561262306a36Sopenharmony_ci
561362306a36Sopenharmony_ci	rootfstype=	[KNL] Set root filesystem type
561462306a36Sopenharmony_ci
561562306a36Sopenharmony_ci	rootwait	[KNL] Wait (indefinitely) for root device to show up.
561662306a36Sopenharmony_ci			Useful for devices that are detected asynchronously
561762306a36Sopenharmony_ci			(e.g. USB and MMC devices).
561862306a36Sopenharmony_ci
561962306a36Sopenharmony_ci	rootwait=	[KNL] Maximum time (in seconds) to wait for root device
562062306a36Sopenharmony_ci			to show up before attempting to mount the root
562162306a36Sopenharmony_ci			filesystem.
562262306a36Sopenharmony_ci
562362306a36Sopenharmony_ci	rproc_mem=nn[KMG][@address]
562462306a36Sopenharmony_ci			[KNL,ARM,CMA] Remoteproc physical memory block.
562562306a36Sopenharmony_ci			Memory area to be used by remote processor image,
562662306a36Sopenharmony_ci			managed by CMA.
562762306a36Sopenharmony_ci
562862306a36Sopenharmony_ci	rw		[KNL] Mount root device read-write on boot
562962306a36Sopenharmony_ci
563062306a36Sopenharmony_ci	S		[KNL] Run init in single mode
563162306a36Sopenharmony_ci
563262306a36Sopenharmony_ci	s390_iommu=	[HW,S390]
563362306a36Sopenharmony_ci			Set s390 IOTLB flushing mode
563462306a36Sopenharmony_ci		strict
563562306a36Sopenharmony_ci			With strict flushing every unmap operation will result in
563662306a36Sopenharmony_ci			an IOTLB flush. Default is lazy flushing before reuse,
563762306a36Sopenharmony_ci			which is faster.
563862306a36Sopenharmony_ci
563962306a36Sopenharmony_ci	s390_iommu_aperture=	[KNL,S390]
564062306a36Sopenharmony_ci			Specifies the size of the per device DMA address space
564162306a36Sopenharmony_ci			accessible through the DMA and IOMMU APIs as a decimal
564262306a36Sopenharmony_ci			factor of the size of main memory.
564362306a36Sopenharmony_ci			The default is 1 meaning that one can concurrently use
564462306a36Sopenharmony_ci			as many DMA addresses as physical memory is installed,
564562306a36Sopenharmony_ci			if supported by hardware, and thus map all of memory
564662306a36Sopenharmony_ci			once. With a value of 2 one can map all of memory twice
564762306a36Sopenharmony_ci			and so on. As a special case a factor of 0 imposes no
564862306a36Sopenharmony_ci			restrictions other than those given by hardware at the
564962306a36Sopenharmony_ci			cost of significant additional memory use for tables.
565062306a36Sopenharmony_ci
565162306a36Sopenharmony_ci	sa1100ir	[NET]
565262306a36Sopenharmony_ci			See drivers/net/irda/sa1100_ir.c.
565362306a36Sopenharmony_ci
565462306a36Sopenharmony_ci	sched_verbose	[KNL] Enables verbose scheduler debug messages.
565562306a36Sopenharmony_ci
565662306a36Sopenharmony_ci	schedstats=	[KNL,X86] Enable or disable scheduled statistics.
565762306a36Sopenharmony_ci			Allowed values are enable and disable. This feature
565862306a36Sopenharmony_ci			incurs a small amount of overhead in the scheduler
565962306a36Sopenharmony_ci			but is useful for debugging and performance tuning.
566062306a36Sopenharmony_ci
566162306a36Sopenharmony_ci	sched_thermal_decay_shift=
566262306a36Sopenharmony_ci			[KNL, SMP] Set a decay shift for scheduler thermal
566362306a36Sopenharmony_ci			pressure signal. Thermal pressure signal follows the
566462306a36Sopenharmony_ci			default decay period of other scheduler pelt
566562306a36Sopenharmony_ci			signals(usually 32 ms but configurable). Setting
566662306a36Sopenharmony_ci			sched_thermal_decay_shift will left shift the decay
566762306a36Sopenharmony_ci			period for the thermal pressure signal by the shift
566862306a36Sopenharmony_ci			value.
566962306a36Sopenharmony_ci			i.e. with the default pelt decay period of 32 ms
567062306a36Sopenharmony_ci			sched_thermal_decay_shift   thermal pressure decay pr
567162306a36Sopenharmony_ci				1			64 ms
567262306a36Sopenharmony_ci				2			128 ms
567362306a36Sopenharmony_ci			and so on.
567462306a36Sopenharmony_ci			Format: integer between 0 and 10
567562306a36Sopenharmony_ci			Default is 0.
567662306a36Sopenharmony_ci
567762306a36Sopenharmony_ci	scftorture.holdoff= [KNL]
567862306a36Sopenharmony_ci			Number of seconds to hold off before starting
567962306a36Sopenharmony_ci			test.  Defaults to zero for module insertion and
568062306a36Sopenharmony_ci			to 10 seconds for built-in smp_call_function()
568162306a36Sopenharmony_ci			tests.
568262306a36Sopenharmony_ci
568362306a36Sopenharmony_ci	scftorture.longwait= [KNL]
568462306a36Sopenharmony_ci			Request ridiculously long waits randomly selected
568562306a36Sopenharmony_ci			up to the chosen limit in seconds.  Zero (the
568662306a36Sopenharmony_ci			default) disables this feature.  Please note
568762306a36Sopenharmony_ci			that requesting even small non-zero numbers of
568862306a36Sopenharmony_ci			seconds can result in RCU CPU stall warnings,
568962306a36Sopenharmony_ci			softlockup complaints, and so on.
569062306a36Sopenharmony_ci
569162306a36Sopenharmony_ci	scftorture.nthreads= [KNL]
569262306a36Sopenharmony_ci			Number of kthreads to spawn to invoke the
569362306a36Sopenharmony_ci			smp_call_function() family of functions.
569462306a36Sopenharmony_ci			The default of -1 specifies a number of kthreads
569562306a36Sopenharmony_ci			equal to the number of CPUs.
569662306a36Sopenharmony_ci
569762306a36Sopenharmony_ci	scftorture.onoff_holdoff= [KNL]
569862306a36Sopenharmony_ci			Number seconds to wait after the start of the
569962306a36Sopenharmony_ci			test before initiating CPU-hotplug operations.
570062306a36Sopenharmony_ci
570162306a36Sopenharmony_ci	scftorture.onoff_interval= [KNL]
570262306a36Sopenharmony_ci			Number seconds to wait between successive
570362306a36Sopenharmony_ci			CPU-hotplug operations.  Specifying zero (which
570462306a36Sopenharmony_ci			is the default) disables CPU-hotplug operations.
570562306a36Sopenharmony_ci
570662306a36Sopenharmony_ci	scftorture.shutdown_secs= [KNL]
570762306a36Sopenharmony_ci			The number of seconds following the start of the
570862306a36Sopenharmony_ci			test after which to shut down the system.  The
570962306a36Sopenharmony_ci			default of zero avoids shutting down the system.
571062306a36Sopenharmony_ci			Non-zero values are useful for automated tests.
571162306a36Sopenharmony_ci
571262306a36Sopenharmony_ci	scftorture.stat_interval= [KNL]
571362306a36Sopenharmony_ci			The number of seconds between outputting the
571462306a36Sopenharmony_ci			current test statistics to the console.  A value
571562306a36Sopenharmony_ci			of zero disables statistics output.
571662306a36Sopenharmony_ci
571762306a36Sopenharmony_ci	scftorture.stutter_cpus= [KNL]
571862306a36Sopenharmony_ci			The number of jiffies to wait between each change
571962306a36Sopenharmony_ci			to the set of CPUs under test.
572062306a36Sopenharmony_ci
572162306a36Sopenharmony_ci	scftorture.use_cpus_read_lock= [KNL]
572262306a36Sopenharmony_ci			Use use_cpus_read_lock() instead of the default
572362306a36Sopenharmony_ci			preempt_disable() to disable CPU hotplug
572462306a36Sopenharmony_ci			while invoking one of the smp_call_function*()
572562306a36Sopenharmony_ci			functions.
572662306a36Sopenharmony_ci
572762306a36Sopenharmony_ci	scftorture.verbose= [KNL]
572862306a36Sopenharmony_ci			Enable additional printk() statements.
572962306a36Sopenharmony_ci
573062306a36Sopenharmony_ci	scftorture.weight_single= [KNL]
573162306a36Sopenharmony_ci			The probability weighting to use for the
573262306a36Sopenharmony_ci			smp_call_function_single() function with a zero
573362306a36Sopenharmony_ci			"wait" parameter.  A value of -1 selects the
573462306a36Sopenharmony_ci			default if all other weights are -1.  However,
573562306a36Sopenharmony_ci			if at least one weight has some other value, a
573662306a36Sopenharmony_ci			value of -1 will instead select a weight of zero.
573762306a36Sopenharmony_ci
573862306a36Sopenharmony_ci	scftorture.weight_single_wait= [KNL]
573962306a36Sopenharmony_ci			The probability weighting to use for the
574062306a36Sopenharmony_ci			smp_call_function_single() function with a
574162306a36Sopenharmony_ci			non-zero "wait" parameter.  See weight_single.
574262306a36Sopenharmony_ci
574362306a36Sopenharmony_ci	scftorture.weight_many= [KNL]
574462306a36Sopenharmony_ci			The probability weighting to use for the
574562306a36Sopenharmony_ci			smp_call_function_many() function with a zero
574662306a36Sopenharmony_ci			"wait" parameter.  See weight_single.
574762306a36Sopenharmony_ci			Note well that setting a high probability for
574862306a36Sopenharmony_ci			this weighting can place serious IPI load
574962306a36Sopenharmony_ci			on the system.
575062306a36Sopenharmony_ci
575162306a36Sopenharmony_ci	scftorture.weight_many_wait= [KNL]
575262306a36Sopenharmony_ci			The probability weighting to use for the
575362306a36Sopenharmony_ci			smp_call_function_many() function with a
575462306a36Sopenharmony_ci			non-zero "wait" parameter.  See weight_single
575562306a36Sopenharmony_ci			and weight_many.
575662306a36Sopenharmony_ci
575762306a36Sopenharmony_ci	scftorture.weight_all= [KNL]
575862306a36Sopenharmony_ci			The probability weighting to use for the
575962306a36Sopenharmony_ci			smp_call_function_all() function with a zero
576062306a36Sopenharmony_ci			"wait" parameter.  See weight_single and
576162306a36Sopenharmony_ci			weight_many.
576262306a36Sopenharmony_ci
576362306a36Sopenharmony_ci	scftorture.weight_all_wait= [KNL]
576462306a36Sopenharmony_ci			The probability weighting to use for the
576562306a36Sopenharmony_ci			smp_call_function_all() function with a
576662306a36Sopenharmony_ci			non-zero "wait" parameter.  See weight_single
576762306a36Sopenharmony_ci			and weight_many.
576862306a36Sopenharmony_ci
576962306a36Sopenharmony_ci	skew_tick=	[KNL] Offset the periodic timer tick per cpu to mitigate
577062306a36Sopenharmony_ci			xtime_lock contention on larger systems, and/or RCU lock
577162306a36Sopenharmony_ci			contention on all systems with CONFIG_MAXSMP set.
577262306a36Sopenharmony_ci			Format: { "0" | "1" }
577362306a36Sopenharmony_ci			0 -- disable. (may be 1 via CONFIG_CMDLINE="skew_tick=1"
577462306a36Sopenharmony_ci			1 -- enable.
577562306a36Sopenharmony_ci			Note: increases power consumption, thus should only be
577662306a36Sopenharmony_ci			enabled if running jitter sensitive (HPC/RT) workloads.
577762306a36Sopenharmony_ci
577862306a36Sopenharmony_ci	security=	[SECURITY] Choose a legacy "major" security module to
577962306a36Sopenharmony_ci			enable at boot. This has been deprecated by the
578062306a36Sopenharmony_ci			"lsm=" parameter.
578162306a36Sopenharmony_ci
578262306a36Sopenharmony_ci	selinux=	[SELINUX] Disable or enable SELinux at boot time.
578362306a36Sopenharmony_ci			Format: { "0" | "1" }
578462306a36Sopenharmony_ci			See security/selinux/Kconfig help text.
578562306a36Sopenharmony_ci			0 -- disable.
578662306a36Sopenharmony_ci			1 -- enable.
578762306a36Sopenharmony_ci			Default value is 1.
578862306a36Sopenharmony_ci
578962306a36Sopenharmony_ci	serialnumber	[BUGS=X86-32]
579062306a36Sopenharmony_ci
579162306a36Sopenharmony_ci	sev=option[,option...] [X86-64] See Documentation/arch/x86/x86_64/boot-options.rst
579262306a36Sopenharmony_ci
579362306a36Sopenharmony_ci	shapers=	[NET]
579462306a36Sopenharmony_ci			Maximal number of shapers.
579562306a36Sopenharmony_ci
579662306a36Sopenharmony_ci	show_lapic=	[APIC,X86] Advanced Programmable Interrupt Controller
579762306a36Sopenharmony_ci			Limit apic dumping. The parameter defines the maximal
579862306a36Sopenharmony_ci			number of local apics being dumped. Also it is possible
579962306a36Sopenharmony_ci			to set it to "all" by meaning -- no limit here.
580062306a36Sopenharmony_ci			Format: { 1 (default) | 2 | ... | all }.
580162306a36Sopenharmony_ci			The parameter valid if only apic=debug or
580262306a36Sopenharmony_ci			apic=verbose is specified.
580362306a36Sopenharmony_ci			Example: apic=debug show_lapic=all
580462306a36Sopenharmony_ci
580562306a36Sopenharmony_ci	simeth=		[IA-64]
580662306a36Sopenharmony_ci	simscsi=
580762306a36Sopenharmony_ci
580862306a36Sopenharmony_ci	slram=		[HW,MTD]
580962306a36Sopenharmony_ci
581062306a36Sopenharmony_ci	slab_merge	[MM]
581162306a36Sopenharmony_ci			Enable merging of slabs with similar size when the
581262306a36Sopenharmony_ci			kernel is built without CONFIG_SLAB_MERGE_DEFAULT.
581362306a36Sopenharmony_ci
581462306a36Sopenharmony_ci	slab_nomerge	[MM]
581562306a36Sopenharmony_ci			Disable merging of slabs with similar size. May be
581662306a36Sopenharmony_ci			necessary if there is some reason to distinguish
581762306a36Sopenharmony_ci			allocs to different slabs, especially in hardened
581862306a36Sopenharmony_ci			environments where the risk of heap overflows and
581962306a36Sopenharmony_ci			layout control by attackers can usually be
582062306a36Sopenharmony_ci			frustrated by disabling merging. This will reduce
582162306a36Sopenharmony_ci			most of the exposure of a heap attack to a single
582262306a36Sopenharmony_ci			cache (risks via metadata attacks are mostly
582362306a36Sopenharmony_ci			unchanged). Debug options disable merging on their
582462306a36Sopenharmony_ci			own.
582562306a36Sopenharmony_ci			For more information see Documentation/mm/slub.rst.
582662306a36Sopenharmony_ci
582762306a36Sopenharmony_ci	slab_max_order=	[MM, SLAB]
582862306a36Sopenharmony_ci			Determines the maximum allowed order for slabs.
582962306a36Sopenharmony_ci			A high setting may cause OOMs due to memory
583062306a36Sopenharmony_ci			fragmentation.  Defaults to 1 for systems with
583162306a36Sopenharmony_ci			more than 32MB of RAM, 0 otherwise.
583262306a36Sopenharmony_ci
583362306a36Sopenharmony_ci	slub_debug[=options[,slabs][;[options[,slabs]]...]	[MM, SLUB]
583462306a36Sopenharmony_ci			Enabling slub_debug allows one to determine the
583562306a36Sopenharmony_ci			culprit if slab objects become corrupted. Enabling
583662306a36Sopenharmony_ci			slub_debug can create guard zones around objects and
583762306a36Sopenharmony_ci			may poison objects when not in use. Also tracks the
583862306a36Sopenharmony_ci			last alloc / free. For more information see
583962306a36Sopenharmony_ci			Documentation/mm/slub.rst.
584062306a36Sopenharmony_ci
584162306a36Sopenharmony_ci	slub_max_order= [MM, SLUB]
584262306a36Sopenharmony_ci			Determines the maximum allowed order for slabs.
584362306a36Sopenharmony_ci			A high setting may cause OOMs due to memory
584462306a36Sopenharmony_ci			fragmentation. For more information see
584562306a36Sopenharmony_ci			Documentation/mm/slub.rst.
584662306a36Sopenharmony_ci
584762306a36Sopenharmony_ci	slub_min_objects=	[MM, SLUB]
584862306a36Sopenharmony_ci			The minimum number of objects per slab. SLUB will
584962306a36Sopenharmony_ci			increase the slab order up to slub_max_order to
585062306a36Sopenharmony_ci			generate a sufficiently large slab able to contain
585162306a36Sopenharmony_ci			the number of objects indicated. The higher the number
585262306a36Sopenharmony_ci			of objects the smaller the overhead of tracking slabs
585362306a36Sopenharmony_ci			and the less frequently locks need to be acquired.
585462306a36Sopenharmony_ci			For more information see Documentation/mm/slub.rst.
585562306a36Sopenharmony_ci
585662306a36Sopenharmony_ci	slub_min_order=	[MM, SLUB]
585762306a36Sopenharmony_ci			Determines the minimum page order for slabs. Must be
585862306a36Sopenharmony_ci			lower than slub_max_order.
585962306a36Sopenharmony_ci			For more information see Documentation/mm/slub.rst.
586062306a36Sopenharmony_ci
586162306a36Sopenharmony_ci	slub_merge	[MM, SLUB]
586262306a36Sopenharmony_ci			Same with slab_merge.
586362306a36Sopenharmony_ci
586462306a36Sopenharmony_ci	slub_nomerge	[MM, SLUB]
586562306a36Sopenharmony_ci			Same with slab_nomerge. This is supported for legacy.
586662306a36Sopenharmony_ci			See slab_nomerge for more information.
586762306a36Sopenharmony_ci
586862306a36Sopenharmony_ci	smart2=		[HW]
586962306a36Sopenharmony_ci			Format: <io1>[,<io2>[,...,<io8>]]
587062306a36Sopenharmony_ci
587162306a36Sopenharmony_ci	smp.csd_lock_timeout= [KNL]
587262306a36Sopenharmony_ci			Specify the period of time in milliseconds
587362306a36Sopenharmony_ci			that smp_call_function() and friends will wait
587462306a36Sopenharmony_ci			for a CPU to release the CSD lock.  This is
587562306a36Sopenharmony_ci			useful when diagnosing bugs involving CPUs
587662306a36Sopenharmony_ci			disabling interrupts for extended periods
587762306a36Sopenharmony_ci			of time.  Defaults to 5,000 milliseconds, and
587862306a36Sopenharmony_ci			setting a value of zero disables this feature.
587962306a36Sopenharmony_ci			This feature may be more efficiently disabled
588062306a36Sopenharmony_ci			using the csdlock_debug- kernel parameter.
588162306a36Sopenharmony_ci
588262306a36Sopenharmony_ci	smp.panic_on_ipistall= [KNL]
588362306a36Sopenharmony_ci			If a csd_lock_timeout extends for more than
588462306a36Sopenharmony_ci			the specified number of milliseconds, panic the
588562306a36Sopenharmony_ci			system.  By default, let CSD-lock acquisition
588662306a36Sopenharmony_ci			take as long as they take.  Specifying 300,000
588762306a36Sopenharmony_ci			for this value provides a 5-minute timeout.
588862306a36Sopenharmony_ci
588962306a36Sopenharmony_ci	smsc-ircc2.nopnp	[HW] Don't use PNP to discover SMC devices
589062306a36Sopenharmony_ci	smsc-ircc2.ircc_cfg=	[HW] Device configuration I/O port
589162306a36Sopenharmony_ci	smsc-ircc2.ircc_sir=	[HW] SIR base I/O port
589262306a36Sopenharmony_ci	smsc-ircc2.ircc_fir=	[HW] FIR base I/O port
589362306a36Sopenharmony_ci	smsc-ircc2.ircc_irq=	[HW] IRQ line
589462306a36Sopenharmony_ci	smsc-ircc2.ircc_dma=	[HW] DMA channel
589562306a36Sopenharmony_ci	smsc-ircc2.ircc_transceiver= [HW] Transceiver type:
589662306a36Sopenharmony_ci				0: Toshiba Satellite 1800 (GP data pin select)
589762306a36Sopenharmony_ci				1: Fast pin select (default)
589862306a36Sopenharmony_ci				2: ATC IRMode
589962306a36Sopenharmony_ci
590062306a36Sopenharmony_ci	smt=		[KNL,MIPS,S390] Set the maximum number of threads (logical
590162306a36Sopenharmony_ci			CPUs) to use per physical CPU on systems capable of
590262306a36Sopenharmony_ci			symmetric multithreading (SMT). Will be capped to the
590362306a36Sopenharmony_ci			actual hardware limit.
590462306a36Sopenharmony_ci			Format: <integer>
590562306a36Sopenharmony_ci			Default: -1 (no limit)
590662306a36Sopenharmony_ci
590762306a36Sopenharmony_ci	softlockup_panic=
590862306a36Sopenharmony_ci			[KNL] Should the soft-lockup detector generate panics.
590962306a36Sopenharmony_ci			Format: 0 | 1
591062306a36Sopenharmony_ci
591162306a36Sopenharmony_ci			A value of 1 instructs the soft-lockup detector
591262306a36Sopenharmony_ci			to panic the machine when a soft-lockup occurs. It is
591362306a36Sopenharmony_ci			also controlled by the kernel.softlockup_panic sysctl
591462306a36Sopenharmony_ci			and CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC, which is the
591562306a36Sopenharmony_ci			respective build-time switch to that functionality.
591662306a36Sopenharmony_ci
591762306a36Sopenharmony_ci	softlockup_all_cpu_backtrace=
591862306a36Sopenharmony_ci			[KNL] Should the soft-lockup detector generate
591962306a36Sopenharmony_ci			backtraces on all cpus.
592062306a36Sopenharmony_ci			Format: 0 | 1
592162306a36Sopenharmony_ci
592262306a36Sopenharmony_ci	sonypi.*=	[HW] Sony Programmable I/O Control Device driver
592362306a36Sopenharmony_ci			See Documentation/admin-guide/laptops/sonypi.rst
592462306a36Sopenharmony_ci
592562306a36Sopenharmony_ci	spectre_v2=	[X86] Control mitigation of Spectre variant 2
592662306a36Sopenharmony_ci			(indirect branch speculation) vulnerability.
592762306a36Sopenharmony_ci			The default operation protects the kernel from
592862306a36Sopenharmony_ci			user space attacks.
592962306a36Sopenharmony_ci
593062306a36Sopenharmony_ci			on   - unconditionally enable, implies
593162306a36Sopenharmony_ci			       spectre_v2_user=on
593262306a36Sopenharmony_ci			off  - unconditionally disable, implies
593362306a36Sopenharmony_ci			       spectre_v2_user=off
593462306a36Sopenharmony_ci			auto - kernel detects whether your CPU model is
593562306a36Sopenharmony_ci			       vulnerable
593662306a36Sopenharmony_ci
593762306a36Sopenharmony_ci			Selecting 'on' will, and 'auto' may, choose a
593862306a36Sopenharmony_ci			mitigation method at run time according to the
593962306a36Sopenharmony_ci			CPU, the available microcode, the setting of the
594062306a36Sopenharmony_ci			CONFIG_RETPOLINE configuration option, and the
594162306a36Sopenharmony_ci			compiler with which the kernel was built.
594262306a36Sopenharmony_ci
594362306a36Sopenharmony_ci			Selecting 'on' will also enable the mitigation
594462306a36Sopenharmony_ci			against user space to user space task attacks.
594562306a36Sopenharmony_ci
594662306a36Sopenharmony_ci			Selecting 'off' will disable both the kernel and
594762306a36Sopenharmony_ci			the user space protections.
594862306a36Sopenharmony_ci
594962306a36Sopenharmony_ci			Specific mitigations can also be selected manually:
595062306a36Sopenharmony_ci
595162306a36Sopenharmony_ci			retpoline	  - replace indirect branches
595262306a36Sopenharmony_ci			retpoline,generic - Retpolines
595362306a36Sopenharmony_ci			retpoline,lfence  - LFENCE; indirect branch
595462306a36Sopenharmony_ci			retpoline,amd     - alias for retpoline,lfence
595562306a36Sopenharmony_ci			eibrs		  - Enhanced/Auto IBRS
595662306a36Sopenharmony_ci			eibrs,retpoline   - Enhanced/Auto IBRS + Retpolines
595762306a36Sopenharmony_ci			eibrs,lfence      - Enhanced/Auto IBRS + LFENCE
595862306a36Sopenharmony_ci			ibrs		  - use IBRS to protect kernel
595962306a36Sopenharmony_ci
596062306a36Sopenharmony_ci			Not specifying this option is equivalent to
596162306a36Sopenharmony_ci			spectre_v2=auto.
596262306a36Sopenharmony_ci
596362306a36Sopenharmony_ci	spectre_v2_user=
596462306a36Sopenharmony_ci			[X86] Control mitigation of Spectre variant 2
596562306a36Sopenharmony_ci		        (indirect branch speculation) vulnerability between
596662306a36Sopenharmony_ci		        user space tasks
596762306a36Sopenharmony_ci
596862306a36Sopenharmony_ci			on	- Unconditionally enable mitigations. Is
596962306a36Sopenharmony_ci				  enforced by spectre_v2=on
597062306a36Sopenharmony_ci
597162306a36Sopenharmony_ci			off     - Unconditionally disable mitigations. Is
597262306a36Sopenharmony_ci				  enforced by spectre_v2=off
597362306a36Sopenharmony_ci
597462306a36Sopenharmony_ci			prctl   - Indirect branch speculation is enabled,
597562306a36Sopenharmony_ci				  but mitigation can be enabled via prctl
597662306a36Sopenharmony_ci				  per thread.  The mitigation control state
597762306a36Sopenharmony_ci				  is inherited on fork.
597862306a36Sopenharmony_ci
597962306a36Sopenharmony_ci			prctl,ibpb
598062306a36Sopenharmony_ci				- Like "prctl" above, but only STIBP is
598162306a36Sopenharmony_ci				  controlled per thread. IBPB is issued
598262306a36Sopenharmony_ci				  always when switching between different user
598362306a36Sopenharmony_ci				  space processes.
598462306a36Sopenharmony_ci
598562306a36Sopenharmony_ci			seccomp
598662306a36Sopenharmony_ci				- Same as "prctl" above, but all seccomp
598762306a36Sopenharmony_ci				  threads will enable the mitigation unless
598862306a36Sopenharmony_ci				  they explicitly opt out.
598962306a36Sopenharmony_ci
599062306a36Sopenharmony_ci			seccomp,ibpb
599162306a36Sopenharmony_ci				- Like "seccomp" above, but only STIBP is
599262306a36Sopenharmony_ci				  controlled per thread. IBPB is issued
599362306a36Sopenharmony_ci				  always when switching between different
599462306a36Sopenharmony_ci				  user space processes.
599562306a36Sopenharmony_ci
599662306a36Sopenharmony_ci			auto    - Kernel selects the mitigation depending on
599762306a36Sopenharmony_ci				  the available CPU features and vulnerability.
599862306a36Sopenharmony_ci
599962306a36Sopenharmony_ci			Default mitigation: "prctl"
600062306a36Sopenharmony_ci
600162306a36Sopenharmony_ci			Not specifying this option is equivalent to
600262306a36Sopenharmony_ci			spectre_v2_user=auto.
600362306a36Sopenharmony_ci
600462306a36Sopenharmony_ci	spec_rstack_overflow=
600562306a36Sopenharmony_ci			[X86] Control RAS overflow mitigation on AMD Zen CPUs
600662306a36Sopenharmony_ci
600762306a36Sopenharmony_ci			off		- Disable mitigation
600862306a36Sopenharmony_ci			microcode	- Enable microcode mitigation only
600962306a36Sopenharmony_ci			safe-ret	- Enable sw-only safe RET mitigation (default)
601062306a36Sopenharmony_ci			ibpb		- Enable mitigation by issuing IBPB on
601162306a36Sopenharmony_ci					  kernel entry
601262306a36Sopenharmony_ci			ibpb-vmexit	- Issue IBPB only on VMEXIT
601362306a36Sopenharmony_ci					  (cloud-specific mitigation)
601462306a36Sopenharmony_ci
601562306a36Sopenharmony_ci	spec_store_bypass_disable=
601662306a36Sopenharmony_ci			[HW] Control Speculative Store Bypass (SSB) Disable mitigation
601762306a36Sopenharmony_ci			(Speculative Store Bypass vulnerability)
601862306a36Sopenharmony_ci
601962306a36Sopenharmony_ci			Certain CPUs are vulnerable to an exploit against a
602062306a36Sopenharmony_ci			a common industry wide performance optimization known
602162306a36Sopenharmony_ci			as "Speculative Store Bypass" in which recent stores
602262306a36Sopenharmony_ci			to the same memory location may not be observed by
602362306a36Sopenharmony_ci			later loads during speculative execution. The idea
602462306a36Sopenharmony_ci			is that such stores are unlikely and that they can
602562306a36Sopenharmony_ci			be detected prior to instruction retirement at the
602662306a36Sopenharmony_ci			end of a particular speculation execution window.
602762306a36Sopenharmony_ci
602862306a36Sopenharmony_ci			In vulnerable processors, the speculatively forwarded
602962306a36Sopenharmony_ci			store can be used in a cache side channel attack, for
603062306a36Sopenharmony_ci			example to read memory to which the attacker does not
603162306a36Sopenharmony_ci			directly have access (e.g. inside sandboxed code).
603262306a36Sopenharmony_ci
603362306a36Sopenharmony_ci			This parameter controls whether the Speculative Store
603462306a36Sopenharmony_ci			Bypass optimization is used.
603562306a36Sopenharmony_ci
603662306a36Sopenharmony_ci			On x86 the options are:
603762306a36Sopenharmony_ci
603862306a36Sopenharmony_ci			on      - Unconditionally disable Speculative Store Bypass
603962306a36Sopenharmony_ci			off     - Unconditionally enable Speculative Store Bypass
604062306a36Sopenharmony_ci			auto    - Kernel detects whether the CPU model contains an
604162306a36Sopenharmony_ci				  implementation of Speculative Store Bypass and
604262306a36Sopenharmony_ci				  picks the most appropriate mitigation. If the
604362306a36Sopenharmony_ci				  CPU is not vulnerable, "off" is selected. If the
604462306a36Sopenharmony_ci				  CPU is vulnerable the default mitigation is
604562306a36Sopenharmony_ci				  architecture and Kconfig dependent. See below.
604662306a36Sopenharmony_ci			prctl   - Control Speculative Store Bypass per thread
604762306a36Sopenharmony_ci				  via prctl. Speculative Store Bypass is enabled
604862306a36Sopenharmony_ci				  for a process by default. The state of the control
604962306a36Sopenharmony_ci				  is inherited on fork.
605062306a36Sopenharmony_ci			seccomp - Same as "prctl" above, but all seccomp threads
605162306a36Sopenharmony_ci				  will disable SSB unless they explicitly opt out.
605262306a36Sopenharmony_ci
605362306a36Sopenharmony_ci			Default mitigations:
605462306a36Sopenharmony_ci			X86:	"prctl"
605562306a36Sopenharmony_ci
605662306a36Sopenharmony_ci			On powerpc the options are:
605762306a36Sopenharmony_ci
605862306a36Sopenharmony_ci			on,auto - On Power8 and Power9 insert a store-forwarding
605962306a36Sopenharmony_ci				  barrier on kernel entry and exit. On Power7
606062306a36Sopenharmony_ci				  perform a software flush on kernel entry and
606162306a36Sopenharmony_ci				  exit.
606262306a36Sopenharmony_ci			off	- No action.
606362306a36Sopenharmony_ci
606462306a36Sopenharmony_ci			Not specifying this option is equivalent to
606562306a36Sopenharmony_ci			spec_store_bypass_disable=auto.
606662306a36Sopenharmony_ci
606762306a36Sopenharmony_ci	spia_io_base=	[HW,MTD]
606862306a36Sopenharmony_ci	spia_fio_base=
606962306a36Sopenharmony_ci	spia_pedr=
607062306a36Sopenharmony_ci	spia_peddr=
607162306a36Sopenharmony_ci
607262306a36Sopenharmony_ci	split_lock_detect=
607362306a36Sopenharmony_ci			[X86] Enable split lock detection or bus lock detection
607462306a36Sopenharmony_ci
607562306a36Sopenharmony_ci			When enabled (and if hardware support is present), atomic
607662306a36Sopenharmony_ci			instructions that access data across cache line
607762306a36Sopenharmony_ci			boundaries will result in an alignment check exception
607862306a36Sopenharmony_ci			for split lock detection or a debug exception for
607962306a36Sopenharmony_ci			bus lock detection.
608062306a36Sopenharmony_ci
608162306a36Sopenharmony_ci			off	- not enabled
608262306a36Sopenharmony_ci
608362306a36Sopenharmony_ci			warn	- the kernel will emit rate-limited warnings
608462306a36Sopenharmony_ci				  about applications triggering the #AC
608562306a36Sopenharmony_ci				  exception or the #DB exception. This mode is
608662306a36Sopenharmony_ci				  the default on CPUs that support split lock
608762306a36Sopenharmony_ci				  detection or bus lock detection. Default
608862306a36Sopenharmony_ci				  behavior is by #AC if both features are
608962306a36Sopenharmony_ci				  enabled in hardware.
609062306a36Sopenharmony_ci
609162306a36Sopenharmony_ci			fatal	- the kernel will send SIGBUS to applications
609262306a36Sopenharmony_ci				  that trigger the #AC exception or the #DB
609362306a36Sopenharmony_ci				  exception. Default behavior is by #AC if
609462306a36Sopenharmony_ci				  both features are enabled in hardware.
609562306a36Sopenharmony_ci
609662306a36Sopenharmony_ci			ratelimit:N -
609762306a36Sopenharmony_ci				  Set system wide rate limit to N bus locks
609862306a36Sopenharmony_ci				  per second for bus lock detection.
609962306a36Sopenharmony_ci				  0 < N <= 1000.
610062306a36Sopenharmony_ci
610162306a36Sopenharmony_ci				  N/A for split lock detection.
610262306a36Sopenharmony_ci
610362306a36Sopenharmony_ci
610462306a36Sopenharmony_ci			If an #AC exception is hit in the kernel or in
610562306a36Sopenharmony_ci			firmware (i.e. not while executing in user mode)
610662306a36Sopenharmony_ci			the kernel will oops in either "warn" or "fatal"
610762306a36Sopenharmony_ci			mode.
610862306a36Sopenharmony_ci
610962306a36Sopenharmony_ci			#DB exception for bus lock is triggered only when
611062306a36Sopenharmony_ci			CPL > 0.
611162306a36Sopenharmony_ci
611262306a36Sopenharmony_ci	srbds=		[X86,INTEL]
611362306a36Sopenharmony_ci			Control the Special Register Buffer Data Sampling
611462306a36Sopenharmony_ci			(SRBDS) mitigation.
611562306a36Sopenharmony_ci
611662306a36Sopenharmony_ci			Certain CPUs are vulnerable to an MDS-like
611762306a36Sopenharmony_ci			exploit which can leak bits from the random
611862306a36Sopenharmony_ci			number generator.
611962306a36Sopenharmony_ci
612062306a36Sopenharmony_ci			By default, this issue is mitigated by
612162306a36Sopenharmony_ci			microcode.  However, the microcode fix can cause
612262306a36Sopenharmony_ci			the RDRAND and RDSEED instructions to become
612362306a36Sopenharmony_ci			much slower.  Among other effects, this will
612462306a36Sopenharmony_ci			result in reduced throughput from /dev/urandom.
612562306a36Sopenharmony_ci
612662306a36Sopenharmony_ci			The microcode mitigation can be disabled with
612762306a36Sopenharmony_ci			the following option:
612862306a36Sopenharmony_ci
612962306a36Sopenharmony_ci			off:    Disable mitigation and remove
613062306a36Sopenharmony_ci				performance impact to RDRAND and RDSEED
613162306a36Sopenharmony_ci
613262306a36Sopenharmony_ci	srcutree.big_cpu_lim [KNL]
613362306a36Sopenharmony_ci			Specifies the number of CPUs constituting a
613462306a36Sopenharmony_ci			large system, such that srcu_struct structures
613562306a36Sopenharmony_ci			should immediately allocate an srcu_node array.
613662306a36Sopenharmony_ci			This kernel-boot parameter defaults to 128,
613762306a36Sopenharmony_ci			but takes effect only when the low-order four
613862306a36Sopenharmony_ci			bits of srcutree.convert_to_big is equal to 3
613962306a36Sopenharmony_ci			(decide at boot).
614062306a36Sopenharmony_ci
614162306a36Sopenharmony_ci	srcutree.convert_to_big [KNL]
614262306a36Sopenharmony_ci			Specifies under what conditions an SRCU tree
614362306a36Sopenharmony_ci			srcu_struct structure will be converted to big
614462306a36Sopenharmony_ci			form, that is, with an rcu_node tree:
614562306a36Sopenharmony_ci
614662306a36Sopenharmony_ci				   0:  Never.
614762306a36Sopenharmony_ci				   1:  At init_srcu_struct() time.
614862306a36Sopenharmony_ci				   2:  When rcutorture decides to.
614962306a36Sopenharmony_ci				   3:  Decide at boot time (default).
615062306a36Sopenharmony_ci				0x1X:  Above plus if high contention.
615162306a36Sopenharmony_ci
615262306a36Sopenharmony_ci			Either way, the srcu_node tree will be sized based
615362306a36Sopenharmony_ci			on the actual runtime number of CPUs (nr_cpu_ids)
615462306a36Sopenharmony_ci			instead of the compile-time CONFIG_NR_CPUS.
615562306a36Sopenharmony_ci
615662306a36Sopenharmony_ci	srcutree.counter_wrap_check [KNL]
615762306a36Sopenharmony_ci			Specifies how frequently to check for
615862306a36Sopenharmony_ci			grace-period sequence counter wrap for the
615962306a36Sopenharmony_ci			srcu_data structure's ->srcu_gp_seq_needed field.
616062306a36Sopenharmony_ci			The greater the number of bits set in this kernel
616162306a36Sopenharmony_ci			parameter, the less frequently counter wrap will
616262306a36Sopenharmony_ci			be checked for.  Note that the bottom two bits
616362306a36Sopenharmony_ci			are ignored.
616462306a36Sopenharmony_ci
616562306a36Sopenharmony_ci	srcutree.exp_holdoff [KNL]
616662306a36Sopenharmony_ci			Specifies how many nanoseconds must elapse
616762306a36Sopenharmony_ci			since the end of the last SRCU grace period for
616862306a36Sopenharmony_ci			a given srcu_struct until the next normal SRCU
616962306a36Sopenharmony_ci			grace period will be considered for automatic
617062306a36Sopenharmony_ci			expediting.  Set to zero to disable automatic
617162306a36Sopenharmony_ci			expediting.
617262306a36Sopenharmony_ci
617362306a36Sopenharmony_ci	srcutree.srcu_max_nodelay [KNL]
617462306a36Sopenharmony_ci			Specifies the number of no-delay instances
617562306a36Sopenharmony_ci			per jiffy for which the SRCU grace period
617662306a36Sopenharmony_ci			worker thread will be rescheduled with zero
617762306a36Sopenharmony_ci			delay. Beyond this limit, worker thread will
617862306a36Sopenharmony_ci			be rescheduled with a sleep delay of one jiffy.
617962306a36Sopenharmony_ci
618062306a36Sopenharmony_ci	srcutree.srcu_max_nodelay_phase [KNL]
618162306a36Sopenharmony_ci			Specifies the per-grace-period phase, number of
618262306a36Sopenharmony_ci			non-sleeping polls of readers. Beyond this limit,
618362306a36Sopenharmony_ci			grace period worker thread will be rescheduled
618462306a36Sopenharmony_ci			with a sleep delay of one jiffy, between each
618562306a36Sopenharmony_ci			rescan of the readers, for a grace period phase.
618662306a36Sopenharmony_ci
618762306a36Sopenharmony_ci	srcutree.srcu_retry_check_delay [KNL]
618862306a36Sopenharmony_ci			Specifies number of microseconds of non-sleeping
618962306a36Sopenharmony_ci			delay between each non-sleeping poll of readers.
619062306a36Sopenharmony_ci
619162306a36Sopenharmony_ci	srcutree.small_contention_lim [KNL]
619262306a36Sopenharmony_ci			Specifies the number of update-side contention
619362306a36Sopenharmony_ci			events per jiffy will be tolerated before
619462306a36Sopenharmony_ci			initiating a conversion of an srcu_struct
619562306a36Sopenharmony_ci			structure to big form.	Note that the value of
619662306a36Sopenharmony_ci			srcutree.convert_to_big must have the 0x10 bit
619762306a36Sopenharmony_ci			set for contention-based conversions to occur.
619862306a36Sopenharmony_ci
619962306a36Sopenharmony_ci	ssbd=		[ARM64,HW]
620062306a36Sopenharmony_ci			Speculative Store Bypass Disable control
620162306a36Sopenharmony_ci
620262306a36Sopenharmony_ci			On CPUs that are vulnerable to the Speculative
620362306a36Sopenharmony_ci			Store Bypass vulnerability and offer a
620462306a36Sopenharmony_ci			firmware based mitigation, this parameter
620562306a36Sopenharmony_ci			indicates how the mitigation should be used:
620662306a36Sopenharmony_ci
620762306a36Sopenharmony_ci			force-on:  Unconditionally enable mitigation for
620862306a36Sopenharmony_ci				   for both kernel and userspace
620962306a36Sopenharmony_ci			force-off: Unconditionally disable mitigation for
621062306a36Sopenharmony_ci				   for both kernel and userspace
621162306a36Sopenharmony_ci			kernel:    Always enable mitigation in the
621262306a36Sopenharmony_ci				   kernel, and offer a prctl interface
621362306a36Sopenharmony_ci				   to allow userspace to register its
621462306a36Sopenharmony_ci				   interest in being mitigated too.
621562306a36Sopenharmony_ci
621662306a36Sopenharmony_ci	stack_guard_gap=	[MM]
621762306a36Sopenharmony_ci			override the default stack gap protection. The value
621862306a36Sopenharmony_ci			is in page units and it defines how many pages prior
621962306a36Sopenharmony_ci			to (for stacks growing down) resp. after (for stacks
622062306a36Sopenharmony_ci			growing up) the main stack are reserved for no other
622162306a36Sopenharmony_ci			mapping. Default value is 256 pages.
622262306a36Sopenharmony_ci
622362306a36Sopenharmony_ci	stack_depot_disable= [KNL]
622462306a36Sopenharmony_ci			Setting this to true through kernel command line will
622562306a36Sopenharmony_ci			disable the stack depot thereby saving the static memory
622662306a36Sopenharmony_ci			consumed by the stack hash table. By default this is set
622762306a36Sopenharmony_ci			to false.
622862306a36Sopenharmony_ci
622962306a36Sopenharmony_ci	stacktrace	[FTRACE]
623062306a36Sopenharmony_ci			Enabled the stack tracer on boot up.
623162306a36Sopenharmony_ci
623262306a36Sopenharmony_ci	stacktrace_filter=[function-list]
623362306a36Sopenharmony_ci			[FTRACE] Limit the functions that the stack tracer
623462306a36Sopenharmony_ci			will trace at boot up. function-list is a comma-separated
623562306a36Sopenharmony_ci			list of functions. This list can be changed at run
623662306a36Sopenharmony_ci			time by the stack_trace_filter file in the debugfs
623762306a36Sopenharmony_ci			tracing directory. Note, this enables stack tracing
623862306a36Sopenharmony_ci			and the stacktrace above is not needed.
623962306a36Sopenharmony_ci
624062306a36Sopenharmony_ci	sti=		[PARISC,HW]
624162306a36Sopenharmony_ci			Format: <num>
624262306a36Sopenharmony_ci			Set the STI (builtin display/keyboard on the HP-PARISC
624362306a36Sopenharmony_ci			machines) console (graphic card) which should be used
624462306a36Sopenharmony_ci			as the initial boot-console.
624562306a36Sopenharmony_ci			See also comment in drivers/video/console/sticore.c.
624662306a36Sopenharmony_ci
624762306a36Sopenharmony_ci	sti_font=	[HW]
624862306a36Sopenharmony_ci			See comment in drivers/video/console/sticore.c.
624962306a36Sopenharmony_ci
625062306a36Sopenharmony_ci	stifb=		[HW]
625162306a36Sopenharmony_ci			Format: bpp:<bpp1>[:<bpp2>[:<bpp3>...]]
625262306a36Sopenharmony_ci
625362306a36Sopenharmony_ci        strict_sas_size=
625462306a36Sopenharmony_ci			[X86]
625562306a36Sopenharmony_ci			Format: <bool>
625662306a36Sopenharmony_ci			Enable or disable strict sigaltstack size checks
625762306a36Sopenharmony_ci			against the required signal frame size which
625862306a36Sopenharmony_ci			depends on the supported FPU features. This can
625962306a36Sopenharmony_ci			be used to filter out binaries which have
626062306a36Sopenharmony_ci			not yet been made aware of AT_MINSIGSTKSZ.
626162306a36Sopenharmony_ci
626262306a36Sopenharmony_ci	stress_hpt	[PPC]
626362306a36Sopenharmony_ci			Limits the number of kernel HPT entries in the hash
626462306a36Sopenharmony_ci			page table to increase the rate of hash page table
626562306a36Sopenharmony_ci			faults on kernel addresses.
626662306a36Sopenharmony_ci
626762306a36Sopenharmony_ci	stress_slb	[PPC]
626862306a36Sopenharmony_ci			Limits the number of kernel SLB entries, and flushes
626962306a36Sopenharmony_ci			them frequently to increase the rate of SLB faults
627062306a36Sopenharmony_ci			on kernel addresses.
627162306a36Sopenharmony_ci
627262306a36Sopenharmony_ci	sunrpc.min_resvport=
627362306a36Sopenharmony_ci	sunrpc.max_resvport=
627462306a36Sopenharmony_ci			[NFS,SUNRPC]
627562306a36Sopenharmony_ci			SunRPC servers often require that client requests
627662306a36Sopenharmony_ci			originate from a privileged port (i.e. a port in the
627762306a36Sopenharmony_ci			range 0 < portnr < 1024).
627862306a36Sopenharmony_ci			An administrator who wishes to reserve some of these
627962306a36Sopenharmony_ci			ports for other uses may adjust the range that the
628062306a36Sopenharmony_ci			kernel's sunrpc client considers to be privileged
628162306a36Sopenharmony_ci			using these two parameters to set the minimum and
628262306a36Sopenharmony_ci			maximum port values.
628362306a36Sopenharmony_ci
628462306a36Sopenharmony_ci	sunrpc.svc_rpc_per_connection_limit=
628562306a36Sopenharmony_ci			[NFS,SUNRPC]
628662306a36Sopenharmony_ci			Limit the number of requests that the server will
628762306a36Sopenharmony_ci			process in parallel from a single connection.
628862306a36Sopenharmony_ci			The default value is 0 (no limit).
628962306a36Sopenharmony_ci
629062306a36Sopenharmony_ci	sunrpc.pool_mode=
629162306a36Sopenharmony_ci			[NFS]
629262306a36Sopenharmony_ci			Control how the NFS server code allocates CPUs to
629362306a36Sopenharmony_ci			service thread pools.  Depending on how many NICs
629462306a36Sopenharmony_ci			you have and where their interrupts are bound, this
629562306a36Sopenharmony_ci			option will affect which CPUs will do NFS serving.
629662306a36Sopenharmony_ci			Note: this parameter cannot be changed while the
629762306a36Sopenharmony_ci			NFS server is running.
629862306a36Sopenharmony_ci
629962306a36Sopenharmony_ci			auto	    the server chooses an appropriate mode
630062306a36Sopenharmony_ci				    automatically using heuristics
630162306a36Sopenharmony_ci			global	    a single global pool contains all CPUs
630262306a36Sopenharmony_ci			percpu	    one pool for each CPU
630362306a36Sopenharmony_ci			pernode	    one pool for each NUMA node (equivalent
630462306a36Sopenharmony_ci				    to global on non-NUMA machines)
630562306a36Sopenharmony_ci
630662306a36Sopenharmony_ci	sunrpc.tcp_slot_table_entries=
630762306a36Sopenharmony_ci	sunrpc.udp_slot_table_entries=
630862306a36Sopenharmony_ci			[NFS,SUNRPC]
630962306a36Sopenharmony_ci			Sets the upper limit on the number of simultaneous
631062306a36Sopenharmony_ci			RPC calls that can be sent from the client to a
631162306a36Sopenharmony_ci			server. Increasing these values may allow you to
631262306a36Sopenharmony_ci			improve throughput, but will also increase the
631362306a36Sopenharmony_ci			amount of memory reserved for use by the client.
631462306a36Sopenharmony_ci
631562306a36Sopenharmony_ci	suspend.pm_test_delay=
631662306a36Sopenharmony_ci			[SUSPEND]
631762306a36Sopenharmony_ci			Sets the number of seconds to remain in a suspend test
631862306a36Sopenharmony_ci			mode before resuming the system (see
631962306a36Sopenharmony_ci			/sys/power/pm_test). Only available when CONFIG_PM_DEBUG
632062306a36Sopenharmony_ci			is set. Default value is 5.
632162306a36Sopenharmony_ci
632262306a36Sopenharmony_ci	svm=		[PPC]
632362306a36Sopenharmony_ci			Format: { on | off | y | n | 1 | 0 }
632462306a36Sopenharmony_ci			This parameter controls use of the Protected
632562306a36Sopenharmony_ci			Execution Facility on pSeries.
632662306a36Sopenharmony_ci
632762306a36Sopenharmony_ci	swiotlb=	[ARM,IA-64,PPC,MIPS,X86]
632862306a36Sopenharmony_ci			Format: { <int> [,<int>] | force | noforce }
632962306a36Sopenharmony_ci			<int> -- Number of I/O TLB slabs
633062306a36Sopenharmony_ci			<int> -- Second integer after comma. Number of swiotlb
633162306a36Sopenharmony_ci				 areas with their own lock. Will be rounded up
633262306a36Sopenharmony_ci				 to a power of 2.
633362306a36Sopenharmony_ci			force -- force using of bounce buffers even if they
633462306a36Sopenharmony_ci			         wouldn't be automatically used by the kernel
633562306a36Sopenharmony_ci			noforce -- Never use bounce buffers (for debugging)
633662306a36Sopenharmony_ci
633762306a36Sopenharmony_ci	switches=	[HW,M68k]
633862306a36Sopenharmony_ci
633962306a36Sopenharmony_ci	sysctl.*=	[KNL]
634062306a36Sopenharmony_ci			Set a sysctl parameter, right before loading the init
634162306a36Sopenharmony_ci			process, as if the value was written to the respective
634262306a36Sopenharmony_ci			/proc/sys/... file. Both '.' and '/' are recognized as
634362306a36Sopenharmony_ci			separators. Unrecognized parameters and invalid values
634462306a36Sopenharmony_ci			are reported in the kernel log. Sysctls registered
634562306a36Sopenharmony_ci			later by a loaded module cannot be set this way.
634662306a36Sopenharmony_ci			Example: sysctl.vm.swappiness=40
634762306a36Sopenharmony_ci
634862306a36Sopenharmony_ci	sysrq_always_enabled
634962306a36Sopenharmony_ci			[KNL]
635062306a36Sopenharmony_ci			Ignore sysrq setting - this boot parameter will
635162306a36Sopenharmony_ci			neutralize any effect of /proc/sys/kernel/sysrq.
635262306a36Sopenharmony_ci			Useful for debugging.
635362306a36Sopenharmony_ci
635462306a36Sopenharmony_ci	tcpmhash_entries= [KNL,NET]
635562306a36Sopenharmony_ci			Set the number of tcp_metrics_hash slots.
635662306a36Sopenharmony_ci			Default value is 8192 or 16384 depending on total
635762306a36Sopenharmony_ci			ram pages. This is used to specify the TCP metrics
635862306a36Sopenharmony_ci			cache size. See Documentation/networking/ip-sysctl.rst
635962306a36Sopenharmony_ci			"tcp_no_metrics_save" section for more details.
636062306a36Sopenharmony_ci
636162306a36Sopenharmony_ci	tdfx=		[HW,DRM]
636262306a36Sopenharmony_ci
636362306a36Sopenharmony_ci	test_suspend=	[SUSPEND]
636462306a36Sopenharmony_ci			Format: { "mem" | "standby" | "freeze" }[,N]
636562306a36Sopenharmony_ci			Specify "mem" (for Suspend-to-RAM) or "standby" (for
636662306a36Sopenharmony_ci			standby suspend) or "freeze" (for suspend type freeze)
636762306a36Sopenharmony_ci			as the system sleep state during system startup with
636862306a36Sopenharmony_ci			the optional capability to repeat N number of times.
636962306a36Sopenharmony_ci			The system is woken from this state using a
637062306a36Sopenharmony_ci			wakeup-capable RTC alarm.
637162306a36Sopenharmony_ci
637262306a36Sopenharmony_ci	thash_entries=	[KNL,NET]
637362306a36Sopenharmony_ci			Set number of hash buckets for TCP connection
637462306a36Sopenharmony_ci
637562306a36Sopenharmony_ci	thermal.act=	[HW,ACPI]
637662306a36Sopenharmony_ci			-1: disable all active trip points in all thermal zones
637762306a36Sopenharmony_ci			<degrees C>: override all lowest active trip points
637862306a36Sopenharmony_ci
637962306a36Sopenharmony_ci	thermal.crt=	[HW,ACPI]
638062306a36Sopenharmony_ci			-1: disable all critical trip points in all thermal zones
638162306a36Sopenharmony_ci			<degrees C>: override all critical trip points
638262306a36Sopenharmony_ci
638362306a36Sopenharmony_ci	thermal.off=	[HW,ACPI]
638462306a36Sopenharmony_ci			1: disable ACPI thermal control
638562306a36Sopenharmony_ci
638662306a36Sopenharmony_ci	thermal.psv=	[HW,ACPI]
638762306a36Sopenharmony_ci			-1: disable all passive trip points
638862306a36Sopenharmony_ci			<degrees C>: override all passive trip points to this
638962306a36Sopenharmony_ci			value
639062306a36Sopenharmony_ci
639162306a36Sopenharmony_ci	thermal.tzp=	[HW,ACPI]
639262306a36Sopenharmony_ci			Specify global default ACPI thermal zone polling rate
639362306a36Sopenharmony_ci			<deci-seconds>: poll all this frequency
639462306a36Sopenharmony_ci			0: no polling (default)
639562306a36Sopenharmony_ci
639662306a36Sopenharmony_ci	threadirqs	[KNL]
639762306a36Sopenharmony_ci			Force threading of all interrupt handlers except those
639862306a36Sopenharmony_ci			marked explicitly IRQF_NO_THREAD.
639962306a36Sopenharmony_ci
640062306a36Sopenharmony_ci	topology=	[S390]
640162306a36Sopenharmony_ci			Format: {off | on}
640262306a36Sopenharmony_ci			Specify if the kernel should make use of the cpu
640362306a36Sopenharmony_ci			topology information if the hardware supports this.
640462306a36Sopenharmony_ci			The scheduler will make use of this information and
640562306a36Sopenharmony_ci			e.g. base its process migration decisions on it.
640662306a36Sopenharmony_ci			Default is on.
640762306a36Sopenharmony_ci
640862306a36Sopenharmony_ci	topology_updates= [KNL, PPC, NUMA]
640962306a36Sopenharmony_ci			Format: {off}
641062306a36Sopenharmony_ci			Specify if the kernel should ignore (off)
641162306a36Sopenharmony_ci			topology updates sent by the hypervisor to this
641262306a36Sopenharmony_ci			LPAR.
641362306a36Sopenharmony_ci
641462306a36Sopenharmony_ci	torture.disable_onoff_at_boot= [KNL]
641562306a36Sopenharmony_ci			Prevent the CPU-hotplug component of torturing
641662306a36Sopenharmony_ci			until after init has spawned.
641762306a36Sopenharmony_ci
641862306a36Sopenharmony_ci	torture.ftrace_dump_at_shutdown= [KNL]
641962306a36Sopenharmony_ci			Dump the ftrace buffer at torture-test shutdown,
642062306a36Sopenharmony_ci			even if there were no errors.  This can be a
642162306a36Sopenharmony_ci			very costly operation when many torture tests
642262306a36Sopenharmony_ci			are running concurrently, especially on systems
642362306a36Sopenharmony_ci			with rotating-rust storage.
642462306a36Sopenharmony_ci
642562306a36Sopenharmony_ci	torture.verbose_sleep_frequency= [KNL]
642662306a36Sopenharmony_ci			Specifies how many verbose printk()s should be
642762306a36Sopenharmony_ci			emitted between each sleep.  The default of zero
642862306a36Sopenharmony_ci			disables verbose-printk() sleeping.
642962306a36Sopenharmony_ci
643062306a36Sopenharmony_ci	torture.verbose_sleep_duration= [KNL]
643162306a36Sopenharmony_ci			Duration of each verbose-printk() sleep in jiffies.
643262306a36Sopenharmony_ci
643362306a36Sopenharmony_ci	tp720=		[HW,PS2]
643462306a36Sopenharmony_ci
643562306a36Sopenharmony_ci	tpm_suspend_pcr=[HW,TPM]
643662306a36Sopenharmony_ci			Format: integer pcr id
643762306a36Sopenharmony_ci			Specify that at suspend time, the tpm driver
643862306a36Sopenharmony_ci			should extend the specified pcr with zeros,
643962306a36Sopenharmony_ci			as a workaround for some chips which fail to
644062306a36Sopenharmony_ci			flush the last written pcr on TPM_SaveState.
644162306a36Sopenharmony_ci			This will guarantee that all the other pcrs
644262306a36Sopenharmony_ci			are saved.
644362306a36Sopenharmony_ci
644462306a36Sopenharmony_ci	tpm_tis.interrupts= [HW,TPM]
644562306a36Sopenharmony_ci			Enable interrupts for the MMIO based physical layer
644662306a36Sopenharmony_ci			for the FIFO interface. By default it is set to false
644762306a36Sopenharmony_ci			(0). For more information about TPM hardware interfaces
644862306a36Sopenharmony_ci			defined by Trusted Computing Group (TCG) see
644962306a36Sopenharmony_ci			https://trustedcomputinggroup.org/resource/pc-client-platform-tpm-profile-ptp-specification/
645062306a36Sopenharmony_ci
645162306a36Sopenharmony_ci	tp_printk	[FTRACE]
645262306a36Sopenharmony_ci			Have the tracepoints sent to printk as well as the
645362306a36Sopenharmony_ci			tracing ring buffer. This is useful for early boot up
645462306a36Sopenharmony_ci			where the system hangs or reboots and does not give the
645562306a36Sopenharmony_ci			option for reading the tracing buffer or performing a
645662306a36Sopenharmony_ci			ftrace_dump_on_oops.
645762306a36Sopenharmony_ci
645862306a36Sopenharmony_ci			To turn off having tracepoints sent to printk,
645962306a36Sopenharmony_ci			 echo 0 > /proc/sys/kernel/tracepoint_printk
646062306a36Sopenharmony_ci			Note, echoing 1 into this file without the
646162306a36Sopenharmony_ci			tracepoint_printk kernel cmdline option has no effect.
646262306a36Sopenharmony_ci
646362306a36Sopenharmony_ci			The tp_printk_stop_on_boot (see below) can also be used
646462306a36Sopenharmony_ci			to stop the printing of events to console at
646562306a36Sopenharmony_ci			late_initcall_sync.
646662306a36Sopenharmony_ci
646762306a36Sopenharmony_ci			** CAUTION **
646862306a36Sopenharmony_ci
646962306a36Sopenharmony_ci			Having tracepoints sent to printk() and activating high
647062306a36Sopenharmony_ci			frequency tracepoints such as irq or sched, can cause
647162306a36Sopenharmony_ci			the system to live lock.
647262306a36Sopenharmony_ci
647362306a36Sopenharmony_ci	tp_printk_stop_on_boot [FTRACE]
647462306a36Sopenharmony_ci			When tp_printk (above) is set, it can cause a lot of noise
647562306a36Sopenharmony_ci			on the console. It may be useful to only include the
647662306a36Sopenharmony_ci			printing of events during boot up, as user space may
647762306a36Sopenharmony_ci			make the system inoperable.
647862306a36Sopenharmony_ci
647962306a36Sopenharmony_ci			This command line option will stop the printing of events
648062306a36Sopenharmony_ci			to console at the late_initcall_sync() time frame.
648162306a36Sopenharmony_ci
648262306a36Sopenharmony_ci	trace_buf_size=nn[KMG]
648362306a36Sopenharmony_ci			[FTRACE] will set tracing buffer size on each cpu.
648462306a36Sopenharmony_ci
648562306a36Sopenharmony_ci	trace_clock=	[FTRACE] Set the clock used for tracing events
648662306a36Sopenharmony_ci			at boot up.
648762306a36Sopenharmony_ci			local - Use the per CPU time stamp counter
648862306a36Sopenharmony_ci				(converted into nanoseconds). Fast, but
648962306a36Sopenharmony_ci				depending on the architecture, may not be
649062306a36Sopenharmony_ci				in sync between CPUs.
649162306a36Sopenharmony_ci			global - Event time stamps are synchronize across
649262306a36Sopenharmony_ci				CPUs. May be slower than the local clock,
649362306a36Sopenharmony_ci				but better for some race conditions.
649462306a36Sopenharmony_ci			counter - Simple counting of events (1, 2, ..)
649562306a36Sopenharmony_ci				note, some counts may be skipped due to the
649662306a36Sopenharmony_ci				infrastructure grabbing the clock more than
649762306a36Sopenharmony_ci				once per event.
649862306a36Sopenharmony_ci			uptime - Use jiffies as the time stamp.
649962306a36Sopenharmony_ci			perf - Use the same clock that perf uses.
650062306a36Sopenharmony_ci			mono - Use ktime_get_mono_fast_ns() for time stamps.
650162306a36Sopenharmony_ci			mono_raw - Use ktime_get_raw_fast_ns() for time
650262306a36Sopenharmony_ci				stamps.
650362306a36Sopenharmony_ci			boot - Use ktime_get_boot_fast_ns() for time stamps.
650462306a36Sopenharmony_ci			Architectures may add more clocks. See
650562306a36Sopenharmony_ci			Documentation/trace/ftrace.rst for more details.
650662306a36Sopenharmony_ci
650762306a36Sopenharmony_ci	trace_event=[event-list]
650862306a36Sopenharmony_ci			[FTRACE] Set and start specified trace events in order
650962306a36Sopenharmony_ci			to facilitate early boot debugging. The event-list is a
651062306a36Sopenharmony_ci			comma-separated list of trace events to enable. See
651162306a36Sopenharmony_ci			also Documentation/trace/events.rst
651262306a36Sopenharmony_ci
651362306a36Sopenharmony_ci	trace_instance=[instance-info]
651462306a36Sopenharmony_ci			[FTRACE] Create a ring buffer instance early in boot up.
651562306a36Sopenharmony_ci			This will be listed in:
651662306a36Sopenharmony_ci
651762306a36Sopenharmony_ci				/sys/kernel/tracing/instances
651862306a36Sopenharmony_ci
651962306a36Sopenharmony_ci			Events can be enabled at the time the instance is created
652062306a36Sopenharmony_ci			via:
652162306a36Sopenharmony_ci
652262306a36Sopenharmony_ci				trace_instance=<name>,<system1>:<event1>,<system2>:<event2>
652362306a36Sopenharmony_ci
652462306a36Sopenharmony_ci			Note, the "<system*>:" portion is optional if the event is
652562306a36Sopenharmony_ci			unique.
652662306a36Sopenharmony_ci
652762306a36Sopenharmony_ci				trace_instance=foo,sched:sched_switch,irq_handler_entry,initcall
652862306a36Sopenharmony_ci
652962306a36Sopenharmony_ci			will enable the "sched_switch" event (note, the "sched:" is optional, and
653062306a36Sopenharmony_ci			the same thing would happen if it was left off). The irq_handler_entry
653162306a36Sopenharmony_ci			event, and all events under the "initcall" system.
653262306a36Sopenharmony_ci
653362306a36Sopenharmony_ci	trace_options=[option-list]
653462306a36Sopenharmony_ci			[FTRACE] Enable or disable tracer options at boot.
653562306a36Sopenharmony_ci			The option-list is a comma delimited list of options
653662306a36Sopenharmony_ci			that can be enabled or disabled just as if you were
653762306a36Sopenharmony_ci			to echo the option name into
653862306a36Sopenharmony_ci
653962306a36Sopenharmony_ci			    /sys/kernel/tracing/trace_options
654062306a36Sopenharmony_ci
654162306a36Sopenharmony_ci			For example, to enable stacktrace option (to dump the
654262306a36Sopenharmony_ci			stack trace of each event), add to the command line:
654362306a36Sopenharmony_ci
654462306a36Sopenharmony_ci			      trace_options=stacktrace
654562306a36Sopenharmony_ci
654662306a36Sopenharmony_ci			See also Documentation/trace/ftrace.rst "trace options"
654762306a36Sopenharmony_ci			section.
654862306a36Sopenharmony_ci
654962306a36Sopenharmony_ci	trace_trigger=[trigger-list]
655062306a36Sopenharmony_ci			[FTRACE] Add a event trigger on specific events.
655162306a36Sopenharmony_ci			Set a trigger on top of a specific event, with an optional
655262306a36Sopenharmony_ci			filter.
655362306a36Sopenharmony_ci
655462306a36Sopenharmony_ci			The format is is "trace_trigger=<event>.<trigger>[ if <filter>],..."
655562306a36Sopenharmony_ci			Where more than one trigger may be specified that are comma deliminated.
655662306a36Sopenharmony_ci
655762306a36Sopenharmony_ci			For example:
655862306a36Sopenharmony_ci
655962306a36Sopenharmony_ci			  trace_trigger="sched_switch.stacktrace if prev_state == 2"
656062306a36Sopenharmony_ci
656162306a36Sopenharmony_ci			The above will enable the "stacktrace" trigger on the "sched_switch"
656262306a36Sopenharmony_ci			event but only trigger it if the "prev_state" of the "sched_switch"
656362306a36Sopenharmony_ci			event is "2" (TASK_UNINTERUPTIBLE).
656462306a36Sopenharmony_ci
656562306a36Sopenharmony_ci			See also "Event triggers" in Documentation/trace/events.rst
656662306a36Sopenharmony_ci
656762306a36Sopenharmony_ci
656862306a36Sopenharmony_ci	traceoff_on_warning
656962306a36Sopenharmony_ci			[FTRACE] enable this option to disable tracing when a
657062306a36Sopenharmony_ci			warning is hit. This turns off "tracing_on". Tracing can
657162306a36Sopenharmony_ci			be enabled again by echoing '1' into the "tracing_on"
657262306a36Sopenharmony_ci			file located in /sys/kernel/tracing/
657362306a36Sopenharmony_ci
657462306a36Sopenharmony_ci			This option is useful, as it disables the trace before
657562306a36Sopenharmony_ci			the WARNING dump is called, which prevents the trace to
657662306a36Sopenharmony_ci			be filled with content caused by the warning output.
657762306a36Sopenharmony_ci
657862306a36Sopenharmony_ci			This option can also be set at run time via the sysctl
657962306a36Sopenharmony_ci			option:  kernel/traceoff_on_warning
658062306a36Sopenharmony_ci
658162306a36Sopenharmony_ci	transparent_hugepage=
658262306a36Sopenharmony_ci			[KNL]
658362306a36Sopenharmony_ci			Format: [always|madvise|never]
658462306a36Sopenharmony_ci			Can be used to control the default behavior of the system
658562306a36Sopenharmony_ci			with respect to transparent hugepages.
658662306a36Sopenharmony_ci			See Documentation/admin-guide/mm/transhuge.rst
658762306a36Sopenharmony_ci			for more details.
658862306a36Sopenharmony_ci
658962306a36Sopenharmony_ci	trusted.source=	[KEYS]
659062306a36Sopenharmony_ci			Format: <string>
659162306a36Sopenharmony_ci			This parameter identifies the trust source as a backend
659262306a36Sopenharmony_ci			for trusted keys implementation. Supported trust
659362306a36Sopenharmony_ci			sources:
659462306a36Sopenharmony_ci			- "tpm"
659562306a36Sopenharmony_ci			- "tee"
659662306a36Sopenharmony_ci			- "caam"
659762306a36Sopenharmony_ci			If not specified then it defaults to iterating through
659862306a36Sopenharmony_ci			the trust source list starting with TPM and assigns the
659962306a36Sopenharmony_ci			first trust source as a backend which is initialized
660062306a36Sopenharmony_ci			successfully during iteration.
660162306a36Sopenharmony_ci
660262306a36Sopenharmony_ci	trusted.rng=	[KEYS]
660362306a36Sopenharmony_ci			Format: <string>
660462306a36Sopenharmony_ci			The RNG used to generate key material for trusted keys.
660562306a36Sopenharmony_ci			Can be one of:
660662306a36Sopenharmony_ci			- "kernel"
660762306a36Sopenharmony_ci			- the same value as trusted.source: "tpm" or "tee"
660862306a36Sopenharmony_ci			- "default"
660962306a36Sopenharmony_ci			If not specified, "default" is used. In this case,
661062306a36Sopenharmony_ci			the RNG's choice is left to each individual trust source.
661162306a36Sopenharmony_ci
661262306a36Sopenharmony_ci	tsc=		Disable clocksource stability checks for TSC.
661362306a36Sopenharmony_ci			Format: <string>
661462306a36Sopenharmony_ci			[x86] reliable: mark tsc clocksource as reliable, this
661562306a36Sopenharmony_ci			disables clocksource verification at runtime, as well
661662306a36Sopenharmony_ci			as the stability checks done at bootup.	Used to enable
661762306a36Sopenharmony_ci			high-resolution timer mode on older hardware, and in
661862306a36Sopenharmony_ci			virtualized environment.
661962306a36Sopenharmony_ci			[x86] noirqtime: Do not use TSC to do irq accounting.
662062306a36Sopenharmony_ci			Used to run time disable IRQ_TIME_ACCOUNTING on any
662162306a36Sopenharmony_ci			platforms where RDTSC is slow and this accounting
662262306a36Sopenharmony_ci			can add overhead.
662362306a36Sopenharmony_ci			[x86] unstable: mark the TSC clocksource as unstable, this
662462306a36Sopenharmony_ci			marks the TSC unconditionally unstable at bootup and
662562306a36Sopenharmony_ci			avoids any further wobbles once the TSC watchdog notices.
662662306a36Sopenharmony_ci			[x86] nowatchdog: disable clocksource watchdog. Used
662762306a36Sopenharmony_ci			in situations with strict latency requirements (where
662862306a36Sopenharmony_ci			interruptions from clocksource watchdog are not
662962306a36Sopenharmony_ci			acceptable).
663062306a36Sopenharmony_ci			[x86] recalibrate: force recalibration against a HW timer
663162306a36Sopenharmony_ci			(HPET or PM timer) on systems whose TSC frequency was
663262306a36Sopenharmony_ci			obtained from HW or FW using either an MSR or CPUID(0x15).
663362306a36Sopenharmony_ci			Warn if the difference is more than 500 ppm.
663462306a36Sopenharmony_ci			[x86] watchdog: Use TSC as the watchdog clocksource with
663562306a36Sopenharmony_ci			which to check other HW timers (HPET or PM timer), but
663662306a36Sopenharmony_ci			only on systems where TSC has been deemed trustworthy.
663762306a36Sopenharmony_ci			This will be suppressed by an earlier tsc=nowatchdog and
663862306a36Sopenharmony_ci			can be overridden by a later tsc=nowatchdog.  A console
663962306a36Sopenharmony_ci			message will flag any such suppression or overriding.
664062306a36Sopenharmony_ci
664162306a36Sopenharmony_ci	tsc_early_khz=  [X86] Skip early TSC calibration and use the given
664262306a36Sopenharmony_ci			value instead. Useful when the early TSC frequency discovery
664362306a36Sopenharmony_ci			procedure is not reliable, such as on overclocked systems
664462306a36Sopenharmony_ci			with CPUID.16h support and partial CPUID.15h support.
664562306a36Sopenharmony_ci			Format: <unsigned int>
664662306a36Sopenharmony_ci
664762306a36Sopenharmony_ci	tsx=		[X86] Control Transactional Synchronization
664862306a36Sopenharmony_ci			Extensions (TSX) feature in Intel processors that
664962306a36Sopenharmony_ci			support TSX control.
665062306a36Sopenharmony_ci
665162306a36Sopenharmony_ci			This parameter controls the TSX feature. The options are:
665262306a36Sopenharmony_ci
665362306a36Sopenharmony_ci			on	- Enable TSX on the system. Although there are
665462306a36Sopenharmony_ci				mitigations for all known security vulnerabilities,
665562306a36Sopenharmony_ci				TSX has been known to be an accelerator for
665662306a36Sopenharmony_ci				several previous speculation-related CVEs, and
665762306a36Sopenharmony_ci				so there may be unknown	security risks associated
665862306a36Sopenharmony_ci				with leaving it enabled.
665962306a36Sopenharmony_ci
666062306a36Sopenharmony_ci			off	- Disable TSX on the system. (Note that this
666162306a36Sopenharmony_ci				option takes effect only on newer CPUs which are
666262306a36Sopenharmony_ci				not vulnerable to MDS, i.e., have
666362306a36Sopenharmony_ci				MSR_IA32_ARCH_CAPABILITIES.MDS_NO=1 and which get
666462306a36Sopenharmony_ci				the new IA32_TSX_CTRL MSR through a microcode
666562306a36Sopenharmony_ci				update. This new MSR allows for the reliable
666662306a36Sopenharmony_ci				deactivation of the TSX functionality.)
666762306a36Sopenharmony_ci
666862306a36Sopenharmony_ci			auto	- Disable TSX if X86_BUG_TAA is present,
666962306a36Sopenharmony_ci				  otherwise enable TSX on the system.
667062306a36Sopenharmony_ci
667162306a36Sopenharmony_ci			Not specifying this option is equivalent to tsx=off.
667262306a36Sopenharmony_ci
667362306a36Sopenharmony_ci			See Documentation/admin-guide/hw-vuln/tsx_async_abort.rst
667462306a36Sopenharmony_ci			for more details.
667562306a36Sopenharmony_ci
667662306a36Sopenharmony_ci	tsx_async_abort= [X86,INTEL] Control mitigation for the TSX Async
667762306a36Sopenharmony_ci			Abort (TAA) vulnerability.
667862306a36Sopenharmony_ci
667962306a36Sopenharmony_ci			Similar to Micro-architectural Data Sampling (MDS)
668062306a36Sopenharmony_ci			certain CPUs that support Transactional
668162306a36Sopenharmony_ci			Synchronization Extensions (TSX) are vulnerable to an
668262306a36Sopenharmony_ci			exploit against CPU internal buffers which can forward
668362306a36Sopenharmony_ci			information to a disclosure gadget under certain
668462306a36Sopenharmony_ci			conditions.
668562306a36Sopenharmony_ci
668662306a36Sopenharmony_ci			In vulnerable processors, the speculatively forwarded
668762306a36Sopenharmony_ci			data can be used in a cache side channel attack, to
668862306a36Sopenharmony_ci			access data to which the attacker does not have direct
668962306a36Sopenharmony_ci			access.
669062306a36Sopenharmony_ci
669162306a36Sopenharmony_ci			This parameter controls the TAA mitigation.  The
669262306a36Sopenharmony_ci			options are:
669362306a36Sopenharmony_ci
669462306a36Sopenharmony_ci			full       - Enable TAA mitigation on vulnerable CPUs
669562306a36Sopenharmony_ci				     if TSX is enabled.
669662306a36Sopenharmony_ci
669762306a36Sopenharmony_ci			full,nosmt - Enable TAA mitigation and disable SMT on
669862306a36Sopenharmony_ci				     vulnerable CPUs. If TSX is disabled, SMT
669962306a36Sopenharmony_ci				     is not disabled because CPU is not
670062306a36Sopenharmony_ci				     vulnerable to cross-thread TAA attacks.
670162306a36Sopenharmony_ci			off        - Unconditionally disable TAA mitigation
670262306a36Sopenharmony_ci
670362306a36Sopenharmony_ci			On MDS-affected machines, tsx_async_abort=off can be
670462306a36Sopenharmony_ci			prevented by an active MDS mitigation as both vulnerabilities
670562306a36Sopenharmony_ci			are mitigated with the same mechanism so in order to disable
670662306a36Sopenharmony_ci			this mitigation, you need to specify mds=off too.
670762306a36Sopenharmony_ci
670862306a36Sopenharmony_ci			Not specifying this option is equivalent to
670962306a36Sopenharmony_ci			tsx_async_abort=full.  On CPUs which are MDS affected
671062306a36Sopenharmony_ci			and deploy MDS mitigation, TAA mitigation is not
671162306a36Sopenharmony_ci			required and doesn't provide any additional
671262306a36Sopenharmony_ci			mitigation.
671362306a36Sopenharmony_ci
671462306a36Sopenharmony_ci			For details see:
671562306a36Sopenharmony_ci			Documentation/admin-guide/hw-vuln/tsx_async_abort.rst
671662306a36Sopenharmony_ci
671762306a36Sopenharmony_ci	turbografx.map[2|3]=	[HW,JOY]
671862306a36Sopenharmony_ci			TurboGraFX parallel port interface
671962306a36Sopenharmony_ci			Format:
672062306a36Sopenharmony_ci			<port#>,<js1>,<js2>,<js3>,<js4>,<js5>,<js6>,<js7>
672162306a36Sopenharmony_ci			See also Documentation/input/devices/joystick-parport.rst
672262306a36Sopenharmony_ci
672362306a36Sopenharmony_ci	udbg-immortal	[PPC] When debugging early kernel crashes that
672462306a36Sopenharmony_ci			happen after console_init() and before a proper
672562306a36Sopenharmony_ci			console driver takes over, this boot options might
672662306a36Sopenharmony_ci			help "seeing" what's going on.
672762306a36Sopenharmony_ci
672862306a36Sopenharmony_ci	uhash_entries=	[KNL,NET]
672962306a36Sopenharmony_ci			Set number of hash buckets for UDP/UDP-Lite connections
673062306a36Sopenharmony_ci
673162306a36Sopenharmony_ci	uhci-hcd.ignore_oc=
673262306a36Sopenharmony_ci			[USB] Ignore overcurrent events (default N).
673362306a36Sopenharmony_ci			Some badly-designed motherboards generate lots of
673462306a36Sopenharmony_ci			bogus events, for ports that aren't wired to
673562306a36Sopenharmony_ci			anything.  Set this parameter to avoid log spamming.
673662306a36Sopenharmony_ci			Note that genuine overcurrent events won't be
673762306a36Sopenharmony_ci			reported either.
673862306a36Sopenharmony_ci
673962306a36Sopenharmony_ci	unknown_nmi_panic
674062306a36Sopenharmony_ci			[X86] Cause panic on unknown NMI.
674162306a36Sopenharmony_ci
674262306a36Sopenharmony_ci	unwind_debug	[X86-64]
674362306a36Sopenharmony_ci			Enable unwinder debug output.  This can be
674462306a36Sopenharmony_ci			useful for debugging certain unwinder error
674562306a36Sopenharmony_ci			conditions, including corrupt stacks and
674662306a36Sopenharmony_ci			bad/missing unwinder metadata.
674762306a36Sopenharmony_ci
674862306a36Sopenharmony_ci	usbcore.authorized_default=
674962306a36Sopenharmony_ci			[USB] Default USB device authorization:
675062306a36Sopenharmony_ci			(default -1 = authorized (same as 1),
675162306a36Sopenharmony_ci			0 = not authorized, 1 = authorized, 2 = authorized
675262306a36Sopenharmony_ci			if device connected to internal port)
675362306a36Sopenharmony_ci
675462306a36Sopenharmony_ci	usbcore.autosuspend=
675562306a36Sopenharmony_ci			[USB] The autosuspend time delay (in seconds) used
675662306a36Sopenharmony_ci			for newly-detected USB devices (default 2).  This
675762306a36Sopenharmony_ci			is the time required before an idle device will be
675862306a36Sopenharmony_ci			autosuspended.  Devices for which the delay is set
675962306a36Sopenharmony_ci			to a negative value won't be autosuspended at all.
676062306a36Sopenharmony_ci
676162306a36Sopenharmony_ci	usbcore.usbfs_snoop=
676262306a36Sopenharmony_ci			[USB] Set to log all usbfs traffic (default 0 = off).
676362306a36Sopenharmony_ci
676462306a36Sopenharmony_ci	usbcore.usbfs_snoop_max=
676562306a36Sopenharmony_ci			[USB] Maximum number of bytes to snoop in each URB
676662306a36Sopenharmony_ci			(default = 65536).
676762306a36Sopenharmony_ci
676862306a36Sopenharmony_ci	usbcore.blinkenlights=
676962306a36Sopenharmony_ci			[USB] Set to cycle leds on hubs (default 0 = off).
677062306a36Sopenharmony_ci
677162306a36Sopenharmony_ci	usbcore.old_scheme_first=
677262306a36Sopenharmony_ci			[USB] Start with the old device initialization
677362306a36Sopenharmony_ci			scheme (default 0 = off).
677462306a36Sopenharmony_ci
677562306a36Sopenharmony_ci	usbcore.usbfs_memory_mb=
677662306a36Sopenharmony_ci			[USB] Memory limit (in MB) for buffers allocated by
677762306a36Sopenharmony_ci			usbfs (default = 16, 0 = max = 2047).
677862306a36Sopenharmony_ci
677962306a36Sopenharmony_ci	usbcore.use_both_schemes=
678062306a36Sopenharmony_ci			[USB] Try the other device initialization scheme
678162306a36Sopenharmony_ci			if the first one fails (default 1 = enabled).
678262306a36Sopenharmony_ci
678362306a36Sopenharmony_ci	usbcore.initial_descriptor_timeout=
678462306a36Sopenharmony_ci			[USB] Specifies timeout for the initial 64-byte
678562306a36Sopenharmony_ci			USB_REQ_GET_DESCRIPTOR request in milliseconds
678662306a36Sopenharmony_ci			(default 5000 = 5.0 seconds).
678762306a36Sopenharmony_ci
678862306a36Sopenharmony_ci	usbcore.nousb	[USB] Disable the USB subsystem
678962306a36Sopenharmony_ci
679062306a36Sopenharmony_ci	usbcore.quirks=
679162306a36Sopenharmony_ci			[USB] A list of quirk entries to augment the built-in
679262306a36Sopenharmony_ci			usb core quirk list. List entries are separated by
679362306a36Sopenharmony_ci			commas. Each entry has the form
679462306a36Sopenharmony_ci			VendorID:ProductID:Flags. The IDs are 4-digit hex
679562306a36Sopenharmony_ci			numbers and Flags is a set of letters. Each letter
679662306a36Sopenharmony_ci			will change the built-in quirk; setting it if it is
679762306a36Sopenharmony_ci			clear and clearing it if it is set. The letters have
679862306a36Sopenharmony_ci			the following meanings:
679962306a36Sopenharmony_ci				a = USB_QUIRK_STRING_FETCH_255 (string
680062306a36Sopenharmony_ci					descriptors must not be fetched using
680162306a36Sopenharmony_ci					a 255-byte read);
680262306a36Sopenharmony_ci				b = USB_QUIRK_RESET_RESUME (device can't resume
680362306a36Sopenharmony_ci					correctly so reset it instead);
680462306a36Sopenharmony_ci				c = USB_QUIRK_NO_SET_INTF (device can't handle
680562306a36Sopenharmony_ci					Set-Interface requests);
680662306a36Sopenharmony_ci				d = USB_QUIRK_CONFIG_INTF_STRINGS (device can't
680762306a36Sopenharmony_ci					handle its Configuration or Interface
680862306a36Sopenharmony_ci					strings);
680962306a36Sopenharmony_ci				e = USB_QUIRK_RESET (device can't be reset
681062306a36Sopenharmony_ci					(e.g morph devices), don't use reset);
681162306a36Sopenharmony_ci				f = USB_QUIRK_HONOR_BNUMINTERFACES (device has
681262306a36Sopenharmony_ci					more interface descriptions than the
681362306a36Sopenharmony_ci					bNumInterfaces count, and can't handle
681462306a36Sopenharmony_ci					talking to these interfaces);
681562306a36Sopenharmony_ci				g = USB_QUIRK_DELAY_INIT (device needs a pause
681662306a36Sopenharmony_ci					during initialization, after we read
681762306a36Sopenharmony_ci					the device descriptor);
681862306a36Sopenharmony_ci				h = USB_QUIRK_LINEAR_UFRAME_INTR_BINTERVAL (For
681962306a36Sopenharmony_ci					high speed and super speed interrupt
682062306a36Sopenharmony_ci					endpoints, the USB 2.0 and USB 3.0 spec
682162306a36Sopenharmony_ci					require the interval in microframes (1
682262306a36Sopenharmony_ci					microframe = 125 microseconds) to be
682362306a36Sopenharmony_ci					calculated as interval = 2 ^
682462306a36Sopenharmony_ci					(bInterval-1).
682562306a36Sopenharmony_ci					Devices with this quirk report their
682662306a36Sopenharmony_ci					bInterval as the result of this
682762306a36Sopenharmony_ci					calculation instead of the exponent
682862306a36Sopenharmony_ci					variable used in the calculation);
682962306a36Sopenharmony_ci				i = USB_QUIRK_DEVICE_QUALIFIER (device can't
683062306a36Sopenharmony_ci					handle device_qualifier descriptor
683162306a36Sopenharmony_ci					requests);
683262306a36Sopenharmony_ci				j = USB_QUIRK_IGNORE_REMOTE_WAKEUP (device
683362306a36Sopenharmony_ci					generates spurious wakeup, ignore
683462306a36Sopenharmony_ci					remote wakeup capability);
683562306a36Sopenharmony_ci				k = USB_QUIRK_NO_LPM (device can't handle Link
683662306a36Sopenharmony_ci					Power Management);
683762306a36Sopenharmony_ci				l = USB_QUIRK_LINEAR_FRAME_INTR_BINTERVAL
683862306a36Sopenharmony_ci					(Device reports its bInterval as linear
683962306a36Sopenharmony_ci					frames instead of the USB 2.0
684062306a36Sopenharmony_ci					calculation);
684162306a36Sopenharmony_ci				m = USB_QUIRK_DISCONNECT_SUSPEND (Device needs
684262306a36Sopenharmony_ci					to be disconnected before suspend to
684362306a36Sopenharmony_ci					prevent spurious wakeup);
684462306a36Sopenharmony_ci				n = USB_QUIRK_DELAY_CTRL_MSG (Device needs a
684562306a36Sopenharmony_ci					pause after every control message);
684662306a36Sopenharmony_ci				o = USB_QUIRK_HUB_SLOW_RESET (Hub needs extra
684762306a36Sopenharmony_ci					delay after resetting its port);
684862306a36Sopenharmony_ci			Example: quirks=0781:5580:bk,0a5c:5834:gij
684962306a36Sopenharmony_ci
685062306a36Sopenharmony_ci	usbhid.mousepoll=
685162306a36Sopenharmony_ci			[USBHID] The interval which mice are to be polled at.
685262306a36Sopenharmony_ci
685362306a36Sopenharmony_ci	usbhid.jspoll=
685462306a36Sopenharmony_ci			[USBHID] The interval which joysticks are to be polled at.
685562306a36Sopenharmony_ci
685662306a36Sopenharmony_ci	usbhid.kbpoll=
685762306a36Sopenharmony_ci			[USBHID] The interval which keyboards are to be polled at.
685862306a36Sopenharmony_ci
685962306a36Sopenharmony_ci	usb-storage.delay_use=
686062306a36Sopenharmony_ci			[UMS] The delay in seconds before a new device is
686162306a36Sopenharmony_ci			scanned for Logical Units (default 1).
686262306a36Sopenharmony_ci
686362306a36Sopenharmony_ci	usb-storage.quirks=
686462306a36Sopenharmony_ci			[UMS] A list of quirks entries to supplement or
686562306a36Sopenharmony_ci			override the built-in unusual_devs list.  List
686662306a36Sopenharmony_ci			entries are separated by commas.  Each entry has
686762306a36Sopenharmony_ci			the form VID:PID:Flags where VID and PID are Vendor
686862306a36Sopenharmony_ci			and Product ID values (4-digit hex numbers) and
686962306a36Sopenharmony_ci			Flags is a set of characters, each corresponding
687062306a36Sopenharmony_ci			to a common usb-storage quirk flag as follows:
687162306a36Sopenharmony_ci				a = SANE_SENSE (collect more than 18 bytes
687262306a36Sopenharmony_ci					of sense data, not on uas);
687362306a36Sopenharmony_ci				b = BAD_SENSE (don't collect more than 18
687462306a36Sopenharmony_ci					bytes of sense data, not on uas);
687562306a36Sopenharmony_ci				c = FIX_CAPACITY (decrease the reported
687662306a36Sopenharmony_ci					device capacity by one sector);
687762306a36Sopenharmony_ci				d = NO_READ_DISC_INFO (don't use
687862306a36Sopenharmony_ci					READ_DISC_INFO command, not on uas);
687962306a36Sopenharmony_ci				e = NO_READ_CAPACITY_16 (don't use
688062306a36Sopenharmony_ci					READ_CAPACITY_16 command);
688162306a36Sopenharmony_ci				f = NO_REPORT_OPCODES (don't use report opcodes
688262306a36Sopenharmony_ci					command, uas only);
688362306a36Sopenharmony_ci				g = MAX_SECTORS_240 (don't transfer more than
688462306a36Sopenharmony_ci					240 sectors at a time, uas only);
688562306a36Sopenharmony_ci				h = CAPACITY_HEURISTICS (decrease the
688662306a36Sopenharmony_ci					reported device capacity by one
688762306a36Sopenharmony_ci					sector if the number is odd);
688862306a36Sopenharmony_ci				i = IGNORE_DEVICE (don't bind to this
688962306a36Sopenharmony_ci					device);
689062306a36Sopenharmony_ci				j = NO_REPORT_LUNS (don't use report luns
689162306a36Sopenharmony_ci					command, uas only);
689262306a36Sopenharmony_ci				k = NO_SAME (do not use WRITE_SAME, uas only)
689362306a36Sopenharmony_ci				l = NOT_LOCKABLE (don't try to lock and
689462306a36Sopenharmony_ci					unlock ejectable media, not on uas);
689562306a36Sopenharmony_ci				m = MAX_SECTORS_64 (don't transfer more
689662306a36Sopenharmony_ci					than 64 sectors = 32 KB at a time,
689762306a36Sopenharmony_ci					not on uas);
689862306a36Sopenharmony_ci				n = INITIAL_READ10 (force a retry of the
689962306a36Sopenharmony_ci					initial READ(10) command, not on uas);
690062306a36Sopenharmony_ci				o = CAPACITY_OK (accept the capacity
690162306a36Sopenharmony_ci					reported by the device, not on uas);
690262306a36Sopenharmony_ci				p = WRITE_CACHE (the device cache is ON
690362306a36Sopenharmony_ci					by default, not on uas);
690462306a36Sopenharmony_ci				r = IGNORE_RESIDUE (the device reports
690562306a36Sopenharmony_ci					bogus residue values, not on uas);
690662306a36Sopenharmony_ci				s = SINGLE_LUN (the device has only one
690762306a36Sopenharmony_ci					Logical Unit);
690862306a36Sopenharmony_ci				t = NO_ATA_1X (don't allow ATA(12) and ATA(16)
690962306a36Sopenharmony_ci					commands, uas only);
691062306a36Sopenharmony_ci				u = IGNORE_UAS (don't bind to the uas driver);
691162306a36Sopenharmony_ci				w = NO_WP_DETECT (don't test whether the
691262306a36Sopenharmony_ci					medium is write-protected).
691362306a36Sopenharmony_ci				y = ALWAYS_SYNC (issue a SYNCHRONIZE_CACHE
691462306a36Sopenharmony_ci					even if the device claims no cache,
691562306a36Sopenharmony_ci					not on uas)
691662306a36Sopenharmony_ci			Example: quirks=0419:aaf5:rl,0421:0433:rc
691762306a36Sopenharmony_ci
691862306a36Sopenharmony_ci	user_debug=	[KNL,ARM]
691962306a36Sopenharmony_ci			Format: <int>
692062306a36Sopenharmony_ci			See arch/arm/Kconfig.debug help text.
692162306a36Sopenharmony_ci				 1 - undefined instruction events
692262306a36Sopenharmony_ci				 2 - system calls
692362306a36Sopenharmony_ci				 4 - invalid data aborts
692462306a36Sopenharmony_ci				 8 - SIGSEGV faults
692562306a36Sopenharmony_ci				16 - SIGBUS faults
692662306a36Sopenharmony_ci			Example: user_debug=31
692762306a36Sopenharmony_ci
692862306a36Sopenharmony_ci	userpte=
692962306a36Sopenharmony_ci			[X86] Flags controlling user PTE allocations.
693062306a36Sopenharmony_ci
693162306a36Sopenharmony_ci				nohigh = do not allocate PTE pages in
693262306a36Sopenharmony_ci					HIGHMEM regardless of setting
693362306a36Sopenharmony_ci					of CONFIG_HIGHPTE.
693462306a36Sopenharmony_ci
693562306a36Sopenharmony_ci	vdso=		[X86,SH,SPARC]
693662306a36Sopenharmony_ci			On X86_32, this is an alias for vdso32=.  Otherwise:
693762306a36Sopenharmony_ci
693862306a36Sopenharmony_ci			vdso=1: enable VDSO (the default)
693962306a36Sopenharmony_ci			vdso=0: disable VDSO mapping
694062306a36Sopenharmony_ci
694162306a36Sopenharmony_ci	vdso32=		[X86] Control the 32-bit vDSO
694262306a36Sopenharmony_ci			vdso32=1: enable 32-bit VDSO
694362306a36Sopenharmony_ci			vdso32=0 or vdso32=2: disable 32-bit VDSO
694462306a36Sopenharmony_ci
694562306a36Sopenharmony_ci			See the help text for CONFIG_COMPAT_VDSO for more
694662306a36Sopenharmony_ci			details.  If CONFIG_COMPAT_VDSO is set, the default is
694762306a36Sopenharmony_ci			vdso32=0; otherwise, the default is vdso32=1.
694862306a36Sopenharmony_ci
694962306a36Sopenharmony_ci			For compatibility with older kernels, vdso32=2 is an
695062306a36Sopenharmony_ci			alias for vdso32=0.
695162306a36Sopenharmony_ci
695262306a36Sopenharmony_ci			Try vdso32=0 if you encounter an error that says:
695362306a36Sopenharmony_ci			dl_main: Assertion `(void *) ph->p_vaddr == _rtld_local._dl_sysinfo_dso' failed!
695462306a36Sopenharmony_ci
695562306a36Sopenharmony_ci	vector=		[IA-64,SMP]
695662306a36Sopenharmony_ci			vector=percpu: enable percpu vector domain
695762306a36Sopenharmony_ci
695862306a36Sopenharmony_ci	video=		[FB] Frame buffer configuration
695962306a36Sopenharmony_ci			See Documentation/fb/modedb.rst.
696062306a36Sopenharmony_ci
696162306a36Sopenharmony_ci	video.brightness_switch_enabled= [ACPI]
696262306a36Sopenharmony_ci			Format: [0|1]
696362306a36Sopenharmony_ci			If set to 1, on receiving an ACPI notify event
696462306a36Sopenharmony_ci			generated by hotkey, video driver will adjust brightness
696562306a36Sopenharmony_ci			level and then send out the event to user space through
696662306a36Sopenharmony_ci			the allocated input device. If set to 0, video driver
696762306a36Sopenharmony_ci			will only send out the event without touching backlight
696862306a36Sopenharmony_ci			brightness level.
696962306a36Sopenharmony_ci			default: 1
697062306a36Sopenharmony_ci
697162306a36Sopenharmony_ci	virtio_mmio.device=
697262306a36Sopenharmony_ci			[VMMIO] Memory mapped virtio (platform) device.
697362306a36Sopenharmony_ci
697462306a36Sopenharmony_ci				<size>@<baseaddr>:<irq>[:<id>]
697562306a36Sopenharmony_ci			where:
697662306a36Sopenharmony_ci				<size>     := size (can use standard suffixes
697762306a36Sopenharmony_ci						like K, M and G)
697862306a36Sopenharmony_ci				<baseaddr> := physical base address
697962306a36Sopenharmony_ci				<irq>      := interrupt number (as passed to
698062306a36Sopenharmony_ci						request_irq())
698162306a36Sopenharmony_ci				<id>       := (optional) platform device id
698262306a36Sopenharmony_ci			example:
698362306a36Sopenharmony_ci				virtio_mmio.device=1K@0x100b0000:48:7
698462306a36Sopenharmony_ci
698562306a36Sopenharmony_ci			Can be used multiple times for multiple devices.
698662306a36Sopenharmony_ci
698762306a36Sopenharmony_ci	vga=		[BOOT,X86-32] Select a particular video mode
698862306a36Sopenharmony_ci			See Documentation/arch/x86/boot.rst and
698962306a36Sopenharmony_ci			Documentation/admin-guide/svga.rst.
699062306a36Sopenharmony_ci			Use vga=ask for menu.
699162306a36Sopenharmony_ci			This is actually a boot loader parameter; the value is
699262306a36Sopenharmony_ci			passed to the kernel using a special protocol.
699362306a36Sopenharmony_ci
699462306a36Sopenharmony_ci	vm_debug[=options]	[KNL] Available with CONFIG_DEBUG_VM=y.
699562306a36Sopenharmony_ci			May slow down system boot speed, especially when
699662306a36Sopenharmony_ci			enabled on systems with a large amount of memory.
699762306a36Sopenharmony_ci			All options are enabled by default, and this
699862306a36Sopenharmony_ci			interface is meant to allow for selectively
699962306a36Sopenharmony_ci			enabling or disabling specific virtual memory
700062306a36Sopenharmony_ci			debugging features.
700162306a36Sopenharmony_ci
700262306a36Sopenharmony_ci			Available options are:
700362306a36Sopenharmony_ci			  P	Enable page structure init time poisoning
700462306a36Sopenharmony_ci			  -	Disable all of the above options
700562306a36Sopenharmony_ci
700662306a36Sopenharmony_ci	vmalloc=nn[KMG]	[KNL,BOOT] Forces the vmalloc area to have an exact
700762306a36Sopenharmony_ci			size of <nn>. This can be used to increase the
700862306a36Sopenharmony_ci			minimum size (128MB on x86). It can also be used to
700962306a36Sopenharmony_ci			decrease the size and leave more room for directly
701062306a36Sopenharmony_ci			mapped kernel RAM.
701162306a36Sopenharmony_ci
701262306a36Sopenharmony_ci	vmcp_cma=nn[MG]	[KNL,S390]
701362306a36Sopenharmony_ci			Sets the memory size reserved for contiguous memory
701462306a36Sopenharmony_ci			allocations for the vmcp device driver.
701562306a36Sopenharmony_ci
701662306a36Sopenharmony_ci	vmhalt=		[KNL,S390] Perform z/VM CP command after system halt.
701762306a36Sopenharmony_ci			Format: <command>
701862306a36Sopenharmony_ci
701962306a36Sopenharmony_ci	vmpanic=	[KNL,S390] Perform z/VM CP command after kernel panic.
702062306a36Sopenharmony_ci			Format: <command>
702162306a36Sopenharmony_ci
702262306a36Sopenharmony_ci	vmpoff=		[KNL,S390] Perform z/VM CP command after power off.
702362306a36Sopenharmony_ci			Format: <command>
702462306a36Sopenharmony_ci
702562306a36Sopenharmony_ci	vsyscall=	[X86-64]
702662306a36Sopenharmony_ci			Controls the behavior of vsyscalls (i.e. calls to
702762306a36Sopenharmony_ci			fixed addresses of 0xffffffffff600x00 from legacy
702862306a36Sopenharmony_ci			code).  Most statically-linked binaries and older
702962306a36Sopenharmony_ci			versions of glibc use these calls.  Because these
703062306a36Sopenharmony_ci			functions are at fixed addresses, they make nice
703162306a36Sopenharmony_ci			targets for exploits that can control RIP.
703262306a36Sopenharmony_ci
703362306a36Sopenharmony_ci			emulate     Vsyscalls turn into traps and are emulated
703462306a36Sopenharmony_ci			            reasonably safely.  The vsyscall page is
703562306a36Sopenharmony_ci				    readable.
703662306a36Sopenharmony_ci
703762306a36Sopenharmony_ci			xonly       [default] Vsyscalls turn into traps and are
703862306a36Sopenharmony_ci			            emulated reasonably safely.  The vsyscall
703962306a36Sopenharmony_ci				    page is not readable.
704062306a36Sopenharmony_ci
704162306a36Sopenharmony_ci			none        Vsyscalls don't work at all.  This makes
704262306a36Sopenharmony_ci			            them quite hard to use for exploits but
704362306a36Sopenharmony_ci			            might break your system.
704462306a36Sopenharmony_ci
704562306a36Sopenharmony_ci	vt.color=	[VT] Default text color.
704662306a36Sopenharmony_ci			Format: 0xYX, X = foreground, Y = background.
704762306a36Sopenharmony_ci			Default: 0x07 = light gray on black.
704862306a36Sopenharmony_ci
704962306a36Sopenharmony_ci	vt.cur_default=	[VT] Default cursor shape.
705062306a36Sopenharmony_ci			Format: 0xCCBBAA, where AA, BB, and CC are the same as
705162306a36Sopenharmony_ci			the parameters of the <Esc>[?A;B;Cc escape sequence;
705262306a36Sopenharmony_ci			see VGA-softcursor.txt. Default: 2 = underline.
705362306a36Sopenharmony_ci
705462306a36Sopenharmony_ci	vt.default_blu=	[VT]
705562306a36Sopenharmony_ci			Format: <blue0>,<blue1>,<blue2>,...,<blue15>
705662306a36Sopenharmony_ci			Change the default blue palette of the console.
705762306a36Sopenharmony_ci			This is a 16-member array composed of values
705862306a36Sopenharmony_ci			ranging from 0-255.
705962306a36Sopenharmony_ci
706062306a36Sopenharmony_ci	vt.default_grn=	[VT]
706162306a36Sopenharmony_ci			Format: <green0>,<green1>,<green2>,...,<green15>
706262306a36Sopenharmony_ci			Change the default green palette of the console.
706362306a36Sopenharmony_ci			This is a 16-member array composed of values
706462306a36Sopenharmony_ci			ranging from 0-255.
706562306a36Sopenharmony_ci
706662306a36Sopenharmony_ci	vt.default_red=	[VT]
706762306a36Sopenharmony_ci			Format: <red0>,<red1>,<red2>,...,<red15>
706862306a36Sopenharmony_ci			Change the default red palette of the console.
706962306a36Sopenharmony_ci			This is a 16-member array composed of values
707062306a36Sopenharmony_ci			ranging from 0-255.
707162306a36Sopenharmony_ci
707262306a36Sopenharmony_ci	vt.default_utf8=
707362306a36Sopenharmony_ci			[VT]
707462306a36Sopenharmony_ci			Format=<0|1>
707562306a36Sopenharmony_ci			Set system-wide default UTF-8 mode for all tty's.
707662306a36Sopenharmony_ci			Default is 1, i.e. UTF-8 mode is enabled for all
707762306a36Sopenharmony_ci			newly opened terminals.
707862306a36Sopenharmony_ci
707962306a36Sopenharmony_ci	vt.global_cursor_default=
708062306a36Sopenharmony_ci			[VT]
708162306a36Sopenharmony_ci			Format=<-1|0|1>
708262306a36Sopenharmony_ci			Set system-wide default for whether a cursor
708362306a36Sopenharmony_ci			is shown on new VTs. Default is -1,
708462306a36Sopenharmony_ci			i.e. cursors will be created by default unless
708562306a36Sopenharmony_ci			overridden by individual drivers. 0 will hide
708662306a36Sopenharmony_ci			cursors, 1 will display them.
708762306a36Sopenharmony_ci
708862306a36Sopenharmony_ci	vt.italic=	[VT] Default color for italic text; 0-15.
708962306a36Sopenharmony_ci			Default: 2 = green.
709062306a36Sopenharmony_ci
709162306a36Sopenharmony_ci	vt.underline=	[VT] Default color for underlined text; 0-15.
709262306a36Sopenharmony_ci			Default: 3 = cyan.
709362306a36Sopenharmony_ci
709462306a36Sopenharmony_ci	watchdog timers	[HW,WDT] For information on watchdog timers,
709562306a36Sopenharmony_ci			see Documentation/watchdog/watchdog-parameters.rst
709662306a36Sopenharmony_ci			or other driver-specific files in the
709762306a36Sopenharmony_ci			Documentation/watchdog/ directory.
709862306a36Sopenharmony_ci
709962306a36Sopenharmony_ci	watchdog_thresh=
710062306a36Sopenharmony_ci			[KNL]
710162306a36Sopenharmony_ci			Set the hard lockup detector stall duration
710262306a36Sopenharmony_ci			threshold in seconds. The soft lockup detector
710362306a36Sopenharmony_ci			threshold is set to twice the value. A value of 0
710462306a36Sopenharmony_ci			disables both lockup detectors. Default is 10
710562306a36Sopenharmony_ci			seconds.
710662306a36Sopenharmony_ci
710762306a36Sopenharmony_ci	workqueue.unbound_cpus=
710862306a36Sopenharmony_ci			[KNL,SMP] Specify to constrain one or some CPUs
710962306a36Sopenharmony_ci			to use in unbound workqueues.
711062306a36Sopenharmony_ci			Format: <cpu-list>
711162306a36Sopenharmony_ci			By default, all online CPUs are available for
711262306a36Sopenharmony_ci			unbound workqueues.
711362306a36Sopenharmony_ci
711462306a36Sopenharmony_ci	workqueue.watchdog_thresh=
711562306a36Sopenharmony_ci			If CONFIG_WQ_WATCHDOG is configured, workqueue can
711662306a36Sopenharmony_ci			warn stall conditions and dump internal state to
711762306a36Sopenharmony_ci			help debugging.  0 disables workqueue stall
711862306a36Sopenharmony_ci			detection; otherwise, it's the stall threshold
711962306a36Sopenharmony_ci			duration in seconds.  The default value is 30 and
712062306a36Sopenharmony_ci			it can be updated at runtime by writing to the
712162306a36Sopenharmony_ci			corresponding sysfs file.
712262306a36Sopenharmony_ci
712362306a36Sopenharmony_ci	workqueue.cpu_intensive_thresh_us=
712462306a36Sopenharmony_ci			Per-cpu work items which run for longer than this
712562306a36Sopenharmony_ci			threshold are automatically considered CPU intensive
712662306a36Sopenharmony_ci			and excluded from concurrency management to prevent
712762306a36Sopenharmony_ci			them from noticeably delaying other per-cpu work
712862306a36Sopenharmony_ci			items. Default is 10000 (10ms).
712962306a36Sopenharmony_ci
713062306a36Sopenharmony_ci			If CONFIG_WQ_CPU_INTENSIVE_REPORT is set, the kernel
713162306a36Sopenharmony_ci			will report the work functions which violate this
713262306a36Sopenharmony_ci			threshold repeatedly. They are likely good
713362306a36Sopenharmony_ci			candidates for using WQ_UNBOUND workqueues instead.
713462306a36Sopenharmony_ci
713562306a36Sopenharmony_ci	workqueue.power_efficient
713662306a36Sopenharmony_ci			Per-cpu workqueues are generally preferred because
713762306a36Sopenharmony_ci			they show better performance thanks to cache
713862306a36Sopenharmony_ci			locality; unfortunately, per-cpu workqueues tend to
713962306a36Sopenharmony_ci			be more power hungry than unbound workqueues.
714062306a36Sopenharmony_ci
714162306a36Sopenharmony_ci			Enabling this makes the per-cpu workqueues which
714262306a36Sopenharmony_ci			were observed to contribute significantly to power
714362306a36Sopenharmony_ci			consumption unbound, leading to measurably lower
714462306a36Sopenharmony_ci			power usage at the cost of small performance
714562306a36Sopenharmony_ci			overhead.
714662306a36Sopenharmony_ci
714762306a36Sopenharmony_ci			The default value of this parameter is determined by
714862306a36Sopenharmony_ci			the config option CONFIG_WQ_POWER_EFFICIENT_DEFAULT.
714962306a36Sopenharmony_ci
715062306a36Sopenharmony_ci        workqueue.default_affinity_scope=
715162306a36Sopenharmony_ci			Select the default affinity scope to use for unbound
715262306a36Sopenharmony_ci			workqueues. Can be one of "cpu", "smt", "cache",
715362306a36Sopenharmony_ci			"numa" and "system". Default is "cache". For more
715462306a36Sopenharmony_ci			information, see the Affinity Scopes section in
715562306a36Sopenharmony_ci			Documentation/core-api/workqueue.rst.
715662306a36Sopenharmony_ci
715762306a36Sopenharmony_ci			This can be changed after boot by writing to the
715862306a36Sopenharmony_ci			matching /sys/module/workqueue/parameters file. All
715962306a36Sopenharmony_ci			workqueues with the "default" affinity scope will be
716062306a36Sopenharmony_ci			updated accordignly.
716162306a36Sopenharmony_ci
716262306a36Sopenharmony_ci	workqueue.debug_force_rr_cpu
716362306a36Sopenharmony_ci			Workqueue used to implicitly guarantee that work
716462306a36Sopenharmony_ci			items queued without explicit CPU specified are put
716562306a36Sopenharmony_ci			on the local CPU.  This guarantee is no longer true
716662306a36Sopenharmony_ci			and while local CPU is still preferred work items
716762306a36Sopenharmony_ci			may be put on foreign CPUs.  This debug option
716862306a36Sopenharmony_ci			forces round-robin CPU selection to flush out
716962306a36Sopenharmony_ci			usages which depend on the now broken guarantee.
717062306a36Sopenharmony_ci			When enabled, memory and cache locality will be
717162306a36Sopenharmony_ci			impacted.
717262306a36Sopenharmony_ci
717362306a36Sopenharmony_ci	writecombine=	[LOONGARCH] Control the MAT (Memory Access Type) of
717462306a36Sopenharmony_ci			ioremap_wc().
717562306a36Sopenharmony_ci
717662306a36Sopenharmony_ci			on   - Enable writecombine, use WUC for ioremap_wc()
717762306a36Sopenharmony_ci			off  - Disable writecombine, use SUC for ioremap_wc()
717862306a36Sopenharmony_ci
717962306a36Sopenharmony_ci	x2apic_phys	[X86-64,APIC] Use x2apic physical mode instead of
718062306a36Sopenharmony_ci			default x2apic cluster mode on platforms
718162306a36Sopenharmony_ci			supporting x2apic.
718262306a36Sopenharmony_ci
718362306a36Sopenharmony_ci	xen_512gb_limit		[KNL,X86-64,XEN]
718462306a36Sopenharmony_ci			Restricts the kernel running paravirtualized under Xen
718562306a36Sopenharmony_ci			to use only up to 512 GB of RAM. The reason to do so is
718662306a36Sopenharmony_ci			crash analysis tools and Xen tools for doing domain
718762306a36Sopenharmony_ci			save/restore/migration must be enabled to handle larger
718862306a36Sopenharmony_ci			domains.
718962306a36Sopenharmony_ci
719062306a36Sopenharmony_ci	xen_emul_unplug=		[HW,X86,XEN]
719162306a36Sopenharmony_ci			Unplug Xen emulated devices
719262306a36Sopenharmony_ci			Format: [unplug0,][unplug1]
719362306a36Sopenharmony_ci			ide-disks -- unplug primary master IDE devices
719462306a36Sopenharmony_ci			aux-ide-disks -- unplug non-primary-master IDE devices
719562306a36Sopenharmony_ci			nics -- unplug network devices
719662306a36Sopenharmony_ci			all -- unplug all emulated devices (NICs and IDE disks)
719762306a36Sopenharmony_ci			unnecessary -- unplugging emulated devices is
719862306a36Sopenharmony_ci				unnecessary even if the host did not respond to
719962306a36Sopenharmony_ci				the unplug protocol
720062306a36Sopenharmony_ci			never -- do not unplug even if version check succeeds
720162306a36Sopenharmony_ci
720262306a36Sopenharmony_ci	xen_legacy_crash	[X86,XEN]
720362306a36Sopenharmony_ci			Crash from Xen panic notifier, without executing late
720462306a36Sopenharmony_ci			panic() code such as dumping handler.
720562306a36Sopenharmony_ci
720662306a36Sopenharmony_ci	xen_msr_safe=	[X86,XEN]
720762306a36Sopenharmony_ci			Format: <bool>
720862306a36Sopenharmony_ci			Select whether to always use non-faulting (safe) MSR
720962306a36Sopenharmony_ci			access functions when running as Xen PV guest. The
721062306a36Sopenharmony_ci			default value is controlled by CONFIG_XEN_PV_MSR_SAFE.
721162306a36Sopenharmony_ci
721262306a36Sopenharmony_ci	xen_nopvspin	[X86,XEN]
721362306a36Sopenharmony_ci			Disables the qspinlock slowpath using Xen PV optimizations.
721462306a36Sopenharmony_ci			This parameter is obsoleted by "nopvspin" parameter, which
721562306a36Sopenharmony_ci			has equivalent effect for XEN platform.
721662306a36Sopenharmony_ci
721762306a36Sopenharmony_ci	xen_nopv	[X86]
721862306a36Sopenharmony_ci			Disables the PV optimizations forcing the HVM guest to
721962306a36Sopenharmony_ci			run as generic HVM guest with no PV drivers.
722062306a36Sopenharmony_ci			This option is obsoleted by the "nopv" option, which
722162306a36Sopenharmony_ci			has equivalent effect for XEN platform.
722262306a36Sopenharmony_ci
722362306a36Sopenharmony_ci	xen_no_vector_callback
722462306a36Sopenharmony_ci			[KNL,X86,XEN] Disable the vector callback for Xen
722562306a36Sopenharmony_ci			event channel interrupts.
722662306a36Sopenharmony_ci
722762306a36Sopenharmony_ci	xen_scrub_pages=	[XEN]
722862306a36Sopenharmony_ci			Boolean option to control scrubbing pages before giving them back
722962306a36Sopenharmony_ci			to Xen, for use by other domains. Can be also changed at runtime
723062306a36Sopenharmony_ci			with /sys/devices/system/xen_memory/xen_memory0/scrub_pages.
723162306a36Sopenharmony_ci			Default value controlled with CONFIG_XEN_SCRUB_PAGES_DEFAULT.
723262306a36Sopenharmony_ci
723362306a36Sopenharmony_ci	xen_timer_slop=	[X86-64,XEN]
723462306a36Sopenharmony_ci			Set the timer slop (in nanoseconds) for the virtual Xen
723562306a36Sopenharmony_ci			timers (default is 100000). This adjusts the minimum
723662306a36Sopenharmony_ci			delta of virtualized Xen timers, where lower values
723762306a36Sopenharmony_ci			improve timer resolution at the expense of processing
723862306a36Sopenharmony_ci			more timer interrupts.
723962306a36Sopenharmony_ci
724062306a36Sopenharmony_ci	xen.balloon_boot_timeout= [XEN]
724162306a36Sopenharmony_ci			The time (in seconds) to wait before giving up to boot
724262306a36Sopenharmony_ci			in case initial ballooning fails to free enough memory.
724362306a36Sopenharmony_ci			Applies only when running as HVM or PVH guest and
724462306a36Sopenharmony_ci			started with less memory configured than allowed at
724562306a36Sopenharmony_ci			max. Default is 180.
724662306a36Sopenharmony_ci
724762306a36Sopenharmony_ci	xen.event_eoi_delay=	[XEN]
724862306a36Sopenharmony_ci			How long to delay EOI handling in case of event
724962306a36Sopenharmony_ci			storms (jiffies). Default is 10.
725062306a36Sopenharmony_ci
725162306a36Sopenharmony_ci	xen.event_loop_timeout=	[XEN]
725262306a36Sopenharmony_ci			After which time (jiffies) the event handling loop
725362306a36Sopenharmony_ci			should start to delay EOI handling. Default is 2.
725462306a36Sopenharmony_ci
725562306a36Sopenharmony_ci	xen.fifo_events=	[XEN]
725662306a36Sopenharmony_ci			Boolean parameter to disable using fifo event handling
725762306a36Sopenharmony_ci			even if available. Normally fifo event handling is
725862306a36Sopenharmony_ci			preferred over the 2-level event handling, as it is
725962306a36Sopenharmony_ci			fairer and the number of possible event channels is
726062306a36Sopenharmony_ci			much higher. Default is on (use fifo events).
726162306a36Sopenharmony_ci
726262306a36Sopenharmony_ci	xirc2ps_cs=	[NET,PCMCIA]
726362306a36Sopenharmony_ci			Format:
726462306a36Sopenharmony_ci			<irq>,<irq_mask>,<io>,<full_duplex>,<do_sound>,<lockup_hack>[,<irq2>[,<irq3>[,<irq4>]]]
726562306a36Sopenharmony_ci
726662306a36Sopenharmony_ci	xive=		[PPC]
726762306a36Sopenharmony_ci			By default on POWER9 and above, the kernel will
726862306a36Sopenharmony_ci			natively use the XIVE interrupt controller. This option
726962306a36Sopenharmony_ci			allows the fallback firmware mode to be used:
727062306a36Sopenharmony_ci
727162306a36Sopenharmony_ci			off       Fallback to firmware control of XIVE interrupt
727262306a36Sopenharmony_ci				  controller on both pseries and powernv
727362306a36Sopenharmony_ci				  platforms. Only useful on POWER9 and above.
727462306a36Sopenharmony_ci
727562306a36Sopenharmony_ci	xive.store-eoi=off	[PPC]
727662306a36Sopenharmony_ci			By default on POWER10 and above, the kernel will use
727762306a36Sopenharmony_ci			stores for EOI handling when the XIVE interrupt mode
727862306a36Sopenharmony_ci			is active. This option allows the XIVE driver to use
727962306a36Sopenharmony_ci			loads instead, as on POWER9.
728062306a36Sopenharmony_ci
728162306a36Sopenharmony_ci	xhci-hcd.quirks		[USB,KNL]
728262306a36Sopenharmony_ci			A hex value specifying bitmask with supplemental xhci
728362306a36Sopenharmony_ci			host controller quirks. Meaning of each bit can be
728462306a36Sopenharmony_ci			consulted in header drivers/usb/host/xhci.h.
728562306a36Sopenharmony_ci
728662306a36Sopenharmony_ci	xmon		[PPC]
728762306a36Sopenharmony_ci			Format: { early | on | rw | ro | off }
728862306a36Sopenharmony_ci			Controls if xmon debugger is enabled. Default is off.
728962306a36Sopenharmony_ci			Passing only "xmon" is equivalent to "xmon=early".
729062306a36Sopenharmony_ci			early	Call xmon as early as possible on boot; xmon
729162306a36Sopenharmony_ci				debugger is called from setup_arch().
729262306a36Sopenharmony_ci			on	xmon debugger hooks will be installed so xmon
729362306a36Sopenharmony_ci				is only called on a kernel crash. Default mode,
729462306a36Sopenharmony_ci				i.e. either "ro" or "rw" mode, is controlled
729562306a36Sopenharmony_ci				with CONFIG_XMON_DEFAULT_RO_MODE.
729662306a36Sopenharmony_ci			rw	xmon debugger hooks will be installed so xmon
729762306a36Sopenharmony_ci				is called only on a kernel crash, mode is write,
729862306a36Sopenharmony_ci				meaning SPR registers, memory and, other data
729962306a36Sopenharmony_ci				can be written using xmon commands.
730062306a36Sopenharmony_ci			ro 	same as "rw" option above but SPR registers,
730162306a36Sopenharmony_ci				memory, and other data can't be written using
730262306a36Sopenharmony_ci				xmon commands.
730362306a36Sopenharmony_ci			off	xmon is disabled.
730462306a36Sopenharmony_ci
7305