These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / Documentation / kernel-parameters.txt
index cd03a0f..bcaf28e 100644 (file)
@@ -167,7 +167,8 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
 
        acpi=           [HW,ACPI,X86,ARM64]
                        Advanced Configuration and Power Interface
-                       Format: { force | off | strict | noirq | rsdt }
+                       Format: { force | off | strict | noirq | rsdt |
+                                 copy_dsdt }
                        force -- enable ACPI if default was off
                        off -- disable ACPI if default was on
                        noirq -- do not use ACPI for IRQ routing
@@ -179,11 +180,6 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
 
                        See also Documentation/power/runtime_pm.txt, pci=noacpi
 
-       acpi_rsdp=      [ACPI,EFI,KEXEC]
-                       Pass the RSDP address to the kernel, mostly used
-                       on machines running EFI runtime service to boot the
-                       second kernel for kdump.
-
        acpi_apic_instance=     [ACPI, IOAPIC]
                        Format: <int>
                        2: use 2nd APIC table, if available
@@ -197,6 +193,14 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        (e.g. thinkpad_acpi, sony_acpi, etc.) instead
                        of the ACPI video.ko driver.
 
+       acpica_no_return_repair [HW, ACPI]
+                       Disable AML predefined validation mechanism
+                       This mechanism can repair the evaluation result to make
+                       the return objects more ACPI specification compliant.
+                       This option is useful for developers to identify the
+                       root cause of an AML interpreter issue when the issue
+                       has something to do with the repair mechanism.
+
        acpi.debug_layer=       [HW,ACPI,ACPI_DEBUG]
        acpi.debug_level=       [HW,ACPI,ACPI_DEBUG]
                        Format: <int>
@@ -225,6 +229,22 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        unusable.  The "log_buf_len" parameter may be useful
                        if you need to capture more output.
 
+       acpi_enforce_resources= [ACPI]
+                       { strict | lax | no }
+                       Check for resource conflicts between native drivers
+                       and ACPI OperationRegions (SystemIO and SystemMemory
+                       only). IO ports and memory declared in ACPI might be
+                       used by the ACPI subsystem in arbitrary AML code and
+                       can interfere with legacy drivers.
+                       strict (default): access to resources claimed by ACPI
+                       is denied; legacy drivers trying to access reserved
+                       resources will fail to bind to device using them.
+                       lax: access to resources claimed by ACPI is allowed;
+                       legacy drivers trying to access reserved resources
+                       will bind successfully but a warning message is logged.
+                       no: ACPI OperationRegions are not marked as reserved,
+                       no further checks are performed.
+
        acpi_force_table_verification   [HW,ACPI]
                        Enable table checksum verification during early stage.
                        By default, this is disabled due to x86 early mapping
@@ -253,6 +273,9 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        This feature is enabled by default.
                        This option allows to turn off the feature.
 
+       acpi_no_memhotplug [ACPI] Disable memory hotplug.  Useful for kdump
+                          kernels.
+
        acpi_no_static_ssdt     [HW,ACPI]
                        Disable installation of static SSDTs at early boot time
                        By default, SSDTs contained in the RSDT/XSDT will be
@@ -263,17 +286,20 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        dynamic table installation which will install SSDT
                        tables to /sys/firmware/acpi/tables/dynamic.
 
-       acpica_no_return_repair [HW, ACPI]
-                       Disable AML predefined validation mechanism
-                       This mechanism can repair the evaluation result to make
-                       the return objects more ACPI specification compliant.
-                       This option is useful for developers to identify the
-                       root cause of an AML interpreter issue when the issue
-                       has something to do with the repair mechanism.
+       acpi_rsdp=      [ACPI,EFI,KEXEC]
+                       Pass the RSDP address to the kernel, mostly used
+                       on machines running EFI runtime service to boot the
+                       second kernel for kdump.
 
        acpi_os_name=   [HW,ACPI] Tell ACPI BIOS the name of the OS
                        Format: To spoof as Windows 98: ="Microsoft Windows"
 
+       acpi_rev_override [ACPI] Override the _REV object to return 5 (instead
+                       of 2 which is mandated by ACPI 6) as the supported ACPI
+                       specification revision (when using this switch, it may
+                       be necessary to carry out a cold reboot _twice_ in a
+                       row to make it take effect on the platform firmware).
+
        acpi_osi=       [HW,ACPI] Modify list of supported OS interface strings
                        acpi_osi="string1"      # add string1
                        acpi_osi="!string2"     # remove string2
@@ -365,25 +391,6 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        Use timer override. For some broken Nvidia NF5 boards
                        that require a timer override, but don't have HPET
 
-       acpi_enforce_resources= [ACPI]
-                       { strict | lax | no }
-                       Check for resource conflicts between native drivers
-                       and ACPI OperationRegions (SystemIO and SystemMemory
-                       only). IO ports and memory declared in ACPI might be
-                       used by the ACPI subsystem in arbitrary AML code and
-                       can interfere with legacy drivers.
-                       strict (default): access to resources claimed by ACPI
-                       is denied; legacy drivers trying to access reserved
-                       resources will fail to bind to device using them.
-                       lax: access to resources claimed by ACPI is allowed;
-                       legacy drivers trying to access reserved resources
-                       will bind successfully but a warning message is logged.
-                       no: ACPI OperationRegions are not marked as reserved,
-                       no further checks are performed.
-
-       acpi_no_memhotplug [ACPI] Disable memory hotplug.  Useful for kdump
-                          kernels.
-
        add_efi_memmap  [EFI; X86] Include EFI memory map in
                        kernel's map of available physical RAM.
 
@@ -746,6 +753,12 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
        cpuidle.off=1   [CPU_IDLE]
                        disable the cpuidle sub-system
 
+       cpu_init_udelay=N
+                       [X86] Delay for N microsec between assert and de-assert
+                       of APIC INIT to start processors.  This delay occurs
+                       on every CPU online, such as boot, and resume from suspend.
+                       Default: 10000
+
        cpcihp_generic= [HW,PCI] Generic port I/O CompactPCI driver
                        Format:
                        <first_slot>,<last_slot>,<port>,<enum_bit>[,<debug>]
@@ -777,8 +790,10 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        is passed, kernel could allocate physical memory region
                        above 4G, that cause second kernel crash on system
                        that require some amount of low memory, e.g. swiotlb
-                       requires at least 64M+32K low memory.  Kernel would
-                       try to allocate 72M below 4G automatically.
+                       requires at least 64M+32K low memory, also enough extra
+                       low memory is needed to make sure DMA buffers for 32-bit
+                       devices won't run out. Kernel would try to allocate at
+                       at least 256M below 4G automatically.
                        This one let user to specify own low range under 4G
                        for second kernel instead.
                        0: to disable low allocation.
@@ -898,6 +913,8 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        Disable PIN 1 of APIC timer
                        Can be useful to work around chipset bugs.
 
+       dis_ucode_ldr   [X86] Disable the microcode loader.
+
        dma_debug=off   If the kernel is compiled with DMA_API_DEBUG support,
                        this option disables the debugging code at boot.
 
@@ -915,11 +932,11 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        The filter can be disabled or changed to another
                        driver later using sysfs.
 
-       drm_kms_helper.edid_firmware=[<connector>:]<file>
-                       Broken monitors, graphic adapters and KVMs may
-                       send no or incorrect EDID data sets. This parameter
-                       allows to specify an EDID data set in the
-                       /lib/firmware directory that is used instead.
+       drm_kms_helper.edid_firmware=[<connector>:]<file>[,[<connector>:]<file>]
+                       Broken monitors, graphic adapters, KVMs and EDIDless
+                       panels may send no or incorrect EDID data sets.
+                       This parameter allows to specify an EDID data sets
+                       in the /lib/firmware directory that are used instead.
                        Generic built-in EDID data sets are used, if one of
                        edid/1024x768.bin, edid/1280x1024.bin,
                        edid/1680x1050.bin, or edid/1920x1080.bin is given
@@ -928,7 +945,10 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        available in Documentation/EDID/HOWTO.txt. An EDID
                        data set will only be used for a particular connector,
                        if its name and a colon are prepended to the EDID
-                       name.
+                       name. Each connector may use a unique EDID data
+                       set by separating the files with a comma.  An EDID
+                       data set with no connector name will be used for
+                       any connectors not explicitly specified.
 
        dscc4.setup=    [NET]
 
@@ -937,12 +957,19 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        Enable debug messages at boot time.  See
                        Documentation/dynamic-debug-howto.txt for details.
 
+       nompx           [X86] Disables Intel Memory Protection Extensions.
+                       See Documentation/x86/intel_mpx.txt for more
+                       information about the feature.
+
        eagerfpu=       [X86]
                        on      enable eager fpu restore
                        off     disable eager fpu restore
                        auto    selects the default scheme, which automatically
                                enables eagerfpu restore for xsaveopt.
 
+       module.async_probe [KNL]
+                       Enable asynchronous probe on this module.
+
        early_ioremap_debug [KNL]
                        Enable debug messages in early_ioremap support. This
                        is useful for tracking down temporary early mappings
@@ -950,6 +977,10 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
 
        earlycon=       [KNL] Output early console device and options.
 
+                       When used with no options, the early console is
+                       determined by the stdout-path property in device
+                       tree's chosen node.
+
                cdns,<addr>
                        Start an early, polled-mode console on a cadence serial
                        port at the specified address. The cadence serial port
@@ -959,14 +990,15 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                uart[8250],io,<addr>[,options]
                uart[8250],mmio,<addr>[,options]
                uart[8250],mmio32,<addr>[,options]
+               uart[8250],mmio32be,<addr>[,options]
                uart[8250],0x<addr>[,options]
                        Start an early, polled-mode console on the 8250/16550
                        UART at the specified I/O port or MMIO address.
                        MMIO inter-register address stride is either 8-bit
-                       (mmio) or 32-bit (mmio32).
-                       If none of [io|mmio|mmio32], <addr> is assumed to be
-                       equivalent to 'mmio'. 'options' are specified in the
-                       same format described for "console=ttyS<n>"; if
+                       (mmio) or 32-bit (mmio32 or mmio32be).
+                       If none of [io|mmio|mmio32|mmio32be], <addr> is assumed
+                       to be equivalent to 'mmio'. 'options' are specified
+                       in the same format described for "console=ttyS<n>"; if
                        unspecified, the h/w is not initialized.
 
                pl011,<addr>
@@ -1001,6 +1033,13 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        serial port must already be setup and configured.
                        Options are not yet supported.
 
+               lpuart,<addr>
+               lpuart32,<addr>
+                       Use early console provided by Freescale LP UART driver
+                       found on Freescale Vybrid and QorIQ LS1021A processors.
+                       A valid base address must be provided, and the serial
+                       port must already be setup and configured.
+
        earlyprintk=    [X86,SH,BLACKFIN,ARM,M68k]
                        earlyprintk=vga
                        earlyprintk=efi
@@ -1009,6 +1048,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        earlyprintk=serial[,0x...[,baudrate]]
                        earlyprintk=ttySn[,baudrate]
                        earlyprintk=dbgp[debugController#]
+                       earlyprintk=pciserial,bus:device.function[,baudrate]
 
                        earlyprintk is useful when the kernel crashes before
                        the normal console is initialized. It is not enabled by
@@ -1071,6 +1111,21 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        you are really sure that your UEFI does sane gc and
                        fulfills the spec otherwise your board may brick.
 
+       efi_fake_mem=   nn[KMG]@ss[KMG]:aa[,nn[KMG]@ss[KMG]:aa,..] [EFI; X86]
+                       Add arbitrary attribute to specific memory range by
+                       updating original EFI memory map.
+                       Region of memory which aa attribute is added to is
+                       from ss to ss+nn.
+                       If efi_fake_mem=2G@4G:0x10000,2G@0x10a0000000:0x10000
+                       is specified, EFI_MEMORY_MORE_RELIABLE(0x10000)
+                       attribute is added to range 0x100000000-0x180000000 and
+                       0x10a0000000-0x1120000000.
+
+                       Using this parameter you can do debugging of EFI memmap
+                       related feature. For example, you can do debugging of
+                       Address Range Mirroring feature even if your box
+                       doesn't support it.
+
        eisa_irq_edge=  [PARISC,HW]
                        See header of drivers/parisc/eisa.c.
 
@@ -1223,6 +1278,11 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        Format: <unsigned int> such that (rxsize & ~0x1fffc0) == 0.
                        Default: 1024
 
+       hardlockup_all_cpu_backtrace=
+                       [KNL] Should the hard-lockup detector generate
+                       backtraces on all cpus.
+                       Format: <integer>
+
        hashdist=       [KNL,NUMA] Large hashes allocated during boot
                        are distributed across NUMA nodes.  Defaults on
                        for 64-bit NUMA, off otherwise.
@@ -1294,6 +1354,10 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                             <bus_id>,<clkrate>
 
        i8042.debug     [HW] Toggle i8042 debug mode
+       i8042.unmask_kbd_data
+                       [HW] Enable printing of interrupt data from the KBD port
+                            (disabled by default, and as a pre-condition
+                            requires that i8042.debug=1 be enabled)
        i8042.direct    [HW] Put keyboard port into non-translated mode
        i8042.dumbkbd   [HW] Pretend that controller can only read data from
                             keyboard and cannot control its state
@@ -1414,7 +1478,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
 
        ima_template=   [IMA]
                        Select one of defined IMA measurements template formats.
-                       Formats: { "ima" | "ima-ng" }
+                       Formats: { "ima" | "ima-ng" | "ima-sig" }
                        Default: "ima-ng"
 
        ima_template_fmt=
@@ -1526,6 +1590,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        nosid   disable Source ID checking
                        no_x2apic_optout
                                BIOS x2APIC opt-out request will be ignored
+                       nopost  disable Interrupt Posting
 
        iomem=          Disable strict checking of access to MMIO memory
                strict  regions from userspace.
@@ -1564,6 +1629,15 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
        ip=             [IP_PNP]
                        See Documentation/filesystems/nfs/nfsroot.txt.
 
+       irqaffinity=    [SMP] Set the default irq affinity mask
+                       Format:
+                       <cpu number>,...,<cpu number>
+                       or
+                       <cpu number>-<cpu number>
+                       (must be a positive range in ascending order)
+                       or a mixture
+                       <cpu number>,...,<cpu number>-<cpu number>
+
        irqfixup        [HW]
                        When an interrupt is not handled search all handlers
                        for it. Intended to get systems with badly broken
@@ -1788,6 +1862,8 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
 
                        * [no]ncq: Turn on or off NCQ.
 
+                       * [no]ncqtrim: Turn off queued DSM TRIM.
+
                        * nohrst, nosrst, norst: suppress hard, soft
                           and both resets.
 
@@ -2256,6 +2332,15 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        The default parameter value of '0' causes the kernel
                        not to attempt recovery of lost locks.
 
+       nfs4.layoutstats_timer =
+                       [NFSv4.2] Change the rate at which the kernel sends
+                       layoutstats to the pNFS metadata server.
+
+                       Setting this to value to 0 causes the kernel to use
+                       whatever value is the default set by the layout
+                       driver. A non-zero value sets the minimum interval
+                       in seconds between layoutstats transmissions.
+
        nfsd.nfs4_disable_idmapping=
                        [NFSv4] When set to the default of '1', the NFSv4
                        server will return only numeric uids and gids to
@@ -2276,11 +2361,12 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
        nmi_watchdog=   [KNL,BUGS=X86] Debugging features for SMP kernels
                        Format: [panic,][nopanic,][num]
                        Valid num: 0 or 1
-                       0 - turn nmi_watchdog off
-                       1 - turn nmi_watchdog on
+                       0 - turn hardlockup detector in nmi_watchdog off
+                       1 - turn hardlockup detector in nmi_watchdog on
                        When panic is specified, panic when an NMI watchdog
                        timeout occurs (or 'nopanic' to override the opposite
-                       default).
+                       default). To disable both hard and soft lockup detectors,
+                       please see 'nowatchdog'.
                        This is useful when you use a panic=... timeout and
                        need the box quickly up again.
 
@@ -2451,7 +2537,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
 
        nomca           [IA-64] Disable machine check abort handling
 
-       nomce           [X86-32] Machine Check Exception
+       nomce           [X86-32] Disable Machine Check Exception
 
        nomfgpt         [X86-32] Disable Multi-Function General Purpose
                        Timer usage (for AMD Geode machines).
@@ -3006,16 +3092,42 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        Set maximum number of finished RCU callbacks to
                        process in one batch.
 
+       rcutree.dump_tree=      [KNL]
+                       Dump the structure of the rcu_node combining tree
+                       out at early boot.  This is used for diagnostic
+                       purposes, to verify correct tree setup.
+
+       rcutree.gp_cleanup_delay=       [KNL]
+                       Set the number of jiffies to delay each step of
+                       RCU grace-period cleanup.  This only has effect
+                       when CONFIG_RCU_TORTURE_TEST_SLOW_CLEANUP is set.
+
        rcutree.gp_init_delay=  [KNL]
                        Set the number of jiffies to delay each step of
                        RCU grace-period initialization.  This only has
-                       effect when CONFIG_RCU_TORTURE_TEST_SLOW_INIT is
-                       set.
+                       effect when CONFIG_RCU_TORTURE_TEST_SLOW_INIT
+                       is set.
+
+       rcutree.gp_preinit_delay=       [KNL]
+                       Set the number of jiffies to delay each step of
+                       RCU grace-period pre-initialization, that is,
+                       the propagation of recent CPU-hotplug changes up
+                       the rcu_node combining tree.  This only has effect
+                       when CONFIG_RCU_TORTURE_TEST_SLOW_PREINIT is set.
+
+       rcutree.rcu_fanout_exact= [KNL]
+                       Disable autobalancing of the rcu_node combining
+                       tree.  This is used by rcutorture, and might
+                       possibly be useful for architectures having high
+                       cache-to-cache transfer latencies.
 
        rcutree.rcu_fanout_leaf= [KNL]
-                       Increase the number of CPUs assigned to each
-                       leaf rcu_node structure.  Useful for very large
-                       systems.
+                       Change the number of CPUs assigned to each
+                       leaf rcu_node structure.  Useful for very
+                       large systems, which will choose the value 64,
+                       and for NUMA systems with large remote-access
+                       latencies, which will choose a value aligned
+                       with the appropriate hardware boundaries.
 
        rcutree.jiffies_till_sched_qs= [KNL]
                        Set required age in jiffies for a
@@ -3089,22 +3201,35 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        in a given burst of a callback-flood test.
 
        rcutorture.fqs_duration= [KNL]
-                       Set duration of force_quiescent_state bursts.
+                       Set duration of force_quiescent_state bursts
+                       in microseconds.
 
        rcutorture.fqs_holdoff= [KNL]
-                       Set holdoff time within force_quiescent_state bursts.
+                       Set holdoff time within force_quiescent_state bursts
+                       in microseconds.
 
        rcutorture.fqs_stutter= [KNL]
-                       Set wait time between force_quiescent_state bursts.
+                       Set wait time between force_quiescent_state bursts
+                       in seconds.
+
+       rcutorture.gp_cond= [KNL]
+                       Use conditional/asynchronous update-side
+                       primitives, if available.
 
        rcutorture.gp_exp= [KNL]
-                       Use expedited update-side primitives.
+                       Use expedited update-side primitives, if available.
 
        rcutorture.gp_normal= [KNL]
-                       Use normal (non-expedited) update-side primitives.
-                       If both gp_exp and gp_normal are set, do both.
-                       If neither gp_exp nor gp_normal are set, still
-                       do both.
+                       Use normal (non-expedited) asynchronous
+                       update-side primitives, if available.
+
+       rcutorture.gp_sync= [KNL]
+                       Use normal (non-expedited) synchronous
+                       update-side primitives, if available.  If all
+                       of rcutorture.gp_cond=, rcutorture.gp_exp=,
+                       rcutorture.gp_normal=, and rcutorture.gp_sync=
+                       are zero, rcutorture acts as if is interpreted
+                       they are all non-zero.
 
        rcutorture.n_barrier_cbs= [KNL]
                        Set callbacks/threads for rcu_barrier() testing.
@@ -3115,7 +3240,11 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        test, hence the "fake".
 
        rcutorture.nreaders= [KNL]
-                       Set number of RCU readers.
+                       Set number of RCU readers.  The value -1 selects
+                       N-1, where N is the number of CPUs.  A value
+                       "n" less than -1 selects N-n-2, where N is again
+                       the number of CPUs.  For example, -2 selects N
+                       (the number of CPUs), -3 selects N+1, and so on.
 
        rcutorture.object_debug= [KNL]
                        Enable debug-object double-call_rcu() testing.
@@ -3127,9 +3256,6 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        Set time (s) between CPU-hotplug operations, or
                        zero to disable CPU-hotplug testing.
 
-       rcutorture.torture_runnable= [BOOT]
-                       Start rcutorture running at boot time.
-
        rcutorture.shuffle_interval= [KNL]
                        Set task-shuffle interval (s).  Shuffling tasks
                        allows some CPUs to go into dyntick-idle mode
@@ -3170,6 +3296,9 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        Test RCU's dyntick-idle handling.  See also the
                        rcutorture.shuffle_interval parameter.
 
+       rcutorture.torture_runnable= [BOOT]
+                       Start rcutorture running at boot time.
+
        rcutorture.torture_type= [KNL]
                        Specify the RCU implementation to test.
 
@@ -4028,6 +4157,13 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        plus one apbt timer for broadcast timer.
                        x86_intel_mid_timer=apbt_only | lapic_and_apbt
 
+       xen_512gb_limit         [KNL,X86-64,XEN]
+                       Restricts the kernel running paravirtualized under Xen
+                       to use only up to 512 GB of RAM. The reason to do so is
+                       crash analysis tools and Xen tools for doing domain
+                       save/restore/migration must be enabled to handle larger
+                       domains.
+
        xen_emul_unplug=                [HW,X86,XEN]
                        Unplug Xen emulated devices
                        Format: [unplug0,][unplug1]