Merge tag 'audit-pr-20180403' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoor...
[muen/linux.git] / Documentation / admin-guide / kernel-parameters.txt
index 93366b0..7efed1c 100644 (file)
                        This facility can be used to prevent such uncontrolled
                        GPE floodings.
                        Format: <int>
-                       Support masking of GPEs numbered from 0x00 to 0x7f.
 
        acpi_no_auto_serialize  [HW,ACPI]
                        Disable auto-serialization of AML methods
 
        acpi_sleep=     [HW,ACPI] Sleep options
                        Format: { s3_bios, s3_mode, s3_beep, s4_nohwsig,
-                                 old_ordering, nonvs, sci_force_enable }
+                                 old_ordering, nonvs, sci_force_enable, nobl }
                        See Documentation/power/video.txt for information on
                        s3_bios and s3_mode.
                        s3_beep is for debugging; it makes the PC's speaker beep
                        sci_force_enable causes the kernel to set SCI_EN directly
                        on resume from S1/S3 (which is against the ACPI spec,
                        but some broken systems don't work without it).
+                       nobl causes the internal blacklist of systems known to
+                       behave incorrectly in some ways with respect to system
+                       suspend and resume to be ignored (use wisely).
 
        acpi_use_timer_override [HW,ACPI]
                        Use timer override. For some broken Nvidia NF5 boards
                        console=brl,ttyS0
                For now, only VisioBraille is supported.
 
+       console_msg_format=
+                       [KNL] Change console messages format
+               default
+                       By default we print messages on consoles in
+                       "[time stamp] text\n" format (time stamp may not be
+                       printed, depending on CONFIG_PRINTK_TIME or
+                       `printk_time' param).
+               syslog
+                       Switch to syslog format: "<%u>[time stamp] text\n"
+                       IOW, each message will have a facility and loglevel
+                       prefix. The format is similar to one used by syslog()
+                       syscall, or to executing "dmesg -S --raw" or to reading
+                       from /proc/kmsg.
+
        consoleblank=   [KNL] The console blank (screen saver) timeout in
                        seconds. A value of 0 disables the blank timer.
                        Defaults to 0.
 
        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.
+                       [ARM64] The early console is determined by the
+                       stdout-path property in device tree's chosen node,
+                       or determined by the ACPI SPCR table.
+
+                       [X86] When used with no options the early console is
+                       determined by the ACPI SPCR table.
 
                cdns,<addr>[,options]
                        Start an early, polled-mode console on a Cadence
                        address. The serial port must already be setup
                        and configured. Options are not yet supported.
 
-       earlyprintk=    [X86,SH,BLACKFIN,ARM,M68k,S390]
+       earlyprintk=    [X86,SH,ARM,M68k,S390]
                        earlyprintk=vga
                        earlyprintk=efi
                        earlyprintk=sclp
                               If specified, z/VM IUCV HVC accepts connections
                               from listed z/VM user IDs only.
 
-       hwthread_map=   [METAG] Comma-separated list of Linux cpu id to
-                               hardware thread id mappings.
-                               Format: <cpu>:<hwthread>
-
        keep_bootcon    [KNL]
                        Do not unregister boot console at start. This is only
                        useful for debugging when something happens in the window
                        of a GICv2 controller even if the memory range
                        exposed by the device tree is too small.
 
+       irqchip.gicv3_nolpi=
+                       [ARM, ARM64]
+                       Force the kernel to ignore the availability of
+                       LPIs (and by consequence ITSs). Intended for system
+                       that use the kernel as a bootloader, and thus want
+                       to let secondary kernels in charge of setting up
+                       LPIs.
+
        irqfixup        [HW]
                        When an interrupt is not handled search all handlers
                        for it. Intended to get systems with badly broken
 
                        nohz
                          Disable the tick when a single task runs.
+
+                         A residual 1Hz tick is offloaded to workqueues, which you
+                         need to affine to housekeeping through the global
+                         workqueue's affinity configured via the
+                         /sys/devices/virtual/workqueue/cpumask sysfs file, or
+                         by using the 'domain' flag described below.
+
+                         NOTE: by default the global workqueue runs on all CPUs,
+                         so to protect individual CPUs the 'cpumask' file has to
+                         be configured manually after bootup.
+
                        domain
                          Isolate from the general SMP balancing and scheduling
                          algorithms. Note that performing domain isolation this way
        keepinitrd      [HW,ARM]
 
        kernelcore=     [KNL,X86,IA-64,PPC]
-                       Format: nn[KMGTPE] | "mirror"
-                       This parameter
-                       specifies the amount of memory usable by the kernel
-                       for non-movable allocations.  The requested amount is
-                       spread evenly throughout all nodes in the system. The
-                       remaining memory in each node is used for Movable
-                       pages. In the event, a node is too small to have both
-                       kernelcore and Movable pages, kernelcore pages will
-                       take priority and other nodes will have a larger number
-                       of Movable pages.  The Movable zone is used for the
-                       allocation of pages that may be reclaimed or moved
-                       by the page migration subsystem.  This means that
-                       HugeTLB pages may not be allocated from this zone.
-                       Note that allocations like PTEs-from-HighMem still
-                       use the HighMem zone if it exists, and the Normal
+                       Format: nn[KMGTPE] | nn% | "mirror"
+                       This parameter specifies the amount of memory usable by
+                       the kernel for non-movable allocations.  The requested
+                       amount is spread evenly throughout all nodes in the
+                       system as ZONE_NORMAL.  The remaining memory is used for
+                       movable memory in its own zone, ZONE_MOVABLE.  In the
+                       event, a node is too small to have both ZONE_NORMAL and
+                       ZONE_MOVABLE, kernelcore memory will take priority and
+                       other nodes will have a larger ZONE_MOVABLE.
+
+                       ZONE_MOVABLE is used for the allocation of pages that
+                       may be reclaimed or moved by the page migration
+                       subsystem.  Note that allocations like PTEs-from-HighMem
+                       still use the HighMem zone if it exists, and the Normal
                        zone if it does not.
 
-                       Instead of specifying the amount of memory (nn[KMGTPE]),
-                       you can specify "mirror" option. In case "mirror"
+                       It is possible to specify the exact amount of memory in
+                       the form of "nn[KMGTPE]", a percentage of total system
+                       memory in the form of "nn%", or "mirror".  If "mirror"
                        option is specified, mirrored (reliable) memory is used
                        for non-movable allocations and remaining memory is used
-                       for Movable pages. nn[KMGTPE] and "mirror" are exclusive,
-                       so you can NOT specify nn[KMGTPE] and "mirror" at the same
-                       time.
+                       for Movable pages.  "nn[KMGTPE]", "nn%", and "mirror"
+                       are exclusive, so you cannot specify multiple forms.
 
        kgdbdbgp=       [KGDB,HW] kgdb over EHCI usb debug port.
                        Format: <Controller#>[,poll interval]
                        This tests the locking primitive's ability to
                        transition abruptly to and from idle.
 
-       locktorture.torture_runnable= [BOOT]
-                       Start locktorture running at boot time.
-
        locktorture.torture_type= [KNL]
                        Specify the locking implementation to test.
 
                        The memory region may be marked as e820 type 12 (0xc)
                        and is NVDIMM or ADR memory.
 
+       memmap=<size>%<offset>-<oldtype>+<newtype>
+                       [KNL,ACPI] Convert memory within the specified region
+                       from <oldtype> to <newtype>. If "-<oldtype>" is left
+                       out, the whole region will be marked as <newtype>,
+                       even if previously unavailable. If "+<newtype>" is left
+                       out, matching memory will be removed. Types are
+                       specified as e820 types, e.g., 1 = RAM, 2 = reserved,
+                       3 = ACPI, 12 = PRAM.
+
        memory_corruption_check=0/1 [X86]
                        Some BIOSes seem to corrupt the first 64k of
                        memory when doing things like suspend/resume.
        mousedev.yres=  [MOUSE] Vertical screen resolution, used for devices
                        reporting absolute coordinates, such as tablets
 
-       movablecore=nn[KMG]     [KNL,X86,IA-64,PPC] This parameter
-                       is similar to kernelcore except it specifies the
-                       amount of memory used for migratable allocations.
-                       If both kernelcore and movablecore is specified,
-                       then kernelcore will be at *least* the specified
-                       value but may be more. If movablecore on its own
-                       is specified, the administrator must be careful
+       movablecore=    [KNL,X86,IA-64,PPC]
+                       Format: nn[KMGTPE] | nn%
+                       This parameter is the complement to kernelcore=, it
+                       specifies the amount of memory used for migratable
+                       allocations.  If both kernelcore and movablecore is
+                       specified, then kernelcore will be at *least* the
+                       specified value but may be more.  If movablecore on its
+                       own is specified, the administrator must be careful
                        that the amount of memory usable for all allocations
                        is not too small.
 
                        This is useful when you use a panic=... timeout and
                        need the box quickly up again.
 
+                       These settings can be accessed at runtime via
+                       the nmi_watchdog and hardlockup_panic sysctls.
+
        netpoll.carrier_timeout=
                        [NET] Specifies amount of time (in seconds) that
                        netpoll should wait for a carrier. By default netpoll
        norandmaps      Don't use address space randomization.  Equivalent to
                        echo 0 > /proc/sys/kernel/randomize_va_space
 
-       noreplace-paravirt      [X86,IA-64,PV_OPS] Don't patch paravirt_ops
-
        noreplace-smp   [X86-32,SMP] Don't replace SMP instructions
                        with UP alternatives
 
                        the same as for rcuperf.nreaders.
                        N, where N is the number of CPUs
 
-       rcuperf.perf_runnable= [BOOT]
-                       Start rcuperf running at boot time.
-
        rcuperf.perf_type= [KNL]
                        Specify the RCU implementation to test.
 
                        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.
 
 
        rdt=            [HW,X86,RDT]
                        Turn on/off individual RDT features. List is:
-                       cmt, mbmtotal, mbmlocal, l3cat, l3cdp, l2cat, mba.
+                       cmt, mbmtotal, mbmlocal, l3cat, l3cdp, l2cat, l2cdp,
+                       mba.
                        E.g. to turn on cmt and turn off mba use:
                                rdt=cmt,!mba
 
                        [KNL, SMP] Set scheduler's default relax_domain_level.
                        See Documentation/cgroup-v1/cpusets.txt.
 
-       reserve=        [KNL,BUGS] Force the kernel to ignore some iomem area
+       reserve=        [KNL,BUGS] Force kernel to ignore I/O ports or memory
+                       Format: <base1>,<size1>[,<base2>,<size2>,...]
+                       Reserve I/O ports or memory so the kernel won't use
+                       them.  If <base> is less than 0x10000, the region
+                       is assumed to be I/O ports; otherwise it is memory.
 
        reservetop=     [X86-32]
                        Format: nn[KMG]
 
        usbcore.nousb   [USB] Disable the USB subsystem
 
+       usbcore.quirks=
+                       [USB] A list of quirk entries to augment the built-in
+                       usb core quirk list. List entries are separated by
+                       commas. Each entry has the form
+                       VendorID:ProductID:Flags. The IDs are 4-digit hex
+                       numbers and Flags is a set of letters. Each letter
+                       will change the built-in quirk; setting it if it is
+                       clear and clearing it if it is set. The letters have
+                       the following meanings:
+                               a = USB_QUIRK_STRING_FETCH_255 (string
+                                       descriptors must not be fetched using
+                                       a 255-byte read);
+                               b = USB_QUIRK_RESET_RESUME (device can't resume
+                                       correctly so reset it instead);
+                               c = USB_QUIRK_NO_SET_INTF (device can't handle
+                                       Set-Interface requests);
+                               d = USB_QUIRK_CONFIG_INTF_STRINGS (device can't
+                                       handle its Configuration or Interface
+                                       strings);
+                               e = USB_QUIRK_RESET (device can't be reset
+                                       (e.g morph devices), don't use reset);
+                               f = USB_QUIRK_HONOR_BNUMINTERFACES (device has
+                                       more interface descriptions than the
+                                       bNumInterfaces count, and can't handle
+                                       talking to these interfaces);
+                               g = USB_QUIRK_DELAY_INIT (device needs a pause
+                                       during initialization, after we read
+                                       the device descriptor);
+                               h = USB_QUIRK_LINEAR_UFRAME_INTR_BINTERVAL (For
+                                       high speed and super speed interrupt
+                                       endpoints, the USB 2.0 and USB 3.0 spec
+                                       require the interval in microframes (1
+                                       microframe = 125 microseconds) to be
+                                       calculated as interval = 2 ^
+                                       (bInterval-1).
+                                       Devices with this quirk report their
+                                       bInterval as the result of this
+                                       calculation instead of the exponent
+                                       variable used in the calculation);
+                               i = USB_QUIRK_DEVICE_QUALIFIER (device can't
+                                       handle device_qualifier descriptor
+                                       requests);
+                               j = USB_QUIRK_IGNORE_REMOTE_WAKEUP (device
+                                       generates spurious wakeup, ignore
+                                       remote wakeup capability);
+                               k = USB_QUIRK_NO_LPM (device can't handle Link
+                                       Power Management);
+                               l = USB_QUIRK_LINEAR_FRAME_INTR_BINTERVAL
+                                       (Device reports its bInterval as linear
+                                       frames instead of the USB 2.0
+                                       calculation);
+                               m = USB_QUIRK_DISCONNECT_SUSPEND (Device needs
+                                       to be disconnected before suspend to
+                                       prevent spurious wakeup);
+                               n = USB_QUIRK_DELAY_CTRL_MSG (Device needs a
+                                       pause after every control message);
+                       Example: quirks=0781:5580:bk,0a5c:5834:gij
+
        usbhid.mousepoll=
                        [USBHID] The interval which mice are to be polled at.
 
        usbhid.jspoll=
                        [USBHID] The interval which joysticks are to be polled at.
 
+       usbhid.kbpoll=
+                       [USBHID] The interval which keyboards are to be polled at.
+
        usb-storage.delay_use=
                        [UMS] The delay in seconds before a new device is
                        scanned for Logical Units (default 1).