clocksource: Limit number of CPUs checked for clock synchronization
[linux-2.6-microblaze.git] / Documentation / admin-guide / kernel-parameters.txt
index 782dc6d..9ec9ea1 100644 (file)
@@ -50,7 +50,7 @@
                        CONFIG_ACPI_DEBUG must be enabled to produce any ACPI
                        debug output.  Bits in debug_layer correspond to a
                        _COMPONENT in an ACPI source file, e.g.,
-                           #define _COMPONENT ACPI_PCI_COMPONENT
+                           #define _COMPONENT ACPI_EVENTS
                        Bits in debug_level correspond to a level in
                        ACPI_DEBUG_PRINT statements, e.g.,
                            ACPI_DEBUG_PRINT((ACPI_DB_INFO, ...
@@ -60,8 +60,6 @@
 
                        Enable processor driver info messages:
                            acpi.debug_layer=0x20000000
-                       Enable PCI/PCI interrupt routing info messages:
-                           acpi.debug_layer=0x400000
                        Enable AML "Debug" output, i.e., stores to the Debug
                        object while interpreting AML:
                            acpi.debug_layer=0xffffffff acpi.debug_level=0x2
                        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.
+
        clearcpuid=BITNUM[,BITNUM...] [X86]
                        Disable CPUID feature X for the kernel. See
                        arch/x86/include/asm/cpufeatures.h for the valid bit
        cs89x0_media=   [HW,NET]
                        Format: { rj45 | aui | bnc }
 
+       csdlock_debug=  [KNL] Enable debug add-ons of cross-CPU function call
+                       handling. When switched on, additional debug data is
+                       printed to the console in case a hanging CPU is
+                       detected, and that CPU is pinged again in order to try
+                       to resolve the hang situation.
+                       0: disable csdlock debugging (default)
+                       1: enable basic csdlock debugging (minor impact)
+                       ext: enable extended csdlock debugging (more impact,
+                            but more data)
+
        dasd=           [HW,NET]
                        See header of drivers/s390/block/dasd_devmap.c.
 
        gpio-mockup.gpio_mockup_ranges
                        [HW] Sets the ranges of gpiochip of for this device.
                        Format: <start1>,<end1>,<start2>,<end2>...
+       gpio-mockup.gpio_mockup_named_lines
+                       [HW] Let the driver know GPIO lines should be named.
 
        gpt             [EFI] Forces disk with valid GPT signature but
                        invalid Protective MBR to be treated as GPT. If the
                        initcall functions.  Useful for debugging built-in
                        modules and initcalls.
 
+       initramfs_async= [KNL]
+                       Format: <bool>
+                       Default: 1
+                       This parameter controls whether the initramfs
+                       image is unpacked asynchronously, concurrently
+                       with devices being probed and
+                       initialized. This should normally just work,
+                       but as a debugging aid, one can get the
+                       historical behaviour of the initramfs
+                       unpacking being completed before device_ and
+                       late_ initcalls.
+
        initrd=         [BOOT] Specify the location of the initial ramdisk
 
        initrdmem=      [KNL] Specify a physical address and size from which to
                        bypassed by not enabling DMAR with this option. In
                        this case, gfx device will use physical address for
                        DMA.
-               forcedac [X86-64]
-                       With this option iommu will not optimize to look
-                       for io virtual address below 32-bit forcing dual
-                       address cycle on pci bus for cards supporting greater
-                       than 32-bit addressing. The default is to look
-                       for translation below 32-bit and if not available
-                       then look in the higher range.
                strict [Default Off]
                        With this option on every unmap_single operation will
                        result in a hardware IOTLB flush operation as opposed
                nobypass        [PPC/POWERNV]
                        Disable IOMMU bypass, using IOMMU for PCI devices.
 
+       iommu.forcedac= [ARM64, X86] Control IOVA allocation for PCI devices.
+                       Format: { "0" | "1" }
+                       0 - Try to allocate a 32-bit DMA address first, before
+                         falling back to the full range if needed.
+                       1 - Allocate directly from the full usable range,
+                         forcing Dual Address Cycle for PCI cards supporting
+                         greater than 32-bit addressing.
+
        iommu.strict=   [ARM64] Configure TLB invalidation behaviour
                        Format: { "0" | "1" }
                        0 - Lazy mode.
                                   state is kept private from the host.
                                   Not valid if the kernel is running in EL2.
 
-                       Defaults to VHE/nVHE based on hardware support and
-                       the value of CONFIG_ARM64_VHE.
+                       Defaults to VHE/nVHE based on hardware support.
 
        kvm-arm.vgic_v3_group0_trap=
                        [KVM,ARM] Trap guest accesses to GICv3 group-0
                        seconds.  Use this parameter to check at some
                        other rate.  0 disables periodic checking.
 
-       memtest=        [KNL,X86,ARM,PPC] Enable memtest
+       memory_hotplug.memmap_on_memory
+                       [KNL,X86,ARM] Boolean flag to enable this feature.
+                       Format: {on | off (default)}
+                       When enabled, runtime hotplugged memory will
+                       allocate its internal metadata (struct pages)
+                       from the hotadded memory which will allow to
+                       hotadd a lot of memory without requiring
+                       additional memory to do so.
+                       This feature is disabled by default because it
+                       has some implication on large (e.g. GB)
+                       allocations in some configurations (e.g. small
+                       memory blocks).
+                       The state of the flag can be read in
+                       /sys/module/memory_hotplug/parameters/memmap_on_memory.
+                       Note that even when enabled, there are a few cases where
+                       the feature is not effective.
+
+       memtest=        [KNL,X86,ARM,PPC,RISCV] Enable memtest
                        Format: <integer>
                        default : 0 <disable>
                        Specifies the number of memtest passes to be
 
        nohugeiomap     [KNL,X86,PPC,ARM64] Disable kernel huge I/O mappings.
 
+       nohugevmalloc   [PPC] Disable kernel huge vmalloc mappings.
+
        nosmt           [KNL,S390] Disable symmetric multithreading (SMT).
                        Equivalent to smt=1.
 
 
        nr_uarts=       [SERIAL] maximum number of UARTs to be registered.
 
-       numa_balancing= [KNL,X86] Enable or disable automatic NUMA balancing.
+       numa_balancing= [KNL,ARM64,PPC,RISCV,S390,X86] Enable or disable automatic
+                       NUMA balancing.
                        Allowed values are enable and disable
 
        numa_zonelist_order= [KNL, BOOT] Select zonelist order for NUMA.
                        Currently this function knows 686a and 8231 chips.
                        Format: [spp|ps2|epp|ecp|ecpepp]
 
+       pata_legacy.all=        [HW,LIBATA]
+                       Format: <int>
+                       Set to non-zero to probe primary and secondary ISA
+                       port ranges on PCI systems where no PCI PATA device
+                       has been found at either range.  Disabled by default.
+
+       pata_legacy.autospeed=  [HW,LIBATA]
+                       Format: <int>
+                       Set to non-zero if a chip is present that snoops speed
+                       changes.  Disabled by default.
+
+       pata_legacy.ht6560a=    [HW,LIBATA]
+                       Format: <int>
+                       Set to 1, 2, or 3 for HT 6560A on the primary channel,
+                       the secondary channel, or both channels respectively.
+                       Disabled by default.
+
+       pata_legacy.ht6560b=    [HW,LIBATA]
+                       Format: <int>
+                       Set to 1, 2, or 3 for HT 6560B on the primary channel,
+                       the secondary channel, or both channels respectively.
+                       Disabled by default.
+
+       pata_legacy.iordy_mask= [HW,LIBATA]
+                       Format: <int>
+                       IORDY enable mask.  Set individual bits to allow IORDY
+                       for the respective channel.  Bit 0 is for the first
+                       legacy channel handled by this driver, bit 1 is for
+                       the second channel, and so on.  The sequence will often
+                       correspond to the primary legacy channel, the secondary
+                       legacy channel, and so on, but the handling of a PCI
+                       bus and the use of other driver options may interfere
+                       with the sequence.  By default IORDY is allowed across
+                       all channels.
+
+       pata_legacy.opti82c46x= [HW,LIBATA]
+                       Format: <int>
+                       Set to 1, 2, or 3 for Opti 82c611A on the primary
+                       channel, the secondary channel, or both channels
+                       respectively.  Disabled by default.
+
+       pata_legacy.opti82c611a=        [HW,LIBATA]
+                       Format: <int>
+                       Set to 1, 2, or 3 for Opti 82c465MV on the primary
+                       channel, the secondary channel, or both channels
+                       respectively.  Disabled by default.
+
+       pata_legacy.pio_mask=   [HW,LIBATA]
+                       Format: <int>
+                       PIO mode mask for autospeed devices.  Set individual
+                       bits to allow the use of the respective PIO modes.
+                       Bit 0 is for mode 0, bit 1 is for mode 1, and so on.
+                       All modes allowed by default.
+
+       pata_legacy.probe_all=  [HW,LIBATA]
+                       Format: <int>
+                       Set to non-zero to probe tertiary and further ISA
+                       port ranges on PCI systems.  Disabled by default.
+
+       pata_legacy.probe_mask= [HW,LIBATA]
+                       Format: <int>
+                       Probe mask for legacy ISA PATA ports.  Depending on
+                       platform configuration and the use of other driver
+                       options up to 6 legacy ports are supported: 0x1f0,
+                       0x170, 0x1e8, 0x168, 0x1e0, 0x160, however probing
+                       of individual ports can be disabled by setting the
+                       corresponding bits in the mask to 1.  Bit 0 is for
+                       the first port in the list above (0x1f0), and so on.
+                       By default all supported ports are probed.
+
+       pata_legacy.qdi=        [HW,LIBATA]
+                       Format: <int>
+                       Set to non-zero to probe QDI controllers.  By default
+                       set to 1 if CONFIG_PATA_QDI_MODULE, 0 otherwise.
+
+       pata_legacy.winbond=    [HW,LIBATA]
+                       Format: <int>
+                       Set to non-zero to probe Winbond controllers.  Use
+                       the standard I/O port (0x130) if 1, otherwise the
+                       value given is the I/O port to use (typically 0x1b0).
+                       By default set to 1 if CONFIG_PATA_WINBOND_VLB_MODULE,
+                       0 otherwise.
+
+       pata_platform.pio_mask= [HW,LIBATA]
+                       Format: <int>
+                       Supported PIO mode mask.  Set individual bits to allow
+                       the use of the respective PIO modes.  Bit 0 is for
+                       mode 0, bit 1 is for mode 1, and so on.  Mode 0 only
+                       allowed by default.
+
        pause_on_oops=
                        Halt all CPUs after the first oops has been printed for
                        the specified number of seconds.  This is to be used if
                        fully seed the kernel's CRNG. Default is controlled
                        by CONFIG_RANDOM_TRUST_CPU.
 
+       randomize_kstack_offset=
+                       [KNL] Enable or disable kernel stack offset
+                       randomization, which provides roughly 5 bits of
+                       entropy, frustrating memory corruption attacks
+                       that depend on stack address determinism or
+                       cross-syscall address exposures. This is only
+                       available on architectures that have defined
+                       CONFIG_HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET.
+                       Format: <bool>  (1/Y/y=enable, 0/N/n=disable)
+                       Default is CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT.
+
        ras=option[,option,...] [KNL] RAS-specific options
 
                cec_disable     [X86]
                                see CONFIG_RAS_CEC help text.
 
        rcu_nocbs=      [KNL]
-                       The argument is a cpu list, as described above,
-                       except that the string "all" can be used to
-                       specify every CPU on the system.
+                       The argument is a cpu list, as described above.
 
                        In kernels built with CONFIG_RCU_NOCB_CPU=y, set
                        the specified list of CPUs to be no-callback CPUs.
        rcuscale.kfree_rcu_test= [KNL]
                        Set to measure performance of kfree_rcu() flooding.
 
+       rcuscale.kfree_rcu_test_double= [KNL]
+                       Test the double-argument variant of kfree_rcu().
+                       If this parameter has the same value as
+                       rcuscale.kfree_rcu_test_single, both the single-
+                       and double-argument variants are tested.
+
+       rcuscale.kfree_rcu_test_single= [KNL]
+                       Test the single-argument variant of kfree_rcu().
+                       If this parameter has the same value as
+                       rcuscale.kfree_rcu_test_double, both the single-
+                       and double-argument variants are tested.
+
        rcuscale.kfree_nthreads= [KNL]
                        The number of threads running loops of kfree_rcu().
 
 
        sbni=           [NET] Granch SBNI12 leased line adapter
 
-       sched_debug     [KNL] Enables verbose scheduler debug messages.
+       sched_verbose   [KNL] Enables verbose scheduler debug messages.
 
        schedstats=     [KNL,X86] Enable or disable scheduled statistics.
                        Allowed values are enable and disable. This feature
 
        slram=          [HW,MTD]
 
+       slab_merge      [MM]
+                       Enable merging of slabs with similar size when the
+                       kernel is built without CONFIG_SLAB_MERGE_DEFAULT.
+
        slab_nomerge    [MM]
                        Disable merging of slabs with similar size. May be
                        necessary if there is some reason to distinguish
                        lower than slub_max_order.
                        For more information see Documentation/vm/slub.rst.
 
+       slub_merge      [MM, SLUB]
+                       Same with slab_merge.
+
        slub_nomerge    [MM, SLUB]
                        Same with slab_nomerge. This is supported for legacy.
                        See slab_nomerge for more information.
        spia_peddr=
 
        split_lock_detect=
-                       [X86] Enable split lock detection
+                       [X86] Enable split lock detection or bus lock detection
 
                        When enabled (and if hardware support is present), atomic
                        instructions that access data across cache line
-                       boundaries will result in an alignment check exception.
+                       boundaries will result in an alignment check exception
+                       for split lock detection or a debug exception for
+                       bus lock detection.
 
                        off     - not enabled
 
-                       warn    - the kernel will emit rate limited warnings
+                       warn    - the kernel will emit rate-limited warnings
                                  about applications triggering the #AC
-                                 exception. This mode is the default on CPUs
-                                 that supports split lock detection.
+                                 exception or the #DB exception. This mode is
+                                 the default on CPUs that support split lock
+                                 detection or bus lock detection. Default
+                                 behavior is by #AC if both features are
+                                 enabled in hardware.
 
                        fatal   - the kernel will send SIGBUS to applications
-                                 that trigger the #AC exception.
+                                 that trigger the #AC exception or the #DB
+                                 exception. Default behavior is by #AC if
+                                 both features are enabled in hardware.
 
                        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"
                        mode.
 
+                       #DB exception for bus lock is triggered only when
+                       CPL > 0.
+
        srbds=          [X86,INTEL]
                        Control the Special Register Buffer Data Sampling
                        (SRBDS) mitigation.
                        See Documentation/admin-guide/mm/transhuge.rst
                        for more details.
 
+       trusted.source= [KEYS]
+                       Format: <string>
+                       This parameter identifies the trust source as a backend
+                       for trusted keys implementation. Supported trust
+                       sources:
+                       - "tpm"
+                       - "tee"
+                       If not specified then it defaults to iterating through
+                       the trust source list starting with TPM and assigns the
+                       first trust source as a backend which is initialized
+                       successfully during iteration.
+
        tsc=            Disable clocksource stability checks for TSC.
                        Format: <string>
                        [x86] reliable: mark tsc clocksource as reliable, this