Merge branch 'core-rcu-2021.07.04' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-microblaze.git] / Documentation / admin-guide / kernel-parameters.txt
index 4405fd3..b4ee111 100644 (file)
                        the GPE dispatcher.
                        This facility can be used to prevent such uncontrolled
                        GPE floodings.
-                       Format: <byte>
+                       Format: <byte> or <bitmap-list>
 
        acpi_no_auto_serialize  [HW,ACPI]
                        Disable auto-serialization of AML methods
                                          allowed anymore to lift isolation
                                          requirements as needed. This option
                                          does not override iommu=pt
+                       force_enable - Force enable the IOMMU on platforms known
+                                      to be buggy with IOMMU enabled. Use this
+                                      option with care.
 
        amd_iommu_dump= [HW,X86-64]
                        Enable AMD IOMMU driver option to dump the ACPI table
        ccw_timeout_log [S390]
                        See Documentation/s390/common_io.rst for details.
 
-       cgroup_disable= [KNL] Disable a particular controller
-                       Format: {name of the controller(s) to disable}
+       cgroup_disable= [KNL] Disable a particular controller or optional feature
+                       Format: {name of the controller(s) or feature(s) to disable}
                        The effects of cgroup_disable=foo are:
                        - foo isn't auto-mounted if you mount all cgroups in
                          a single hierarchy
                        - foo isn't visible as an individually mountable
                          subsystem
+                       - if foo is an optional feature then the feature is
+                         disabled and corresponding cgroup files are not
+                         created
                        {Currently only "memory" controller deal with this and
                        cut the overhead, others just disable the usage. So
                        only cgroup_disable=memory is actually worthy}
+                       Specifying "pressure" disables per-cgroup pressure
+                       stall information accounting feature
 
        cgroup_no_v1=   [KNL] Disable cgroup controllers and named hierarchies in v1
                        Format: { { controller | "all" | "named" }
                        loops can be debugged more effectively on production
                        systems.
 
+       clocksource.max_cswd_read_retries= [KNL]
+                       Number of clocksource_watchdog() retries due to
+                       external delays before the clock will be marked
+                       unstable.  Defaults to three retries, that is,
+                       four attempts to read the clock under test.
+
+       clocksource.verify_n_cpus= [KNL]
+                       Limit the number of CPUs checked for clocksources
+                       marked with CLOCK_SOURCE_VERIFY_PERCPU that
+                       are marked unstable due to excessive skew.
+                       A negative value says to check all CPUs, while
+                       zero says not to check any.  Values larger than
+                       nr_cpu_ids are silently truncated to nr_cpu_ids.
+                       The actual CPUs are chosen randomly, with
+                       no replacement if the same CPU is chosen twice.
+
+       clocksource-wdtest.holdoff= [KNL]
+                       Set the time in seconds that the clocksource
+                       watchdog test waits before commencing its tests.
+                       Defaults to zero when built as a module and to
+                       10 seconds when built into the kernel.
+
        clearcpuid=BITNUM[,BITNUM...] [X86]
                        Disable CPUID feature X for the kernel. See
                        arch/x86/include/asm/cpufeatures.h for the valid bit
                        Documentation/admin-guide/mm/hugetlbpage.rst.
                        Format: size[KMG]
 
+       hugetlb_free_vmemmap=
+                       [KNL] Reguires CONFIG_HUGETLB_PAGE_FREE_VMEMMAP
+                       enabled.
+                       Allows heavy hugetlb users to free up some more
+                       memory (6 * PAGE_SIZE for each 2MB hugetlb page).
+                       Format: { on | off (default) }
+
+                       on:  enable the feature
+                       off: disable the feature
+
+                       Built with CONFIG_HUGETLB_PAGE_FREE_VMEMMAP_DEFAULT_ON=y,
+                       the default is on.
+
+                       This is not compatible with memory_hotplug.memmap_on_memory.
+                       If both parameters are enabled, hugetlb_free_vmemmap takes
+                       precedence over memory_hotplug.memmap_on_memory.
+
        hung_task_panic=
                        [KNL] Should the hung task detector generate panics.
                        Format: 0 | 1
                          forcing Dual Address Cycle for PCI cards supporting
                          greater than 32-bit addressing.
 
-       iommu.strict=   [ARM64] Configure TLB invalidation behaviour
+       iommu.strict=   [ARM64, X86] Configure TLB invalidation behaviour
                        Format: { "0" | "1" }
                        0 - Lazy mode.
                          Request that DMA unmap operations use deferred
                        1 - Strict mode (default).
                          DMA unmap operations invalidate IOMMU hardware TLBs
                          synchronously.
+                       Note: on x86, the default behaviour depends on the
+                       equivalent driver-specific parameters, but a strict
+                       mode explicitly specified by either method takes
+                       precedence.
 
        iommu.passthrough=
                        [ARM64, X86] Configure DMA to bypass the IOMMU by default.
                        Note that even when enabled, there are a few cases where
                        the feature is not effective.
 
+                       This is not compatible with hugetlb_free_vmemmap. If
+                       both parameters are enabled, hugetlb_free_vmemmap takes
+                       precedence over memory_hotplug.memmap_on_memory.
+
        memtest=        [KNL,X86,ARM,PPC,RISCV] Enable memtest
                        Format: <integer>
                        default : 0 <disable>
 
        noclflush       [BUGS=X86] Don't use the CLFLUSH instruction
 
-       nodelayacct     [KNL] Disable per-task delay accounting
+       delayacct       [KNL] Enable per-task delay accounting
 
        nodsp           [SH] Disable hardware DSP at boot time.
 
 
        nr_uarts=       [SERIAL] maximum number of UARTs to be registered.
 
+       numa=off        [KNL, ARM64, PPC, RISCV, SPARC, X86] Disable NUMA, Only
+                       set up a single NUMA node spanning all memory.
+
        numa_balancing= [KNL,ARM64,PPC,RISCV,S390,X86] Enable or disable automatic
                        NUMA balancing.
                        Allowed values are enable and disable
                        off: turn off poisoning (default)
                        on: turn on poisoning
 
+       page_reporting.page_reporting_order=
+                       [KNL] Minimal page reporting order
+                       Format: <integer>
+                       Adjust the minimal page reporting order. The page
+                       reporting is disabled when it exceeds (MAX_ORDER-1).
+
        panic=          [KNL] Kernel behaviour on panic: delay <timeout>
                        timeout > 0: seconds before rebooting
                        timeout = 0: wait forever
                        Reserves a hole at the top of the kernel virtual
                        address space.
 
-       reservelow=     [X86]
-                       Format: nn[K]
-                       Set the amount of memory to reserve for BIOS at
-                       the bottom of the address space.
-
        reset_devices   [KNL] Force drivers to reset the underlying device
                        during initialization.
 
                                  exception. Default behavior is by #AC if
                                  both features are enabled in hardware.
 
+                       ratelimit:N -
+                                 Set system wide rate limit to N bus locks
+                                 per second for bus lock detection.
+                                 0 < N <= 1000.
+
+                                 N/A for split lock detection.
+
+
                        If an #AC exception is hit in the kernel or in
                        firmware (i.e. not while executing in user mode)
                        the kernel will oops in either "warn" or "fatal"
                        Note, echoing 1 into this file without the
                        tracepoint_printk kernel cmdline option has no effect.
 
+                       The tp_printk_stop_on_boot (see below) can also be used
+                       to stop the printing of events to console at
+                       late_initcall_sync.
+
                        ** CAUTION **
 
                        Having tracepoints sent to printk() and activating high
                        frequency tracepoints such as irq or sched, can cause
                        the system to live lock.
 
+       tp_printk_stop_on_boot[FTRACE]
+                       When tp_printk (above) is set, it can cause a lot of noise
+                       on the console. It may be useful to only include the
+                       printing of events during boot up, as user space may
+                       make the system inoperable.
+
+                       This command line option will stop the printing of events
+                       to console at the late_initcall_sync() time frame.
+
        traceoff_on_warning
                        [FTRACE] enable this option to disable tracing when a
                        warning is hit. This turns off "tracing_on". Tracing can