mirror of
https://gitee.com/bianbu-linux/linux-6.6
synced 2025-04-24 14:07:52 -04:00
Merge drm/drm-next into drm-misc-next
Start the 6.5 release cycle. Signed-off-by: Maxime Ripard <maxime@cerno.tech>
This commit is contained in:
commit
ff32fcca64
12099 changed files with 629240 additions and 379856 deletions
|
@ -520,7 +520,7 @@ ForEachMacros:
|
||||||
- 'of_property_for_each_string'
|
- 'of_property_for_each_string'
|
||||||
- 'of_property_for_each_u32'
|
- 'of_property_for_each_u32'
|
||||||
- 'pci_bus_for_each_resource'
|
- 'pci_bus_for_each_resource'
|
||||||
- 'pci_doe_for_each_off'
|
- 'pci_dev_for_each_resource'
|
||||||
- 'pcl_for_each_chunk'
|
- 'pcl_for_each_chunk'
|
||||||
- 'pcl_for_each_segment'
|
- 'pcl_for_each_segment'
|
||||||
- 'pcm_for_each_format'
|
- 'pcm_for_each_format'
|
||||||
|
|
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -103,6 +103,7 @@ modules.order
|
||||||
!.get_maintainer.ignore
|
!.get_maintainer.ignore
|
||||||
!.gitattributes
|
!.gitattributes
|
||||||
!.gitignore
|
!.gitignore
|
||||||
|
!.kunitconfig
|
||||||
!.mailmap
|
!.mailmap
|
||||||
!.rustfmt.toml
|
!.rustfmt.toml
|
||||||
|
|
||||||
|
|
15
.mailmap
15
.mailmap
|
@ -213,7 +213,10 @@ Jeff Garzik <jgarzik@pretzel.yyz.us>
|
||||||
Jeff Layton <jlayton@kernel.org> <jlayton@poochiereds.net>
|
Jeff Layton <jlayton@kernel.org> <jlayton@poochiereds.net>
|
||||||
Jeff Layton <jlayton@kernel.org> <jlayton@primarydata.com>
|
Jeff Layton <jlayton@kernel.org> <jlayton@primarydata.com>
|
||||||
Jeff Layton <jlayton@kernel.org> <jlayton@redhat.com>
|
Jeff Layton <jlayton@kernel.org> <jlayton@redhat.com>
|
||||||
Jens Axboe <axboe@suse.de>
|
Jens Axboe <axboe@kernel.dk> <axboe@suse.de>
|
||||||
|
Jens Axboe <axboe@kernel.dk> <jens.axboe@oracle.com>
|
||||||
|
Jens Axboe <axboe@kernel.dk> <axboe@fb.com>
|
||||||
|
Jens Axboe <axboe@kernel.dk> <axboe@meta.com>
|
||||||
Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
|
Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
|
||||||
Jernej Skrabec <jernej.skrabec@gmail.com> <jernej.skrabec@siol.net>
|
Jernej Skrabec <jernej.skrabec@gmail.com> <jernej.skrabec@siol.net>
|
||||||
Jessica Zhang <quic_jesszhan@quicinc.com> <jesszhan@codeaurora.org>
|
Jessica Zhang <quic_jesszhan@quicinc.com> <jesszhan@codeaurora.org>
|
||||||
|
@ -232,6 +235,8 @@ Johan Hovold <johan@kernel.org> <johan@hovoldconsulting.com>
|
||||||
John Crispin <john@phrozen.org> <blogic@openwrt.org>
|
John Crispin <john@phrozen.org> <blogic@openwrt.org>
|
||||||
John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
|
John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
|
||||||
John Stultz <johnstul@us.ibm.com>
|
John Stultz <johnstul@us.ibm.com>
|
||||||
|
<jon.toppins+linux@gmail.com> <jtoppins@cumulusnetworks.com>
|
||||||
|
<jon.toppins+linux@gmail.com> <jtoppins@redhat.com>
|
||||||
Jordan Crouse <jordan@cosmicpenguin.net> <jcrouse@codeaurora.org>
|
Jordan Crouse <jordan@cosmicpenguin.net> <jcrouse@codeaurora.org>
|
||||||
<josh@joshtriplett.org> <josh@freedesktop.org>
|
<josh@joshtriplett.org> <josh@freedesktop.org>
|
||||||
<josh@joshtriplett.org> <josh@kernel.org>
|
<josh@joshtriplett.org> <josh@kernel.org>
|
||||||
|
@ -265,7 +270,9 @@ Krzysztof Kozlowski <krzk@kernel.org> <k.kozlowski@samsung.com>
|
||||||
Krzysztof Kozlowski <krzk@kernel.org> <krzysztof.kozlowski@canonical.com>
|
Krzysztof Kozlowski <krzk@kernel.org> <krzysztof.kozlowski@canonical.com>
|
||||||
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
|
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
|
||||||
Kuogee Hsieh <quic_khsieh@quicinc.com> <khsieh@codeaurora.org>
|
Kuogee Hsieh <quic_khsieh@quicinc.com> <khsieh@codeaurora.org>
|
||||||
|
Leonard Crestez <leonard.crestez@nxp.com> Leonard Crestez <cdleonard@gmail.com>
|
||||||
Leonardo Bras <leobras.c@gmail.com> <leonardo@linux.ibm.com>
|
Leonardo Bras <leobras.c@gmail.com> <leonardo@linux.ibm.com>
|
||||||
|
Leonard Göhrs <l.goehrs@pengutronix.de>
|
||||||
Leonid I Ananiev <leonid.i.ananiev@intel.com>
|
Leonid I Ananiev <leonid.i.ananiev@intel.com>
|
||||||
Leon Romanovsky <leon@kernel.org> <leon@leon.nu>
|
Leon Romanovsky <leon@kernel.org> <leon@leon.nu>
|
||||||
Leon Romanovsky <leon@kernel.org> <leonro@mellanox.com>
|
Leon Romanovsky <leon@kernel.org> <leonro@mellanox.com>
|
||||||
|
@ -295,6 +302,8 @@ Martin Kepplinger <martink@posteo.de> <martin.kepplinger@puri.sm>
|
||||||
Martin Kepplinger <martink@posteo.de> <martin.kepplinger@theobroma-systems.com>
|
Martin Kepplinger <martink@posteo.de> <martin.kepplinger@theobroma-systems.com>
|
||||||
Martyna Szapar-Mudlaw <martyna.szapar-mudlaw@linux.intel.com> <martyna.szapar-mudlaw@intel.com>
|
Martyna Szapar-Mudlaw <martyna.szapar-mudlaw@linux.intel.com> <martyna.szapar-mudlaw@intel.com>
|
||||||
Mathieu Othacehe <m.othacehe@gmail.com>
|
Mathieu Othacehe <m.othacehe@gmail.com>
|
||||||
|
Mat Martineau <martineau@kernel.org> <mathew.j.martineau@linux.intel.com>
|
||||||
|
Mat Martineau <martineau@kernel.org> <mathewm@codeaurora.org>
|
||||||
Matthew Wilcox <willy@infradead.org> <matthew.r.wilcox@intel.com>
|
Matthew Wilcox <willy@infradead.org> <matthew.r.wilcox@intel.com>
|
||||||
Matthew Wilcox <willy@infradead.org> <matthew@wil.cx>
|
Matthew Wilcox <willy@infradead.org> <matthew@wil.cx>
|
||||||
Matthew Wilcox <willy@infradead.org> <mawilcox@linuxonhyperv.com>
|
Matthew Wilcox <willy@infradead.org> <mawilcox@linuxonhyperv.com>
|
||||||
|
@ -322,6 +331,7 @@ Maxime Ripard <mripard@kernel.org> <maxime.ripard@bootlin.com>
|
||||||
Maxime Ripard <mripard@kernel.org> <maxime.ripard@free-electrons.com>
|
Maxime Ripard <mripard@kernel.org> <maxime.ripard@free-electrons.com>
|
||||||
Mayuresh Janorkar <mayur@ti.com>
|
Mayuresh Janorkar <mayur@ti.com>
|
||||||
Michael Buesch <m@bues.ch>
|
Michael Buesch <m@bues.ch>
|
||||||
|
Michal Simek <michal.simek@amd.com> <michal.simek@xilinx.com>
|
||||||
Michel Dänzer <michel@tungstengraphics.com>
|
Michel Dänzer <michel@tungstengraphics.com>
|
||||||
Michel Lespinasse <michel@lespinasse.org>
|
Michel Lespinasse <michel@lespinasse.org>
|
||||||
Michel Lespinasse <michel@lespinasse.org> <walken@google.com>
|
Michel Lespinasse <michel@lespinasse.org> <walken@google.com>
|
||||||
|
@ -354,6 +364,7 @@ Nicolas Pitre <nico@fluxnic.net> <nico@linaro.org>
|
||||||
Nicolas Saenz Julienne <nsaenz@kernel.org> <nsaenzjulienne@suse.de>
|
Nicolas Saenz Julienne <nsaenz@kernel.org> <nsaenzjulienne@suse.de>
|
||||||
Nicolas Saenz Julienne <nsaenz@kernel.org> <nsaenzjulienne@suse.com>
|
Nicolas Saenz Julienne <nsaenz@kernel.org> <nsaenzjulienne@suse.com>
|
||||||
Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
|
Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
|
||||||
|
Oleksandr Natalenko <oleksandr@natalenko.name> <oleksandr@redhat.com>
|
||||||
Oleksij Rempel <linux@rempel-privat.de> <bug-track@fisher-privat.net>
|
Oleksij Rempel <linux@rempel-privat.de> <bug-track@fisher-privat.net>
|
||||||
Oleksij Rempel <linux@rempel-privat.de> <external.Oleksij.Rempel@de.bosch.com>
|
Oleksij Rempel <linux@rempel-privat.de> <external.Oleksij.Rempel@de.bosch.com>
|
||||||
Oleksij Rempel <linux@rempel-privat.de> <fixed-term.Oleksij.Rempel@de.bosch.com>
|
Oleksij Rempel <linux@rempel-privat.de> <fixed-term.Oleksij.Rempel@de.bosch.com>
|
||||||
|
@ -369,6 +380,8 @@ Paul E. McKenney <paulmck@kernel.org> <paul.mckenney@linaro.org>
|
||||||
Paul E. McKenney <paulmck@kernel.org> <paulmck@linux.ibm.com>
|
Paul E. McKenney <paulmck@kernel.org> <paulmck@linux.ibm.com>
|
||||||
Paul E. McKenney <paulmck@kernel.org> <paulmck@linux.vnet.ibm.com>
|
Paul E. McKenney <paulmck@kernel.org> <paulmck@linux.vnet.ibm.com>
|
||||||
Paul E. McKenney <paulmck@kernel.org> <paulmck@us.ibm.com>
|
Paul E. McKenney <paulmck@kernel.org> <paulmck@us.ibm.com>
|
||||||
|
Paul Mackerras <paulus@ozlabs.org> <paulus@samba.org>
|
||||||
|
Paul Mackerras <paulus@ozlabs.org> <paulus@au1.ibm.com>
|
||||||
Peter A Jonsson <pj@ludd.ltu.se>
|
Peter A Jonsson <pj@ludd.ltu.se>
|
||||||
Peter Oruba <peter.oruba@amd.com>
|
Peter Oruba <peter.oruba@amd.com>
|
||||||
Peter Oruba <peter@oruba.de>
|
Peter Oruba <peter@oruba.de>
|
||||||
|
|
25
CREDITS
25
CREDITS
|
@ -229,6 +229,10 @@ S: University of Notre Dame
|
||||||
S: Notre Dame, Indiana
|
S: Notre Dame, Indiana
|
||||||
S: USA
|
S: USA
|
||||||
|
|
||||||
|
N: Kai Bankett
|
||||||
|
E: chaosman@ontika.net
|
||||||
|
D: QNX6 filesystem
|
||||||
|
|
||||||
N: Greg Banks
|
N: Greg Banks
|
||||||
E: gnb@alphalink.com.au
|
E: gnb@alphalink.com.au
|
||||||
D: IDT77105 ATM network driver
|
D: IDT77105 ATM network driver
|
||||||
|
@ -886,6 +890,10 @@ W: http://jdelvare.nerim.net/
|
||||||
D: Several hardware monitoring drivers
|
D: Several hardware monitoring drivers
|
||||||
S: France
|
S: France
|
||||||
|
|
||||||
|
N: Frank "Jedi/Sector One" Denis
|
||||||
|
E: j@pureftpd.org
|
||||||
|
D: QNX4 filesystem
|
||||||
|
|
||||||
N: Peter Denison
|
N: Peter Denison
|
||||||
E: peterd@pnd-pc.demon.co.uk
|
E: peterd@pnd-pc.demon.co.uk
|
||||||
W: http://www.pnd-pc.demon.co.uk/promise/
|
W: http://www.pnd-pc.demon.co.uk/promise/
|
||||||
|
@ -1259,6 +1267,10 @@ S: USA
|
||||||
N: Adam Fritzler
|
N: Adam Fritzler
|
||||||
E: mid@zigamorph.net
|
E: mid@zigamorph.net
|
||||||
|
|
||||||
|
N: Richard "Scuba" A. Frowijn
|
||||||
|
E: scuba@wxs.nl
|
||||||
|
D: QNX4 filesystem
|
||||||
|
|
||||||
N: Fernando Fuganti
|
N: Fernando Fuganti
|
||||||
E: fuganti@conectiva.com.br
|
E: fuganti@conectiva.com.br
|
||||||
E: fuganti@netbank.com.br
|
E: fuganti@netbank.com.br
|
||||||
|
@ -2218,6 +2230,10 @@ D: Digiboard PC/Xe and PC/Xi, Digiboard EPCA
|
||||||
D: NUMA support, Slab allocators, Page migration
|
D: NUMA support, Slab allocators, Page migration
|
||||||
D: Scalability, Time subsystem
|
D: Scalability, Time subsystem
|
||||||
|
|
||||||
|
N: Anders Larsen
|
||||||
|
E: al@alarsen.net
|
||||||
|
D: QNX4 filesystem
|
||||||
|
|
||||||
N: Paul Laufer
|
N: Paul Laufer
|
||||||
E: paul@laufernet.com
|
E: paul@laufernet.com
|
||||||
D: Soundblaster driver fixes, ISAPnP quirk
|
D: Soundblaster driver fixes, ISAPnP quirk
|
||||||
|
@ -2494,8 +2510,8 @@ D: XF86_8514
|
||||||
D: cfdisk (curses based disk partitioning program)
|
D: cfdisk (curses based disk partitioning program)
|
||||||
|
|
||||||
N: Mat Martineau
|
N: Mat Martineau
|
||||||
E: mat@martineau.name
|
E: martineau@kernel.org
|
||||||
D: MPTCP subsystem co-maintainer 2020-2023
|
D: MPTCP subsystem co-maintainer
|
||||||
D: Keyctl restricted keyring and Diffie-Hellman UAPI
|
D: Keyctl restricted keyring and Diffie-Hellman UAPI
|
||||||
D: Bluetooth L2CAP ERTM mode and AMP
|
D: Bluetooth L2CAP ERTM mode and AMP
|
||||||
S: USA
|
S: USA
|
||||||
|
@ -3459,6 +3475,11 @@ D: several improvements to system programs
|
||||||
S: Oldenburg
|
S: Oldenburg
|
||||||
S: Germany
|
S: Germany
|
||||||
|
|
||||||
|
N: Mathieu Poirier
|
||||||
|
E: mathieu.poirier@linaro.org
|
||||||
|
D: CoreSight kernel subsystem, Maintainer 2014-2022
|
||||||
|
D: Perf tool support for CoreSight
|
||||||
|
|
||||||
N: Robert Schwebel
|
N: Robert Schwebel
|
||||||
E: robert@schwebel.de
|
E: robert@schwebel.de
|
||||||
W: https://www.schwebel.de
|
W: https://www.schwebel.de
|
||||||
|
|
|
@ -4,6 +4,9 @@ KernelVersion: 2.6.12-rc2 (predates git)
|
||||||
Contact: selinux@vger.kernel.org
|
Contact: selinux@vger.kernel.org
|
||||||
Description:
|
Description:
|
||||||
|
|
||||||
|
REMOVAL UPDATE: The SELinux checkreqprot functionality was removed in
|
||||||
|
March 2023, the original deprecation notice is shown below.
|
||||||
|
|
||||||
The selinuxfs "checkreqprot" node allows SELinux to be configured
|
The selinuxfs "checkreqprot" node allows SELinux to be configured
|
||||||
to check the protection requested by userspace for mmap/mprotect
|
to check the protection requested by userspace for mmap/mprotect
|
||||||
calls instead of the actual protection applied by the kernel.
|
calls instead of the actual protection applied by the kernel.
|
|
@ -4,6 +4,9 @@ KernelVersion: 2.6.12-rc2 (predates git)
|
||||||
Contact: selinux@vger.kernel.org
|
Contact: selinux@vger.kernel.org
|
||||||
Description:
|
Description:
|
||||||
|
|
||||||
|
REMOVAL UPDATE: The SELinux runtime disable functionality was removed
|
||||||
|
in March 2023, the original deprecation notice is shown below.
|
||||||
|
|
||||||
The selinuxfs "disable" node allows SELinux to be disabled at runtime
|
The selinuxfs "disable" node allows SELinux to be disabled at runtime
|
||||||
prior to a policy being loaded into the kernel. If disabled via this
|
prior to a policy being loaded into the kernel. If disabled via this
|
||||||
mechanism, SELinux will remain disabled until the system is rebooted.
|
mechanism, SELinux will remain disabled until the system is rebooted.
|
|
@ -2,16 +2,17 @@ What: /sys/firmware/acpi/pm_profile
|
||||||
Date: 03-Nov-2011
|
Date: 03-Nov-2011
|
||||||
KernelVersion: v3.2
|
KernelVersion: v3.2
|
||||||
Contact: linux-acpi@vger.kernel.org
|
Contact: linux-acpi@vger.kernel.org
|
||||||
Description: The ACPI pm_profile sysfs interface exports the platform
|
Description: The ACPI pm_profile sysfs interface exposes the preferred
|
||||||
power management (and performance) requirement expectations
|
power management (and performance) profile of the platform
|
||||||
as provided by BIOS. The integer value is directly passed as
|
as provided in the ACPI FADT Preferred_PM_Profile field.
|
||||||
retrieved from the FADT ACPI table.
|
|
||||||
|
|
||||||
Values: For possible values see ACPI specification:
|
The integer value is directly passed as retrieved from the FADT.
|
||||||
5.2.9 Fixed ACPI Description Table (FADT)
|
|
||||||
Field: Preferred_PM_Profile
|
|
||||||
|
|
||||||
Currently these values are defined by spec:
|
Values: For the possible values refer to the Preferred_PM_Profile field
|
||||||
|
definition in Table 5.9 "FADT Format", Section 5.2.9 "Fixed ACPI
|
||||||
|
Description Table (FADT)" of the ACPI specification.
|
||||||
|
|
||||||
|
As of ACPI 6.5, the following values are defined:
|
||||||
|
|
||||||
== =================
|
== =================
|
||||||
0 Unspecified
|
0 Unspecified
|
||||||
|
@ -22,5 +23,6 @@ Values: For possible values see ACPI specification:
|
||||||
5 SOHO Server
|
5 SOHO Server
|
||||||
6 Appliance PC
|
6 Appliance PC
|
||||||
7 Performance Server
|
7 Performance Server
|
||||||
>7 Reserved
|
8 Tablet
|
||||||
|
>8 Reserved
|
||||||
== =================
|
== =================
|
||||||
|
|
|
@ -336,18 +336,11 @@ What: /sys/block/<disk>/queue/io_poll_delay
|
||||||
Date: November 2016
|
Date: November 2016
|
||||||
Contact: linux-block@vger.kernel.org
|
Contact: linux-block@vger.kernel.org
|
||||||
Description:
|
Description:
|
||||||
[RW] If polling is enabled, this controls what kind of polling
|
[RW] This was used to control what kind of polling will be
|
||||||
will be performed. It defaults to -1, which is classic polling.
|
performed. It is now fixed to -1, which is classic polling.
|
||||||
In this mode, the CPU will repeatedly ask for completions
|
In this mode, the CPU will repeatedly ask for completions
|
||||||
without giving up any time. If set to 0, a hybrid polling mode
|
without giving up any time.
|
||||||
is used, where the kernel will attempt to make an educated guess
|
<deprecated>
|
||||||
at when the IO will complete. Based on this guess, the kernel
|
|
||||||
will put the process issuing IO to sleep for an amount of time,
|
|
||||||
before entering a classic poll loop. This mode might be a little
|
|
||||||
slower than pure classic polling, but it will be more efficient.
|
|
||||||
If set to a value larger than 0, the kernel will put the process
|
|
||||||
issuing IO to sleep for this amount of microseconds before
|
|
||||||
entering classic polling.
|
|
||||||
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/io_timeout
|
What: /sys/block/<disk>/queue/io_timeout
|
||||||
|
|
|
@ -136,6 +136,22 @@ Description: The last executed device administrative command's status/error.
|
||||||
Also last configuration error overloaded.
|
Also last configuration error overloaded.
|
||||||
Writing to it will clear the status.
|
Writing to it will clear the status.
|
||||||
|
|
||||||
|
What: /sys/bus/dsa/devices/dsa<m>/iaa_cap
|
||||||
|
Date: Sept 14, 2022
|
||||||
|
KernelVersion: 6.0.0
|
||||||
|
Contact: dmaengine@vger.kernel.org
|
||||||
|
Description: IAA (IAX) capability mask. Exported to user space for application
|
||||||
|
consumption. This attribute should only be visible on IAA devices
|
||||||
|
that are version 2 or later.
|
||||||
|
|
||||||
|
What: /sys/bus/dsa/devices/dsa<m>/event_log_size
|
||||||
|
Date: Sept 14, 2022
|
||||||
|
KernelVersion: 6.4.0
|
||||||
|
Contact: dmaengine@vger.kernel.org
|
||||||
|
Description: The event log size to be configured. Default is 64 entries and
|
||||||
|
occupies 4k size if the evl entry is 64 bytes. It's visible
|
||||||
|
only on platforms that support the capability.
|
||||||
|
|
||||||
What: /sys/bus/dsa/devices/wq<m>.<n>/block_on_fault
|
What: /sys/bus/dsa/devices/wq<m>.<n>/block_on_fault
|
||||||
Date: Oct 27, 2020
|
Date: Oct 27, 2020
|
||||||
KernelVersion: 5.11.0
|
KernelVersion: 5.11.0
|
||||||
|
@ -219,6 +235,16 @@ Contact: dmaengine@vger.kernel.org
|
||||||
Description: Indicate whether ATS disable is turned on for the workqueue.
|
Description: Indicate whether ATS disable is turned on for the workqueue.
|
||||||
0 indicates ATS is on, and 1 indicates ATS is off for the workqueue.
|
0 indicates ATS is on, and 1 indicates ATS is off for the workqueue.
|
||||||
|
|
||||||
|
What: /sys/bus/dsa/devices/wq<m>.<n>/prs_disable
|
||||||
|
Date: Sept 14, 2022
|
||||||
|
KernelVersion: 6.4.0
|
||||||
|
Contact: dmaengine@vger.kernel.org
|
||||||
|
Description: Controls whether PRS disable is turned on for the workqueue.
|
||||||
|
0 indicates PRS is on, and 1 indicates PRS is off for the
|
||||||
|
workqueue. This option overrides block_on_fault attribute
|
||||||
|
if set. It's visible only on platforms that support the
|
||||||
|
capability.
|
||||||
|
|
||||||
What: /sys/bus/dsa/devices/wq<m>.<n>/occupancy
|
What: /sys/bus/dsa/devices/wq<m>.<n>/occupancy
|
||||||
Date May 25, 2021
|
Date May 25, 2021
|
||||||
KernelVersion: 5.14.0
|
KernelVersion: 5.14.0
|
||||||
|
@ -302,3 +328,28 @@ Description: Allows control of the number of batch descriptors that can be
|
||||||
1 (1/2 of max value), 2 (1/4 of the max value), and 3 (1/8 of
|
1 (1/2 of max value), 2 (1/4 of the max value), and 3 (1/8 of
|
||||||
the max value). It's visible only on platforms that support
|
the max value). It's visible only on platforms that support
|
||||||
the capability.
|
the capability.
|
||||||
|
|
||||||
|
What: /sys/bus/dsa/devices/wq<m>.<n>/dsa<x>\!wq<m>.<n>/file<y>/cr_faults
|
||||||
|
Date: Sept 14, 2022
|
||||||
|
KernelVersion: 6.4.0
|
||||||
|
Contact: dmaengine@vger.kernel.org
|
||||||
|
Description: Show the number of Completion Record (CR) faults this application
|
||||||
|
has caused.
|
||||||
|
|
||||||
|
What: /sys/bus/dsa/devices/wq<m>.<n>/dsa<x>\!wq<m>.<n>/file<y>/cr_fault_failures
|
||||||
|
Date: Sept 14, 2022
|
||||||
|
KernelVersion: 6.4.0
|
||||||
|
Contact: dmaengine@vger.kernel.org
|
||||||
|
Description: Show the number of Completion Record (CR) faults failures that this
|
||||||
|
application has caused. The failure counter is incremented when the
|
||||||
|
driver cannot fault in the address for the CR. Typically this is caused
|
||||||
|
by a bad address programmed in the submitted descriptor or a malicious
|
||||||
|
submitter is using bad CR address on purpose.
|
||||||
|
|
||||||
|
What: /sys/bus/dsa/devices/wq<m>.<n>/dsa<x>\!wq<m>.<n>/file<y>/pid
|
||||||
|
Date: Sept 14, 2022
|
||||||
|
KernelVersion: 6.4.0
|
||||||
|
Contact: dmaengine@vger.kernel.org
|
||||||
|
Description: Show the process id of the application that opened the file. This is
|
||||||
|
helpful information for a monitor daemon that wants to kill the
|
||||||
|
application that opened the file.
|
||||||
|
|
|
@ -76,7 +76,7 @@ Date: Dec 2014
|
||||||
KernelVersion: 4.0
|
KernelVersion: 4.0
|
||||||
Description: Default camera terminal descriptors
|
Description: Default camera terminal descriptors
|
||||||
|
|
||||||
All attributes read only:
|
All attributes read only except bmControls, which is read/write:
|
||||||
|
|
||||||
======================== ====================================
|
======================== ====================================
|
||||||
bmControls bitmap specifying which controls are
|
bmControls bitmap specifying which controls are
|
||||||
|
@ -101,7 +101,7 @@ Date: Dec 2014
|
||||||
KernelVersion: 4.0
|
KernelVersion: 4.0
|
||||||
Description: Default processing unit descriptors
|
Description: Default processing unit descriptors
|
||||||
|
|
||||||
All attributes read only:
|
All attributes read only except bmControls, which is read/write:
|
||||||
|
|
||||||
=============== ========================================
|
=============== ========================================
|
||||||
iProcessing index of string descriptor
|
iProcessing index of string descriptor
|
||||||
|
|
35
Documentation/ABI/testing/debugfs-cxl
Normal file
35
Documentation/ABI/testing/debugfs-cxl
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
What: /sys/kernel/debug/cxl/memX/inject_poison
|
||||||
|
Date: April, 2023
|
||||||
|
KernelVersion: v6.4
|
||||||
|
Contact: linux-cxl@vger.kernel.org
|
||||||
|
Description:
|
||||||
|
(WO) When a Device Physical Address (DPA) is written to this
|
||||||
|
attribute, the memdev driver sends an inject poison command to
|
||||||
|
the device for the specified address. The DPA must be 64-byte
|
||||||
|
aligned and the length of the injected poison is 64-bytes. If
|
||||||
|
successful, the device returns poison when the address is
|
||||||
|
accessed through the CXL.mem bus. Injecting poison adds the
|
||||||
|
address to the device's Poison List and the error source is set
|
||||||
|
to Injected. In addition, the device adds a poison creation
|
||||||
|
event to its internal Informational Event log, updates the
|
||||||
|
Event Status register, and if configured, interrupts the host.
|
||||||
|
It is not an error to inject poison into an address that
|
||||||
|
already has poison present and no error is returned. The
|
||||||
|
inject_poison attribute is only visible for devices supporting
|
||||||
|
the capability.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/kernel/debug/memX/clear_poison
|
||||||
|
Date: April, 2023
|
||||||
|
KernelVersion: v6.4
|
||||||
|
Contact: linux-cxl@vger.kernel.org
|
||||||
|
Description:
|
||||||
|
(WO) When a Device Physical Address (DPA) is written to this
|
||||||
|
attribute, the memdev driver sends a clear poison command to
|
||||||
|
the device for the specified address. Clearing poison removes
|
||||||
|
the address from the device's Poison List and writes 0 (zero)
|
||||||
|
for 64 bytes starting at address. It is not an error to clear
|
||||||
|
poison from an address that does not have poison set. If the
|
||||||
|
device cannot clear poison from the address, -ENXIO is returned.
|
||||||
|
The clear_poison attribute is only visible for devices
|
||||||
|
supporting the capability.
|
56
Documentation/ABI/testing/sysfs-bus-cdx
Normal file
56
Documentation/ABI/testing/sysfs-bus-cdx
Normal file
|
@ -0,0 +1,56 @@
|
||||||
|
What: /sys/bus/cdx/rescan
|
||||||
|
Date: March 2023
|
||||||
|
Contact: nipun.gupta@amd.com
|
||||||
|
Description:
|
||||||
|
Writing y/1/on to this file will cause rescan of the bus
|
||||||
|
and devices on the CDX bus. Any new devices are scanned and
|
||||||
|
added to the list of Linux devices and any devices removed are
|
||||||
|
also deleted from Linux.
|
||||||
|
|
||||||
|
For example::
|
||||||
|
|
||||||
|
# echo 1 > /sys/bus/cdx/rescan
|
||||||
|
|
||||||
|
What: /sys/bus/cdx/devices/.../vendor
|
||||||
|
Date: March 2023
|
||||||
|
Contact: nipun.gupta@amd.com
|
||||||
|
Description:
|
||||||
|
Vendor ID for this CDX device, in hexadecimal. Vendor ID is
|
||||||
|
16 bit identifier which is specific to the device manufacturer.
|
||||||
|
Combination of Vendor ID and Device ID identifies a device.
|
||||||
|
|
||||||
|
What: /sys/bus/cdx/devices/.../device
|
||||||
|
Date: March 2023
|
||||||
|
Contact: nipun.gupta@amd.com
|
||||||
|
Description:
|
||||||
|
Device ID for this CDX device, in hexadecimal. Device ID is
|
||||||
|
16 bit identifier to identify a device type within the range
|
||||||
|
of a device manufacturer.
|
||||||
|
Combination of Vendor ID and Device ID identifies a device.
|
||||||
|
|
||||||
|
What: /sys/bus/cdx/devices/.../reset
|
||||||
|
Date: March 2023
|
||||||
|
Contact: nipun.gupta@amd.com
|
||||||
|
Description:
|
||||||
|
Writing y/1/on to this file resets the CDX device.
|
||||||
|
On resetting the device, the corresponding driver is notified
|
||||||
|
twice, once before the device is being reset, and again after
|
||||||
|
the reset has been complete.
|
||||||
|
|
||||||
|
For example::
|
||||||
|
|
||||||
|
# echo 1 > /sys/bus/cdx/.../reset
|
||||||
|
|
||||||
|
What: /sys/bus/cdx/devices/.../remove
|
||||||
|
Date: March 2023
|
||||||
|
Contact: tarak.reddy@amd.com
|
||||||
|
Description:
|
||||||
|
Writing y/1/on to this file removes the corresponding
|
||||||
|
device from the CDX bus. If the device is to be reconfigured
|
||||||
|
reconfigured in the Hardware, the device can be removed, so
|
||||||
|
that the device driver does not access the device while it is
|
||||||
|
being reconfigured.
|
||||||
|
|
||||||
|
For example::
|
||||||
|
|
||||||
|
# echo 1 > /sys/bus/cdx/devices/.../remove
|
|
@ -1,3 +1,33 @@
|
||||||
|
What: /sys/bus/counter/devices/counterX/cascade_counts_enable
|
||||||
|
KernelVersion: 6.4
|
||||||
|
Contact: linux-iio@vger.kernel.org
|
||||||
|
Description:
|
||||||
|
Indicates the cascading of Counts on Counter X.
|
||||||
|
|
||||||
|
Valid attribute values are boolean.
|
||||||
|
|
||||||
|
What: /sys/bus/counter/devices/counterX/external_input_phase_clock_select
|
||||||
|
KernelVersion: 6.4
|
||||||
|
Contact: linux-iio@vger.kernel.org
|
||||||
|
Description:
|
||||||
|
Selects the external clock pin for phase counting mode of
|
||||||
|
Counter X.
|
||||||
|
|
||||||
|
MTCLKA-MTCLKB:
|
||||||
|
MTCLKA and MTCLKB pins are selected for the external
|
||||||
|
phase clock.
|
||||||
|
|
||||||
|
MTCLKC-MTCLKD:
|
||||||
|
MTCLKC and MTCLKD pins are selected for the external
|
||||||
|
phase clock.
|
||||||
|
|
||||||
|
What: /sys/bus/counter/devices/counterX/external_input_phase_clock_select_available
|
||||||
|
KernelVersion: 6.4
|
||||||
|
Contact: linux-iio@vger.kernel.org
|
||||||
|
Description:
|
||||||
|
Discrete set of available values for the respective device
|
||||||
|
configuration are listed in this file.
|
||||||
|
|
||||||
What: /sys/bus/counter/devices/counterX/countY/count
|
What: /sys/bus/counter/devices/counterX/countY/count
|
||||||
KernelVersion: 5.2
|
KernelVersion: 5.2
|
||||||
Contact: linux-iio@vger.kernel.org
|
Contact: linux-iio@vger.kernel.org
|
||||||
|
@ -215,6 +245,8 @@ Contact: linux-iio@vger.kernel.org
|
||||||
Description:
|
Description:
|
||||||
This attribute indicates the number of overflows of count Y.
|
This attribute indicates the number of overflows of count Y.
|
||||||
|
|
||||||
|
What: /sys/bus/counter/devices/counterX/cascade_counts_enable_component_id
|
||||||
|
What: /sys/bus/counter/devices/counterX/external_input_phase_clock_select_component_id
|
||||||
What: /sys/bus/counter/devices/counterX/countY/capture_component_id
|
What: /sys/bus/counter/devices/counterX/countY/capture_component_id
|
||||||
What: /sys/bus/counter/devices/counterX/countY/ceiling_component_id
|
What: /sys/bus/counter/devices/counterX/countY/ceiling_component_id
|
||||||
What: /sys/bus/counter/devices/counterX/countY/floor_component_id
|
What: /sys/bus/counter/devices/counterX/countY/floor_component_id
|
||||||
|
|
|
@ -415,3 +415,17 @@ Description:
|
||||||
1), and checks that the hardware accepts the commit request.
|
1), and checks that the hardware accepts the commit request.
|
||||||
Reading this value indicates whether the region is committed or
|
Reading this value indicates whether the region is committed or
|
||||||
not.
|
not.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/bus/cxl/devices/memX/trigger_poison_list
|
||||||
|
Date: April, 2023
|
||||||
|
KernelVersion: v6.4
|
||||||
|
Contact: linux-cxl@vger.kernel.org
|
||||||
|
Description:
|
||||||
|
(WO) When a boolean 'true' is written to this attribute the
|
||||||
|
memdev driver retrieves the poison list from the device. The
|
||||||
|
list consists of addresses that are poisoned, or would result
|
||||||
|
in poison if accessed, and the source of the poison. This
|
||||||
|
attribute is only visible for devices supporting the
|
||||||
|
capability. The retrieved errors are logged as kernel
|
||||||
|
events when cxl_poison event tracing is enabled.
|
||||||
|
|
|
@ -1807,8 +1807,8 @@ What: /sys/bus/iio/devices/iio:deviceX/out_resistanceX_raw
|
||||||
KernelVersion: 4.3
|
KernelVersion: 4.3
|
||||||
Contact: linux-iio@vger.kernel.org
|
Contact: linux-iio@vger.kernel.org
|
||||||
Description:
|
Description:
|
||||||
Raw (unscaled no offset etc.) resistance reading that can be processed
|
Raw (unscaled no offset etc.) resistance reading.
|
||||||
into an ohm value.
|
Units after application of scale and offset are ohms.
|
||||||
|
|
||||||
What: /sys/bus/iio/devices/iio:deviceX/heater_enable
|
What: /sys/bus/iio/devices/iio:deviceX/heater_enable
|
||||||
KernelVersion: 4.1.0
|
KernelVersion: 4.1.0
|
||||||
|
@ -1894,8 +1894,9 @@ What: /sys/bus/iio/devices/iio:deviceX/in_electricalconductivity_raw
|
||||||
KernelVersion: 4.8
|
KernelVersion: 4.8
|
||||||
Contact: linux-iio@vger.kernel.org
|
Contact: linux-iio@vger.kernel.org
|
||||||
Description:
|
Description:
|
||||||
Raw (unscaled no offset etc.) electric conductivity reading that
|
Raw (unscaled no offset etc.) electric conductivity reading.
|
||||||
can be processed to siemens per meter.
|
Units after application of scale and offset are siemens per
|
||||||
|
meter.
|
||||||
|
|
||||||
What: /sys/bus/iio/devices/iio:deviceX/in_countY_raw
|
What: /sys/bus/iio/devices/iio:deviceX/in_countY_raw
|
||||||
KernelVersion: 4.10
|
KernelVersion: 4.10
|
||||||
|
@ -1951,8 +1952,8 @@ What: /sys/bus/iio/devices/iio:deviceX/in_phaseY_raw
|
||||||
KernelVersion: 4.18
|
KernelVersion: 4.18
|
||||||
Contact: linux-iio@vger.kernel.org
|
Contact: linux-iio@vger.kernel.org
|
||||||
Description:
|
Description:
|
||||||
Raw (unscaled) phase difference reading from channel Y
|
Raw (unscaled) phase difference reading from channel Y.
|
||||||
that can be processed to radians.
|
Units after application of scale and offset are radians.
|
||||||
|
|
||||||
What: /sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm1_input
|
What: /sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm1_input
|
||||||
What: /sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm1_input
|
What: /sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm1_input
|
||||||
|
|
|
@ -23,3 +23,55 @@ Description:
|
||||||
Reading this attribute gives the state of the DbC. It
|
Reading this attribute gives the state of the DbC. It
|
||||||
can be one of the following states: disabled, enabled,
|
can be one of the following states: disabled, enabled,
|
||||||
initialized, connected, configured and stalled.
|
initialized, connected, configured and stalled.
|
||||||
|
|
||||||
|
What: /sys/bus/pci/drivers/xhci_hcd/.../dbc_idVendor
|
||||||
|
Date: March 2023
|
||||||
|
Contact: Mathias Nyman <mathias.nyman@linux.intel.com>
|
||||||
|
Description:
|
||||||
|
This dbc_idVendor attribute lets us change the idVendor field
|
||||||
|
presented in the USB device descriptor by this xhci debug
|
||||||
|
device.
|
||||||
|
Value can only be changed while debug capability (DbC) is in
|
||||||
|
disabled state to prevent USB device descriptor change while
|
||||||
|
connected to a USB host.
|
||||||
|
The default value is 0x1d6b (Linux Foundation).
|
||||||
|
It can be any 16-bit integer.
|
||||||
|
|
||||||
|
What: /sys/bus/pci/drivers/xhci_hcd/.../dbc_idProduct
|
||||||
|
Date: March 2023
|
||||||
|
Contact: Mathias Nyman <mathias.nyman@linux.intel.com>
|
||||||
|
Description:
|
||||||
|
This dbc_idProduct attribute lets us change the idProduct field
|
||||||
|
presented in the USB device descriptor by this xhci debug
|
||||||
|
device.
|
||||||
|
Value can only be changed while debug capability (DbC) is in
|
||||||
|
disabled state to prevent USB device descriptor change while
|
||||||
|
connected to a USB host.
|
||||||
|
The default value is 0x0010. It can be any 16-bit integer.
|
||||||
|
|
||||||
|
What: /sys/bus/pci/drivers/xhci_hcd/.../dbc_bcdDevice
|
||||||
|
Date: March 2023
|
||||||
|
Contact: Mathias Nyman <mathias.nyman@linux.intel.com>
|
||||||
|
Description:
|
||||||
|
This dbc_bcdDevice attribute lets us change the bcdDevice field
|
||||||
|
presented in the USB device descriptor by this xhci debug
|
||||||
|
device.
|
||||||
|
Value can only be changed while debug capability (DbC) is in
|
||||||
|
disabled state to prevent USB device descriptor change while
|
||||||
|
connected to a USB host.
|
||||||
|
The default value is 0x0010. (device rev 0.10)
|
||||||
|
It can be any 16-bit integer.
|
||||||
|
|
||||||
|
What: /sys/bus/pci/drivers/xhci_hcd/.../dbc_bInterfaceProtocol
|
||||||
|
Date: March 2023
|
||||||
|
Contact: Mathias Nyman <mathias.nyman@linux.intel.com>
|
||||||
|
Description:
|
||||||
|
This attribute lets us change the bInterfaceProtocol field
|
||||||
|
presented in the USB Interface descriptor by the xhci debug
|
||||||
|
device.
|
||||||
|
Value can only be changed while debug capability (DbC) is in
|
||||||
|
disabled state to prevent USB descriptor change while
|
||||||
|
connected to a USB host.
|
||||||
|
The default value is 1 (GNU Remote Debug command).
|
||||||
|
Other permissible value is 0 which is for vendor defined debug
|
||||||
|
target.
|
||||||
|
|
|
@ -234,8 +234,8 @@ Description:
|
||||||
For details, see section `5.10 RAS Internal Error Register Definitions,
|
For details, see section `5.10 RAS Internal Error Register Definitions,
|
||||||
Altra Family Soc BMC Interface Specification`.
|
Altra Family Soc BMC Interface Specification`.
|
||||||
|
|
||||||
What: /sys/bus/platform/devices/smpro-errmon.*/event_[vrd_warn_fault|vrd_hot|dimm_hot]
|
What: /sys/bus/platform/devices/smpro-errmon.*/event_[vrd_warn_fault|vrd_hot|dimm_hot|dimm_2x_refresh]
|
||||||
KernelVersion: 6.1
|
KernelVersion: 6.1 (event_[vrd_warn_fault|vrd_hot|dimm_hot]), 6.4 (event_dimm_2x_refresh)
|
||||||
Contact: Quan Nguyen <quan@os.amperecomputing.com>
|
Contact: Quan Nguyen <quan@os.amperecomputing.com>
|
||||||
Description:
|
Description:
|
||||||
(RO) Contains the detail information in case of VRD/DIMM warning/hot events
|
(RO) Contains the detail information in case of VRD/DIMM warning/hot events
|
||||||
|
@ -258,8 +258,21 @@ Description:
|
||||||
+---------------+---------------------------------------------------------------+---------------------+
|
+---------------+---------------------------------------------------------------+---------------------+
|
||||||
| DIMM HOT | /sys/bus/platform/devices/smpro-errmon.*/event_dimm_hot | DIMM Hot |
|
| DIMM HOT | /sys/bus/platform/devices/smpro-errmon.*/event_dimm_hot | DIMM Hot |
|
||||||
+---------------+---------------------------------------------------------------+---------------------+
|
+---------------+---------------------------------------------------------------+---------------------+
|
||||||
|
| DIMM 2X | /sys/bus/platform/devices/smpro-errmon.*/event_dimm_2x_refresh| DIMM 2x refresh rate|
|
||||||
|
| REFRESH RATE | | event in high temp |
|
||||||
|
+---------------+---------------------------------------------------------------+---------------------+
|
||||||
|
|
||||||
For more details, see section `5.7 GPI Status Registers,
|
For more details, see section `5.7 GPI Status Registers and 5.9 Memory Error Register Definitions,
|
||||||
|
Altra Family Soc BMC Interface Specification`.
|
||||||
|
|
||||||
|
What: /sys/bus/platform/devices/smpro-errmon.*/event_dimm[0-15]_syndrome
|
||||||
|
KernelVersion: 6.4
|
||||||
|
Contact: Quan Nguyen <quan@os.amperecomputing.com>
|
||||||
|
Description:
|
||||||
|
(RO) The sysfs returns the 2-byte DIMM failure syndrome data for slot
|
||||||
|
0-15 if it failed to initialize.
|
||||||
|
|
||||||
|
For more details, see section `5.11 Boot Stage Register Definitions,
|
||||||
Altra Family Soc BMC Interface Specification`.
|
Altra Family Soc BMC Interface Specification`.
|
||||||
|
|
||||||
What: /sys/bus/platform/devices/smpro-misc.*/boot_progress
|
What: /sys/bus/platform/devices/smpro-misc.*/boot_progress
|
||||||
|
|
|
@ -166,6 +166,23 @@ Description:
|
||||||
The file will be present for all speeds of USB devices, and will
|
The file will be present for all speeds of USB devices, and will
|
||||||
always read "no" for USB 1.1 and USB 2.0 devices.
|
always read "no" for USB 1.1 and USB 2.0 devices.
|
||||||
|
|
||||||
|
What: /sys/bus/usb/devices/<INTERFACE>/wireless_status
|
||||||
|
Date: February 2023
|
||||||
|
Contact: Bastien Nocera <hadess@hadess.net>
|
||||||
|
Description:
|
||||||
|
Some USB devices use a USB receiver dongle to communicate
|
||||||
|
wirelessly with their device using proprietary protocols. This
|
||||||
|
attribute allows user-space to know whether the device is
|
||||||
|
connected to its receiver dongle, and, for example, consider
|
||||||
|
the device to be absent when choosing whether to show the
|
||||||
|
device's battery, show a headset in a list of outputs, or show
|
||||||
|
an on-screen keyboard if the only wireless keyboard is
|
||||||
|
turned off.
|
||||||
|
This attribute is not to be used to replace protocol specific
|
||||||
|
statuses available in WWAN, WLAN/Wi-Fi, Bluetooth, etc.
|
||||||
|
If the device does not use a receiver dongle with a wireless
|
||||||
|
device, then this attribute will not exist.
|
||||||
|
|
||||||
What: /sys/bus/usb/devices/.../<hub_interface>/port<X>
|
What: /sys/bus/usb/devices/.../<hub_interface>/port<X>
|
||||||
Date: August 2012
|
Date: August 2012
|
||||||
Contact: Lan Tianyu <tianyu.lan@intel.com>
|
Contact: Lan Tianyu <tianyu.lan@intel.com>
|
||||||
|
|
|
@ -21,4 +21,9 @@ Description:
|
||||||
at the time the kernel starts are not affected or limited in
|
at the time the kernel starts are not affected or limited in
|
||||||
any way by sync_state() callbacks.
|
any way by sync_state() callbacks.
|
||||||
|
|
||||||
|
Writing "1" to this file will force a call to the device's
|
||||||
|
sync_state() function if it hasn't been called already. The
|
||||||
|
sync_state() call happens independent of the state of the
|
||||||
|
consumer devices.
|
||||||
|
|
||||||
|
|
||||||
|
|
73
Documentation/ABI/testing/sysfs-driver-zynqmp-fpga
Normal file
73
Documentation/ABI/testing/sysfs-driver-zynqmp-fpga
Normal file
|
@ -0,0 +1,73 @@
|
||||||
|
What: /sys/bus/platform/drivers/zynqmp_fpga_manager/firmware:zynqmp-firmware:pcap/status
|
||||||
|
Date: February 2023
|
||||||
|
KernelVersion: 6.4
|
||||||
|
Contact: Nava kishore Manne <nava.kishore.manne@amd.com>
|
||||||
|
Description: (RO) Read fpga status.
|
||||||
|
Read returns a hexadecimal value that tells the current status
|
||||||
|
of the FPGA device. Each bit position in the status value is
|
||||||
|
described Below(see ug570 chapter 9).
|
||||||
|
https://docs.xilinx.com/v/u/en-US/ug570-ultrascale-configuration
|
||||||
|
|
||||||
|
====================== ==============================================
|
||||||
|
BIT(0) 0: No CRC error
|
||||||
|
1: CRC error
|
||||||
|
|
||||||
|
BIT(1) 0: Decryptor security not set
|
||||||
|
1: Decryptor security set
|
||||||
|
|
||||||
|
BIT(2) 0: MMCMs/PLLs are not locked
|
||||||
|
1: MMCMs/PLLs are locked
|
||||||
|
|
||||||
|
BIT(3) 0: DCI not matched
|
||||||
|
1: DCI matched
|
||||||
|
|
||||||
|
BIT(4) 0: Start-up sequence has not finished
|
||||||
|
1: Start-up sequence has finished
|
||||||
|
|
||||||
|
BIT(5) 0: All I/Os are placed in High-Z state
|
||||||
|
1: All I/Os behave as configured
|
||||||
|
|
||||||
|
BIT(6) 0: Flip-flops and block RAM are write disabled
|
||||||
|
1: Flip-flops and block RAM are write enabled
|
||||||
|
|
||||||
|
BIT(7) 0: GHIGH_B_STATUS asserted
|
||||||
|
1: GHIGH_B_STATUS deasserted
|
||||||
|
|
||||||
|
BIT(8) to BIT(10) Status of the mode pins
|
||||||
|
|
||||||
|
BIT(11) 0: Initialization has not finished
|
||||||
|
1: Initialization finished
|
||||||
|
|
||||||
|
BIT(12) Value on INIT_B_PIN pin
|
||||||
|
|
||||||
|
BIT(13) 0: Signal not released
|
||||||
|
1: Signal released
|
||||||
|
|
||||||
|
BIT(14) Value on DONE_PIN pin.
|
||||||
|
|
||||||
|
BIT(15) 0: No IDCODE_ERROR
|
||||||
|
1: IDCODE_ERROR
|
||||||
|
|
||||||
|
BIT(16) 0: No SECURITY_ERROR
|
||||||
|
1: SECURITY_ERROR
|
||||||
|
|
||||||
|
BIT(17) System Monitor over-temperature if set
|
||||||
|
|
||||||
|
BIT(18) to BIT(20) Start-up state machine (0 to 7)
|
||||||
|
Phase 0 = 000
|
||||||
|
Phase 1 = 001
|
||||||
|
Phase 2 = 011
|
||||||
|
Phase 3 = 010
|
||||||
|
Phase 4 = 110
|
||||||
|
Phase 5 = 111
|
||||||
|
Phase 6 = 101
|
||||||
|
Phase 7 = 100
|
||||||
|
|
||||||
|
BIT(25) to BIT(26) Indicates the detected bus width
|
||||||
|
00 = x1
|
||||||
|
01 = x8
|
||||||
|
10 = x16
|
||||||
|
11 = x32
|
||||||
|
====================== ==============================================
|
||||||
|
|
||||||
|
The other bits are reserved.
|
|
@ -190,12 +190,6 @@ Description: Controls the memory footprint used by free nids and cached
|
||||||
nat entries. By default, 1 is set, which indicates
|
nat entries. By default, 1 is set, which indicates
|
||||||
10 MB / 1 GB RAM.
|
10 MB / 1 GB RAM.
|
||||||
|
|
||||||
What: /sys/fs/f2fs/<disk>/batched_trim_sections
|
|
||||||
Date: February 2015
|
|
||||||
Contact: "Jaegeuk Kim" <jaegeuk@kernel.org>
|
|
||||||
Description: Controls the trimming rate in batch mode.
|
|
||||||
<deprecated>
|
|
||||||
|
|
||||||
What: /sys/fs/f2fs/<disk>/cp_interval
|
What: /sys/fs/f2fs/<disk>/cp_interval
|
||||||
Date: October 2015
|
Date: October 2015
|
||||||
Contact: "Jaegeuk Kim" <jaegeuk@kernel.org>
|
Contact: "Jaegeuk Kim" <jaegeuk@kernel.org>
|
||||||
|
@ -729,3 +723,20 @@ What: /sys/fs/f2fs/<disk>/last_age_weight
|
||||||
Date: January 2023
|
Date: January 2023
|
||||||
Contact: "Ping Xiong" <xiongping1@xiaomi.com>
|
Contact: "Ping Xiong" <xiongping1@xiaomi.com>
|
||||||
Description: When DATA SEPARATION is on, it controls the weight of last data block age.
|
Description: When DATA SEPARATION is on, it controls the weight of last data block age.
|
||||||
|
|
||||||
|
What: /sys/fs/f2fs/<disk>/compress_watermark
|
||||||
|
Date: February 2023
|
||||||
|
Contact: "Yangtao Li" <frank.li@vivo.com>
|
||||||
|
Description: When compress cache is on, it controls free memory watermark
|
||||||
|
in order to limit caching compress page. If free memory is lower
|
||||||
|
than watermark, then deny caching compress page. The value should be in
|
||||||
|
range of (0, 100], by default it was initialized as 20(%).
|
||||||
|
|
||||||
|
What: /sys/fs/f2fs/<disk>/compress_percent
|
||||||
|
Date: February 2023
|
||||||
|
Contact: "Yangtao Li" <frank.li@vivo.com>
|
||||||
|
Description: When compress cache is on, it controls cached page
|
||||||
|
percent(compress pages / free_ram) in order to limit caching compress page.
|
||||||
|
If cached page percent exceed threshold, then deny caching compress page.
|
||||||
|
The value should be in range of (0, 100], by default it was initialized
|
||||||
|
as 20(%).
|
||||||
|
|
|
@ -53,7 +53,6 @@ Description: /sys/kernel/iommu_groups/<grp_id>/type shows the type of default
|
||||||
|
|
||||||
The default domain type of a group may be modified only when
|
The default domain type of a group may be modified only when
|
||||||
|
|
||||||
- The group has only one device.
|
|
||||||
- The device in the group is not bound to any device driver.
|
- The device in the group is not bound to any device driver.
|
||||||
So, the users must unbind the appropriate driver before
|
So, the users must unbind the appropriate driver before
|
||||||
changing the default domain type.
|
changing the default domain type.
|
||||||
|
|
|
@ -51,3 +51,11 @@ Description: Control merging pages across different NUMA nodes.
|
||||||
|
|
||||||
When it is set to 0 only pages from the same node are merged,
|
When it is set to 0 only pages from the same node are merged,
|
||||||
otherwise pages from all nodes can be merged together (default).
|
otherwise pages from all nodes can be merged together (default).
|
||||||
|
|
||||||
|
What: /sys/kernel/mm/ksm/general_profit
|
||||||
|
Date: April 2023
|
||||||
|
KernelVersion: 6.4
|
||||||
|
Contact: Linux memory management mailing list <linux-mm@kvack.org>
|
||||||
|
Description: Measure how effective KSM is.
|
||||||
|
general_profit: how effective is KSM. The formula for the
|
||||||
|
calculation is in Documentation/admin-guide/mm/ksm.rst.
|
||||||
|
|
|
@ -1,3 +1,7 @@
|
||||||
|
Device instance to test mapping
|
||||||
|
intel_ifs_0 -> Scan Test
|
||||||
|
intel_ifs_1 -> Array BIST test
|
||||||
|
|
||||||
What: /sys/devices/virtual/misc/intel_ifs_<N>/run_test
|
What: /sys/devices/virtual/misc/intel_ifs_<N>/run_test
|
||||||
Date: Nov 16 2022
|
Date: Nov 16 2022
|
||||||
KernelVersion: 6.2
|
KernelVersion: 6.2
|
||||||
|
@ -8,6 +12,7 @@ Description: Write <cpu#> to trigger IFS test for one online core.
|
||||||
completes the test for the core containing that thread.
|
completes the test for the core containing that thread.
|
||||||
Example: to test the core containing cpu5: echo 5 >
|
Example: to test the core containing cpu5: echo 5 >
|
||||||
/sys/devices/virtual/misc/intel_ifs_<N>/run_test
|
/sys/devices/virtual/misc/intel_ifs_<N>/run_test
|
||||||
|
Devices: all
|
||||||
|
|
||||||
What: /sys/devices/virtual/misc/intel_ifs_<N>/status
|
What: /sys/devices/virtual/misc/intel_ifs_<N>/status
|
||||||
Date: Nov 16 2022
|
Date: Nov 16 2022
|
||||||
|
@ -15,21 +20,25 @@ KernelVersion: 6.2
|
||||||
Contact: "Jithu Joseph" <jithu.joseph@intel.com>
|
Contact: "Jithu Joseph" <jithu.joseph@intel.com>
|
||||||
Description: The status of the last test. It can be one of "pass", "fail"
|
Description: The status of the last test. It can be one of "pass", "fail"
|
||||||
or "untested".
|
or "untested".
|
||||||
|
Devices: all
|
||||||
|
|
||||||
What: /sys/devices/virtual/misc/intel_ifs_<N>/details
|
What: /sys/devices/virtual/misc/intel_ifs_<N>/details
|
||||||
Date: Nov 16 2022
|
Date: Nov 16 2022
|
||||||
KernelVersion: 6.2
|
KernelVersion: 6.2
|
||||||
Contact: "Jithu Joseph" <jithu.joseph@intel.com>
|
Contact: "Jithu Joseph" <jithu.joseph@intel.com>
|
||||||
Description: Additional information regarding the last test. The details file reports
|
Description: Additional information regarding the last test. The details file reports
|
||||||
the hex value of the SCAN_STATUS MSR. Note that the error_code field
|
the hex value of the STATUS MSR for this test. Note that the error_code field
|
||||||
may contain driver defined software code not defined in the Intel SDM.
|
may contain driver defined software code not defined in the Intel SDM.
|
||||||
|
Devices: all
|
||||||
|
|
||||||
What: /sys/devices/virtual/misc/intel_ifs_<N>/image_version
|
What: /sys/devices/virtual/misc/intel_ifs_<N>/image_version
|
||||||
Date: Nov 16 2022
|
Date: Nov 16 2022
|
||||||
KernelVersion: 6.2
|
KernelVersion: 6.2
|
||||||
Contact: "Jithu Joseph" <jithu.joseph@intel.com>
|
Contact: "Jithu Joseph" <jithu.joseph@intel.com>
|
||||||
Description: Version (hexadecimal) of loaded IFS binary image. If no scan image
|
Description: Version (hexadecimal) of loaded IFS test image. If no test image
|
||||||
is loaded reports "none".
|
is loaded reports "none". Only present for device instances where a test image
|
||||||
|
is applicable.
|
||||||
|
Devices: intel_ifs_0
|
||||||
|
|
||||||
What: /sys/devices/virtual/misc/intel_ifs_<N>/current_batch
|
What: /sys/devices/virtual/misc/intel_ifs_<N>/current_batch
|
||||||
Date: Nov 16 2022
|
Date: Nov 16 2022
|
||||||
|
@ -39,3 +48,5 @@ Description: Write a number less than or equal to 0xff to load an IFS test image
|
||||||
The number written treated as the 2 digit suffix in the following file name:
|
The number written treated as the 2 digit suffix in the following file name:
|
||||||
/lib/firmware/intel/ifs_<N>/ff-mm-ss-02x.scan
|
/lib/firmware/intel/ifs_<N>/ff-mm-ss-02x.scan
|
||||||
Reading the file will provide the suffix of the currently loaded IFS test image.
|
Reading the file will provide the suffix of the currently loaded IFS test image.
|
||||||
|
This file is present only for device instances where a test image is applicable.
|
||||||
|
Devices: intel_ifs_0
|
||||||
|
|
|
@ -68,3 +68,10 @@ Description:
|
||||||
Wasted burnt and invalid
|
Wasted burnt and invalid
|
||||||
Invalid not burnt but marked as valid (error state).
|
Invalid not burnt but marked as valid (error state).
|
||||||
======= ===============================================
|
======= ===============================================
|
||||||
|
|
||||||
|
What: /sys/bus/platform/devices/MLNXBF04:00/bootfifo
|
||||||
|
Date: Apr 2023
|
||||||
|
KernelVersion: 6.4
|
||||||
|
Contact: "Liming Sun <limings@nvidia.com>"
|
||||||
|
Description:
|
||||||
|
The file used to access the BlueField boot fifo.
|
||||||
|
|
|
@ -413,6 +413,35 @@ Description:
|
||||||
The /sys/power/suspend_stats/last_failed_step file contains
|
The /sys/power/suspend_stats/last_failed_step file contains
|
||||||
the last failed step in the suspend/resume path.
|
the last failed step in the suspend/resume path.
|
||||||
|
|
||||||
|
What: /sys/power/suspend_stats/last_hw_sleep
|
||||||
|
Date: June 2023
|
||||||
|
Contact: Mario Limonciello <mario.limonciello@amd.com>
|
||||||
|
Description:
|
||||||
|
The /sys/power/suspend_stats/last_hw_sleep file
|
||||||
|
contains the duration of time spent in a hardware sleep
|
||||||
|
state in the most recent system suspend-resume cycle.
|
||||||
|
This number is measured in microseconds.
|
||||||
|
|
||||||
|
What: /sys/power/suspend_stats/total_hw_sleep
|
||||||
|
Date: June 2023
|
||||||
|
Contact: Mario Limonciello <mario.limonciello@amd.com>
|
||||||
|
Description:
|
||||||
|
The /sys/power/suspend_stats/total_hw_sleep file
|
||||||
|
contains the aggregate of time spent in a hardware sleep
|
||||||
|
state since the kernel was booted. This number
|
||||||
|
is measured in microseconds.
|
||||||
|
|
||||||
|
What: /sys/power/suspend_stats/max_hw_sleep
|
||||||
|
Date: June 2023
|
||||||
|
Contact: Mario Limonciello <mario.limonciello@amd.com>
|
||||||
|
Description:
|
||||||
|
The /sys/power/suspend_stats/max_hw_sleep file
|
||||||
|
contains the maximum amount of time that the hardware can
|
||||||
|
report for time spent in a hardware sleep state. When sleep
|
||||||
|
cycles are longer than this time, the values for
|
||||||
|
'total_hw_sleep' and 'last_hw_sleep' may not be accurate.
|
||||||
|
This number is measured in microseconds.
|
||||||
|
|
||||||
What: /sys/power/sync_on_suspend
|
What: /sys/power/sync_on_suspend
|
||||||
Date: October 2019
|
Date: October 2019
|
||||||
Contact: Jonas Meurer <jonas@freesources.org>
|
Contact: Jonas Meurer <jonas@freesources.org>
|
||||||
|
|
|
@ -418,7 +418,6 @@ That is, the recovery API only requires that:
|
||||||
- drivers/next/e100.c
|
- drivers/next/e100.c
|
||||||
- drivers/net/e1000
|
- drivers/net/e1000
|
||||||
- drivers/net/e1000e
|
- drivers/net/e1000e
|
||||||
- drivers/net/ixgb
|
|
||||||
- drivers/net/ixgbe
|
- drivers/net/ixgbe
|
||||||
- drivers/net/cxgb3
|
- drivers/net/cxgb3
|
||||||
- drivers/net/s2io.c
|
- drivers/net/s2io.c
|
||||||
|
|
|
@ -277,7 +277,7 @@ the following access functions:
|
||||||
|
|
||||||
Again, only one request in a given batch need actually carry out a
|
Again, only one request in a given batch need actually carry out a
|
||||||
grace-period operation, which means there must be an efficient way to
|
grace-period operation, which means there must be an efficient way to
|
||||||
identify which of many concurrent reqeusts will initiate the grace
|
identify which of many concurrent requests will initiate the grace
|
||||||
period, and that there be an efficient way for the remaining requests to
|
period, and that there be an efficient way for the remaining requests to
|
||||||
wait for that grace period to complete. However, that is the topic of
|
wait for that grace period to complete. However, that is the topic of
|
||||||
the next section.
|
the next section.
|
||||||
|
@ -405,7 +405,7 @@ Use of Workqueues
|
||||||
In earlier implementations, the task requesting the expedited grace
|
In earlier implementations, the task requesting the expedited grace
|
||||||
period also drove it to completion. This straightforward approach had
|
period also drove it to completion. This straightforward approach had
|
||||||
the disadvantage of needing to account for POSIX signals sent to user
|
the disadvantage of needing to account for POSIX signals sent to user
|
||||||
tasks, so more recent implemementations use the Linux kernel's
|
tasks, so more recent implementations use the Linux kernel's
|
||||||
workqueues (see Documentation/core-api/workqueue.rst).
|
workqueues (see Documentation/core-api/workqueue.rst).
|
||||||
|
|
||||||
The requesting task still does counter snapshotting and funnel-lock
|
The requesting task still does counter snapshotting and funnel-lock
|
||||||
|
@ -465,7 +465,7 @@ corresponding disadvantage that workqueues cannot be used until they are
|
||||||
initialized, which does not happen until some time after the scheduler
|
initialized, which does not happen until some time after the scheduler
|
||||||
spawns the first task. Given that there are parts of the kernel that
|
spawns the first task. Given that there are parts of the kernel that
|
||||||
really do want to execute grace periods during this mid-boot “dead
|
really do want to execute grace periods during this mid-boot “dead
|
||||||
zone”, expedited grace periods must do something else during thie time.
|
zone”, expedited grace periods must do something else during this time.
|
||||||
|
|
||||||
What they do is to fall back to the old practice of requiring that the
|
What they do is to fall back to the old practice of requiring that the
|
||||||
requesting task drive the expedited grace period, as was the case before
|
requesting task drive the expedited grace period, as was the case before
|
||||||
|
|
|
@ -168,7 +168,7 @@ an ``atomic_add_return()`` of zero) to detect idle CPUs.
|
||||||
+-----------------------------------------------------------------------+
|
+-----------------------------------------------------------------------+
|
||||||
|
|
||||||
The approach must be extended to handle one final case, that of waking a
|
The approach must be extended to handle one final case, that of waking a
|
||||||
task blocked in ``synchronize_rcu()``. This task might be affinitied to
|
task blocked in ``synchronize_rcu()``. This task might be affined to
|
||||||
a CPU that is not yet aware that the grace period has ended, and thus
|
a CPU that is not yet aware that the grace period has ended, and thus
|
||||||
might not yet be subject to the grace period's memory ordering.
|
might not yet be subject to the grace period's memory ordering.
|
||||||
Therefore, there is an ``smp_mb()`` after the return from
|
Therefore, there is an ``smp_mb()`` after the return from
|
||||||
|
|
|
@ -201,7 +201,7 @@ work looked at debugging uses of RCU [Seyster:2011:RFA:2075416.2075425].
|
||||||
In 2012, Josh Triplett received his Ph.D. with his dissertation
|
In 2012, Josh Triplett received his Ph.D. with his dissertation
|
||||||
covering RCU-protected resizable hash tables and the relationship
|
covering RCU-protected resizable hash tables and the relationship
|
||||||
between memory barriers and read-side traversal order: If the updater
|
between memory barriers and read-side traversal order: If the updater
|
||||||
is making changes in the opposite direction from the read-side traveral
|
is making changes in the opposite direction from the read-side traversal
|
||||||
order, the updater need only execute a memory-barrier instruction,
|
order, the updater need only execute a memory-barrier instruction,
|
||||||
but if in the same direction, the updater needs to wait for a grace
|
but if in the same direction, the updater needs to wait for a grace
|
||||||
period between the individual updates [JoshTriplettPhD]. Also in 2012,
|
period between the individual updates [JoshTriplettPhD]. Also in 2012,
|
||||||
|
@ -1245,7 +1245,7 @@ Oregon Health and Sciences University"
|
||||||
[Viewed September 5, 2005]"
|
[Viewed September 5, 2005]"
|
||||||
,annotation={
|
,annotation={
|
||||||
First posting showing how RCU can be safely adapted for
|
First posting showing how RCU can be safely adapted for
|
||||||
preemptable RCU read side critical sections.
|
preemptible RCU read side critical sections.
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1888,7 +1888,7 @@ Revised:
|
||||||
\url{https://lore.kernel.org/r/20070910183004.GA3299@linux.vnet.ibm.com}
|
\url{https://lore.kernel.org/r/20070910183004.GA3299@linux.vnet.ibm.com}
|
||||||
[Viewed October 25, 2007]"
|
[Viewed October 25, 2007]"
|
||||||
,annotation={
|
,annotation={
|
||||||
Final patch for preemptable RCU to -rt. (Later patches were
|
Final patch for preemptible RCU to -rt. (Later patches were
|
||||||
to mainline, eventually incorporated.)
|
to mainline, eventually incorporated.)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2275,7 +2275,7 @@ lot of {Linux} into your technology!!!"
|
||||||
\url{https://lore.kernel.org/r/20090724001429.GA17374@linux.vnet.ibm.com}
|
\url{https://lore.kernel.org/r/20090724001429.GA17374@linux.vnet.ibm.com}
|
||||||
[Viewed August 15, 2009]"
|
[Viewed August 15, 2009]"
|
||||||
,annotation={
|
,annotation={
|
||||||
First posting of simple and fast preemptable RCU.
|
First posting of simple and fast preemptible RCU.
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2639,7 +2639,7 @@ lot of {Linux} into your technology!!!"
|
||||||
RCU-protected hash tables, barriers vs. read-side traversal order.
|
RCU-protected hash tables, barriers vs. read-side traversal order.
|
||||||
.
|
.
|
||||||
If the updater is making changes in the opposite direction from
|
If the updater is making changes in the opposite direction from
|
||||||
the read-side traveral order, the updater need only execute a
|
the read-side traversal order, the updater need only execute a
|
||||||
memory-barrier instruction, but if in the same direction, the
|
memory-barrier instruction, but if in the same direction, the
|
||||||
updater needs to wait for a grace period between the individual
|
updater needs to wait for a grace period between the individual
|
||||||
updates.
|
updates.
|
||||||
|
|
|
@ -107,7 +107,7 @@ UP systems, including PREEMPT SMP builds running on UP systems.
|
||||||
|
|
||||||
Quick Quiz #3:
|
Quick Quiz #3:
|
||||||
Why can't synchronize_rcu() return immediately on UP systems running
|
Why can't synchronize_rcu() return immediately on UP systems running
|
||||||
preemptable RCU?
|
preemptible RCU?
|
||||||
|
|
||||||
.. _answer_quick_quiz_up:
|
.. _answer_quick_quiz_up:
|
||||||
|
|
||||||
|
@ -143,7 +143,7 @@ Answer to Quick Quiz #2:
|
||||||
|
|
||||||
Answer to Quick Quiz #3:
|
Answer to Quick Quiz #3:
|
||||||
Why can't synchronize_rcu() return immediately on UP systems
|
Why can't synchronize_rcu() return immediately on UP systems
|
||||||
running preemptable RCU?
|
running preemptible RCU?
|
||||||
|
|
||||||
Because some other task might have been preempted in the middle
|
Because some other task might have been preempted in the middle
|
||||||
of an RCU read-side critical section. If synchronize_rcu()
|
of an RCU read-side critical section. If synchronize_rcu()
|
||||||
|
|
|
@ -70,7 +70,7 @@ over a rather long period of time, but improvements are always welcome!
|
||||||
can serve as rcu_read_lock_sched(), but is less readable and
|
can serve as rcu_read_lock_sched(), but is less readable and
|
||||||
prevents lockdep from detecting locking issues.
|
prevents lockdep from detecting locking issues.
|
||||||
|
|
||||||
Please not that you *cannot* rely on code known to be built
|
Please note that you *cannot* rely on code known to be built
|
||||||
only in non-preemptible kernels. Such code can and will break,
|
only in non-preemptible kernels. Such code can and will break,
|
||||||
especially in kernels built with CONFIG_PREEMPT_COUNT=y.
|
especially in kernels built with CONFIG_PREEMPT_COUNT=y.
|
||||||
|
|
||||||
|
|
|
@ -65,7 +65,7 @@ checking of rcu_dereference() primitives:
|
||||||
rcu_access_pointer(p):
|
rcu_access_pointer(p):
|
||||||
Return the value of the pointer and omit all barriers,
|
Return the value of the pointer and omit all barriers,
|
||||||
but retain the compiler constraints that prevent duplicating
|
but retain the compiler constraints that prevent duplicating
|
||||||
or coalescsing. This is useful when testing the
|
or coalescing. This is useful when testing the
|
||||||
value of the pointer itself, for example, against NULL.
|
value of the pointer itself, for example, against NULL.
|
||||||
|
|
||||||
The rcu_dereference_check() check expression can be any boolean
|
The rcu_dereference_check() check expression can be any boolean
|
||||||
|
|
|
@ -216,7 +216,7 @@ Kernel boot arguments can also be supplied, for example, to control
|
||||||
rcutorture's module parameters. For example, to test a change to RCU's
|
rcutorture's module parameters. For example, to test a change to RCU's
|
||||||
CPU stall-warning code, use "--bootargs 'rcutorture.stall_cpu=30'".
|
CPU stall-warning code, use "--bootargs 'rcutorture.stall_cpu=30'".
|
||||||
This will of course result in the scripting reporting a failure, namely
|
This will of course result in the scripting reporting a failure, namely
|
||||||
the resuling RCU CPU stall warning. As noted above, reducing memory may
|
the resulting RCU CPU stall warning. As noted above, reducing memory may
|
||||||
require disabling rcutorture's callback-flooding tests::
|
require disabling rcutorture's callback-flooding tests::
|
||||||
|
|
||||||
kvm.sh --cpus 448 --configs '56*TREE04' --memory 128M \
|
kvm.sh --cpus 448 --configs '56*TREE04' --memory 128M \
|
||||||
|
@ -370,5 +370,5 @@ You can also re-run a previous remote run in a manner similar to kvm.sh:
|
||||||
tools/testing/selftests/rcutorture/res/2022.11.03-11.26.28-remote \
|
tools/testing/selftests/rcutorture/res/2022.11.03-11.26.28-remote \
|
||||||
--duration 24h
|
--duration 24h
|
||||||
|
|
||||||
In this case, most of the kvm-again.sh parmeters may be supplied following
|
In this case, most of the kvm-again.sh parameters may be supplied following
|
||||||
the pathname of the old run-results directory.
|
the pathname of the old run-results directory.
|
||||||
|
|
|
@ -597,10 +597,10 @@ to avoid having to write your own callback::
|
||||||
If the occasional sleep is permitted, the single-argument form may
|
If the occasional sleep is permitted, the single-argument form may
|
||||||
be used, omitting the rcu_head structure from struct foo.
|
be used, omitting the rcu_head structure from struct foo.
|
||||||
|
|
||||||
kfree_rcu(old_fp);
|
kfree_rcu_mightsleep(old_fp);
|
||||||
|
|
||||||
This variant of kfree_rcu() almost never blocks, but might do so by
|
This variant almost never blocks, but might do so by invoking
|
||||||
invoking synchronize_rcu() in response to memory-allocation failure.
|
synchronize_rcu() in response to memory-allocation failure.
|
||||||
|
|
||||||
Again, see checklist.rst for additional rules governing the use of RCU.
|
Again, see checklist.rst for additional rules governing the use of RCU.
|
||||||
|
|
||||||
|
|
|
@ -16,6 +16,7 @@ d) memory reclaim
|
||||||
e) thrashing
|
e) thrashing
|
||||||
f) direct compact
|
f) direct compact
|
||||||
g) write-protect copy
|
g) write-protect copy
|
||||||
|
h) IRQ/SOFTIRQ
|
||||||
|
|
||||||
and makes these statistics available to userspace through
|
and makes these statistics available to userspace through
|
||||||
the taskstats interface.
|
the taskstats interface.
|
||||||
|
@ -49,7 +50,7 @@ this structure. See
|
||||||
for a description of the fields pertaining to delay accounting.
|
for a description of the fields pertaining to delay accounting.
|
||||||
It will generally be in the form of counters returning the cumulative
|
It will generally be in the form of counters returning the cumulative
|
||||||
delay seen for cpu, sync block I/O, swapin, memory reclaim, thrash page
|
delay seen for cpu, sync block I/O, swapin, memory reclaim, thrash page
|
||||||
cache, direct compact, write-protect copy etc.
|
cache, direct compact, write-protect copy, IRQ/SOFTIRQ etc.
|
||||||
|
|
||||||
Taking the difference of two successive readings of a given
|
Taking the difference of two successive readings of a given
|
||||||
counter (say cpu_delay_total) for a task will give the delay
|
counter (say cpu_delay_total) for a task will give the delay
|
||||||
|
@ -109,17 +110,19 @@ Get sum of delays, since system boot, for all pids with tgid 5::
|
||||||
CPU count real total virtual total delay total delay average
|
CPU count real total virtual total delay total delay average
|
||||||
8 7000000 6872122 3382277 0.423ms
|
8 7000000 6872122 3382277 0.423ms
|
||||||
IO count delay total delay average
|
IO count delay total delay average
|
||||||
0 0 0ms
|
0 0 0.000ms
|
||||||
SWAP count delay total delay average
|
SWAP count delay total delay average
|
||||||
0 0 0ms
|
0 0 0.000ms
|
||||||
RECLAIM count delay total delay average
|
RECLAIM count delay total delay average
|
||||||
0 0 0ms
|
0 0 0.000ms
|
||||||
THRASHING count delay total delay average
|
THRASHING count delay total delay average
|
||||||
0 0 0ms
|
0 0 0.000ms
|
||||||
COMPACT count delay total delay average
|
COMPACT count delay total delay average
|
||||||
0 0 0ms
|
0 0 0.000ms
|
||||||
WPCOPY count delay total delay average
|
WPCOPY count delay total delay average
|
||||||
0 0 0ms
|
0 0 0.000ms
|
||||||
|
IRQ count delay total delay average
|
||||||
|
0 0 0.000ms
|
||||||
|
|
||||||
Get IO accounting for pid 1, it works only with -p::
|
Get IO accounting for pid 1, it works only with -p::
|
||||||
|
|
||||||
|
|
|
@ -105,6 +105,10 @@ prevent overly frequent polling. Max limit is chosen as a high enough number
|
||||||
after which monitors are most likely not needed and psi averages can be used
|
after which monitors are most likely not needed and psi averages can be used
|
||||||
instead.
|
instead.
|
||||||
|
|
||||||
|
Unprivileged users can also create monitors, with the only limitation that the
|
||||||
|
window size must be a multiple of 2s, in order to prevent excessive resource
|
||||||
|
usage.
|
||||||
|
|
||||||
When activated, psi monitor stays active for at least the duration of one
|
When activated, psi monitor stays active for at least the duration of one
|
||||||
tracking window to avoid repeated activations/deactivations when system is
|
tracking window to avoid repeated activations/deactivations when system is
|
||||||
bouncing in and out of the stall state.
|
bouncing in and out of the stall state.
|
||||||
|
|
|
@ -14,7 +14,7 @@ to borrow disk space from another computer.
|
||||||
Unlike NFS, it is possible to put any filesystem on it, etc.
|
Unlike NFS, it is possible to put any filesystem on it, etc.
|
||||||
|
|
||||||
For more information, or to download the nbd-client and nbd-server
|
For more information, or to download the nbd-client and nbd-server
|
||||||
tools, go to http://nbd.sf.net/.
|
tools, go to https://github.com/NetworkBlockDevice/nbd.
|
||||||
|
|
||||||
The nbd kernel module need only be installed on the client
|
The nbd kernel module need only be installed on the client
|
||||||
system, as the nbd-server is completely in userspace. In fact,
|
system, as the nbd-server is completely in userspace. In fact,
|
||||||
|
|
|
@ -719,7 +719,7 @@ There are ways to query or modify cpusets:
|
||||||
cat, rmdir commands from the shell, or their equivalent from C.
|
cat, rmdir commands from the shell, or their equivalent from C.
|
||||||
- via the C library libcpuset.
|
- via the C library libcpuset.
|
||||||
- via the C library libcgroup.
|
- via the C library libcgroup.
|
||||||
(http://sourceforge.net/projects/libcg/)
|
(https://github.com/libcgroup/libcgroup/)
|
||||||
- via the python application cset.
|
- via the python application cset.
|
||||||
(http://code.google.com/p/cpuset/)
|
(http://code.google.com/p/cpuset/)
|
||||||
|
|
||||||
|
|
|
@ -39,6 +39,10 @@ Optional feature parameters:
|
||||||
If no feature parameters are present, during the periods of
|
If no feature parameters are present, during the periods of
|
||||||
unreliability, all I/O returns errors.
|
unreliability, all I/O returns errors.
|
||||||
|
|
||||||
|
error_reads:
|
||||||
|
All read I/O is failed with an error signalled.
|
||||||
|
Write I/O is handled correctly.
|
||||||
|
|
||||||
drop_writes:
|
drop_writes:
|
||||||
All write I/O is silently ignored.
|
All write I/O is silently ignored.
|
||||||
Read I/O is handled correctly.
|
Read I/O is handled correctly.
|
||||||
|
|
|
@ -489,9 +489,6 @@ Files in /sys/fs/ext4/<devname>:
|
||||||
multiple of this tuning parameter if the stripe size is not set in the
|
multiple of this tuning parameter if the stripe size is not set in the
|
||||||
ext4 superblock
|
ext4 superblock
|
||||||
|
|
||||||
mb_max_inode_prealloc
|
|
||||||
The maximum length of per-inode ext4_prealloc_space list.
|
|
||||||
|
|
||||||
mb_max_to_scan
|
mb_max_to_scan
|
||||||
The maximum number of extents the multiblock allocator will search to
|
The maximum number of extents the multiblock allocator will search to
|
||||||
find the best extent.
|
find the best extent.
|
||||||
|
|
|
@ -145,7 +145,7 @@ requested using gpio_request()::
|
||||||
/* export the GPIO to userspace */
|
/* export the GPIO to userspace */
|
||||||
int gpiod_export(struct gpio_desc *desc, bool direction_may_change);
|
int gpiod_export(struct gpio_desc *desc, bool direction_may_change);
|
||||||
|
|
||||||
/* reverse gpio_export() */
|
/* reverse gpiod_export() */
|
||||||
void gpiod_unexport(struct gpio_desc *desc);
|
void gpiod_unexport(struct gpio_desc *desc);
|
||||||
|
|
||||||
/* create a sysfs link to an exported GPIO node */
|
/* create a sysfs link to an exported GPIO node */
|
||||||
|
|
|
@ -58,7 +58,7 @@ Because the buffers are potentially shared between Hyper-Threads cross
|
||||||
Hyper-Thread attacks are possible.
|
Hyper-Thread attacks are possible.
|
||||||
|
|
||||||
Deeper technical information is available in the MDS specific x86
|
Deeper technical information is available in the MDS specific x86
|
||||||
architecture section: :ref:`Documentation/x86/mds.rst <mds>`.
|
architecture section: :ref:`Documentation/arch/x86/mds.rst <mds>`.
|
||||||
|
|
||||||
|
|
||||||
Attack scenarios
|
Attack scenarios
|
||||||
|
|
|
@ -63,7 +63,7 @@ attacker needs to begin a TSX transaction and raise an asynchronous abort
|
||||||
which in turn potentially leaks data stored in the buffers.
|
which in turn potentially leaks data stored in the buffers.
|
||||||
|
|
||||||
More detailed technical information is available in the TAA specific x86
|
More detailed technical information is available in the TAA specific x86
|
||||||
architecture section: :ref:`Documentation/x86/tsx_async_abort.rst <tsx_async_abort>`.
|
architecture section: :ref:`Documentation/arch/x86/tsx_async_abort.rst <tsx_async_abort>`.
|
||||||
|
|
||||||
|
|
||||||
Attack scenarios
|
Attack scenarios
|
||||||
|
|
|
@ -36,7 +36,7 @@ problems and bugs in particular.
|
||||||
|
|
||||||
reporting-issues
|
reporting-issues
|
||||||
reporting-regressions
|
reporting-regressions
|
||||||
security-bugs
|
quickly-build-trimmed-linux
|
||||||
bug-hunting
|
bug-hunting
|
||||||
bug-bisect
|
bug-bisect
|
||||||
tainted-kernels
|
tainted-kernels
|
||||||
|
|
|
@ -172,7 +172,7 @@ variables.
|
||||||
Offset of the free_list's member. This value is used to compute the number
|
Offset of the free_list's member. This value is used to compute the number
|
||||||
of free pages.
|
of free pages.
|
||||||
|
|
||||||
Each zone has a free_area structure array called free_area[MAX_ORDER].
|
Each zone has a free_area structure array called free_area[MAX_ORDER + 1].
|
||||||
The free_list represents a linked list of free page blocks.
|
The free_list represents a linked list of free page blocks.
|
||||||
|
|
||||||
(list_head, next|prev)
|
(list_head, next|prev)
|
||||||
|
@ -189,8 +189,8 @@ Offsets of the vmap_area's members. They carry vmalloc-specific
|
||||||
information. Makedumpfile gets the start address of the vmalloc region
|
information. Makedumpfile gets the start address of the vmalloc region
|
||||||
from this.
|
from this.
|
||||||
|
|
||||||
(zone.free_area, MAX_ORDER)
|
(zone.free_area, MAX_ORDER + 1)
|
||||||
---------------------------
|
-------------------------------
|
||||||
|
|
||||||
Free areas descriptor. User-space tools use this value to iterate the
|
Free areas descriptor. User-space tools use this value to iterate the
|
||||||
free_area ranges. MAX_ORDER is used by the zone buddy allocator.
|
free_area ranges. MAX_ORDER is used by the zone buddy allocator.
|
||||||
|
|
|
@ -128,10 +128,11 @@ parameter is applicable::
|
||||||
KVM Kernel Virtual Machine support is enabled.
|
KVM Kernel Virtual Machine support is enabled.
|
||||||
LIBATA Libata driver is enabled
|
LIBATA Libata driver is enabled
|
||||||
LP Printer support is enabled.
|
LP Printer support is enabled.
|
||||||
|
LOONGARCH LoongArch architecture is enabled.
|
||||||
LOOP Loopback device support is enabled.
|
LOOP Loopback device support is enabled.
|
||||||
M68k M68k architecture is enabled.
|
M68k M68k architecture is enabled.
|
||||||
These options have more detailed description inside of
|
These options have more detailed description inside of
|
||||||
Documentation/m68k/kernel-options.rst.
|
Documentation/arch/m68k/kernel-options.rst.
|
||||||
MDA MDA console support is enabled.
|
MDA MDA console support is enabled.
|
||||||
MIPS MIPS architecture is enabled.
|
MIPS MIPS architecture is enabled.
|
||||||
MOUSE Appropriate mouse support is enabled.
|
MOUSE Appropriate mouse support is enabled.
|
||||||
|
@ -177,7 +178,7 @@ parameter is applicable::
|
||||||
X86-32 X86-32, aka i386 architecture is enabled.
|
X86-32 X86-32, aka i386 architecture is enabled.
|
||||||
X86-64 X86-64 architecture is enabled.
|
X86-64 X86-64 architecture is enabled.
|
||||||
More X86-64 boot options can be found in
|
More X86-64 boot options can be found in
|
||||||
Documentation/x86/x86_64/boot-options.rst.
|
Documentation/arch/x86/x86_64/boot-options.rst.
|
||||||
X86 Either 32-bit or 64-bit x86 (same as X86-32+X86-64)
|
X86 Either 32-bit or 64-bit x86 (same as X86-32+X86-64)
|
||||||
X86_UV SGI UV support is enabled.
|
X86_UV SGI UV support is enabled.
|
||||||
XEN Xen support is enabled
|
XEN Xen support is enabled
|
||||||
|
@ -192,10 +193,10 @@ In addition, the following text indicates that the option::
|
||||||
Parameters denoted with BOOT are actually interpreted by the boot
|
Parameters denoted with BOOT are actually interpreted by the boot
|
||||||
loader, and have no meaning to the kernel directly.
|
loader, and have no meaning to the kernel directly.
|
||||||
Do not modify the syntax of boot loader parameters without extreme
|
Do not modify the syntax of boot loader parameters without extreme
|
||||||
need or coordination with <Documentation/x86/boot.rst>.
|
need or coordination with <Documentation/arch/x86/boot.rst>.
|
||||||
|
|
||||||
There are also arch-specific kernel-parameters not documented here.
|
There are also arch-specific kernel-parameters not documented here.
|
||||||
See for example <Documentation/x86/x86_64/boot-options.rst>.
|
See for example <Documentation/arch/x86/x86_64/boot-options.rst>.
|
||||||
|
|
||||||
Note that ALL kernel parameters listed below are CASE SENSITIVE, and that
|
Note that ALL kernel parameters listed below are CASE SENSITIVE, and that
|
||||||
a trailing = on the name of any parameter states that that parameter will
|
a trailing = on the name of any parameter states that that parameter will
|
||||||
|
|
|
@ -339,6 +339,29 @@
|
||||||
This mode requires kvm-amd.avic=1.
|
This mode requires kvm-amd.avic=1.
|
||||||
(Default when IOMMU HW support is present.)
|
(Default when IOMMU HW support is present.)
|
||||||
|
|
||||||
|
amd_pstate= [X86]
|
||||||
|
disable
|
||||||
|
Do not enable amd_pstate as the default
|
||||||
|
scaling driver for the supported processors
|
||||||
|
passive
|
||||||
|
Use amd_pstate with passive mode as a scaling driver.
|
||||||
|
In this mode autonomous selection is disabled.
|
||||||
|
Driver requests a desired performance level and platform
|
||||||
|
tries to match the same performance level if it is
|
||||||
|
satisfied by guaranteed performance level.
|
||||||
|
active
|
||||||
|
Use amd_pstate_epp driver instance as the scaling driver,
|
||||||
|
driver provides a hint to the hardware if software wants
|
||||||
|
to bias toward performance (0x0) or energy efficiency (0xff)
|
||||||
|
to the CPPC firmware. then CPPC power algorithm will
|
||||||
|
calculate the runtime workload and adjust the realtime cores
|
||||||
|
frequency.
|
||||||
|
guided
|
||||||
|
Activate guided autonomous mode. Driver requests minimum and
|
||||||
|
maximum performance level and the platform autonomously
|
||||||
|
selects a performance level in this range and appropriate
|
||||||
|
to the current workload.
|
||||||
|
|
||||||
amijoy.map= [HW,JOY] Amiga joystick support
|
amijoy.map= [HW,JOY] Amiga joystick support
|
||||||
Map of devices attached to JOY0DAT and JOY1DAT
|
Map of devices attached to JOY0DAT and JOY1DAT
|
||||||
Format: <a>,<b>
|
Format: <a>,<b>
|
||||||
|
@ -889,15 +912,14 @@
|
||||||
cs89x0_media= [HW,NET]
|
cs89x0_media= [HW,NET]
|
||||||
Format: { rj45 | aui | bnc }
|
Format: { rj45 | aui | bnc }
|
||||||
|
|
||||||
csdlock_debug= [KNL] Enable debug add-ons of cross-CPU function call
|
csdlock_debug= [KNL] Enable or disable debug add-ons of cross-CPU
|
||||||
handling. When switched on, additional debug data is
|
function call handling. When switched on,
|
||||||
printed to the console in case a hanging CPU is
|
additional debug data is printed to the console
|
||||||
detected, and that CPU is pinged again in order to try
|
in case a hanging CPU is detected, and that
|
||||||
to resolve the hang situation.
|
CPU is pinged again in order to try to resolve
|
||||||
0: disable csdlock debugging (default)
|
the hang situation. The default value of this
|
||||||
1: enable basic csdlock debugging (minor impact)
|
option depends on the CSD_LOCK_WAIT_DEBUG_DEFAULT
|
||||||
ext: enable extended csdlock debugging (more impact,
|
Kconfig option.
|
||||||
but more data)
|
|
||||||
|
|
||||||
dasd= [HW,NET]
|
dasd= [HW,NET]
|
||||||
See header of drivers/s390/block/dasd_devmap.c.
|
See header of drivers/s390/block/dasd_devmap.c.
|
||||||
|
@ -929,9 +951,6 @@
|
||||||
|
|
||||||
debug_objects [KNL] Enable object debugging
|
debug_objects [KNL] Enable object debugging
|
||||||
|
|
||||||
no_debug_objects
|
|
||||||
[KNL] Disable object debugging
|
|
||||||
|
|
||||||
debug_guardpage_minorder=
|
debug_guardpage_minorder=
|
||||||
[KNL] When CONFIG_DEBUG_PAGEALLOC is set, this
|
[KNL] When CONFIG_DEBUG_PAGEALLOC is set, this
|
||||||
parameter allows control of the order of pages that will
|
parameter allows control of the order of pages that will
|
||||||
|
@ -1582,6 +1601,20 @@
|
||||||
dependencies. This only applies for fw_devlink=on|rpm.
|
dependencies. This only applies for fw_devlink=on|rpm.
|
||||||
Format: <bool>
|
Format: <bool>
|
||||||
|
|
||||||
|
fw_devlink.sync_state =
|
||||||
|
[KNL] When all devices that could probe have finished
|
||||||
|
probing, this parameter controls what to do with
|
||||||
|
devices that haven't yet received their sync_state()
|
||||||
|
calls.
|
||||||
|
Format: { strict | timeout }
|
||||||
|
strict -- Default. Continue waiting on consumers to
|
||||||
|
probe successfully.
|
||||||
|
timeout -- Give up waiting on consumers and call
|
||||||
|
sync_state() on any devices that haven't yet
|
||||||
|
received their sync_state() calls after
|
||||||
|
deferred_probe_timeout has expired or by
|
||||||
|
late_initcall() if !CONFIG_MODULES.
|
||||||
|
|
||||||
gamecon.map[2|3]=
|
gamecon.map[2|3]=
|
||||||
[HW,JOY] Multisystem joystick and NES/SNES/PSX pad
|
[HW,JOY] Multisystem joystick and NES/SNES/PSX pad
|
||||||
support via parallel port (up to 5 devices per port)
|
support via parallel port (up to 5 devices per port)
|
||||||
|
@ -2976,7 +3009,7 @@
|
||||||
|
|
||||||
mce [X86-32] Machine Check Exception
|
mce [X86-32] Machine Check Exception
|
||||||
|
|
||||||
mce=option [X86-64] See Documentation/x86/x86_64/boot-options.rst
|
mce=option [X86-64] See Documentation/arch/x86/x86_64/boot-options.rst
|
||||||
|
|
||||||
md= [HW] RAID subsystems devices and level
|
md= [HW] RAID subsystems devices and level
|
||||||
See Documentation/admin-guide/md.rst.
|
See Documentation/admin-guide/md.rst.
|
||||||
|
@ -3184,9 +3217,6 @@
|
||||||
deep - Suspend-To-RAM or equivalent (if supported)
|
deep - Suspend-To-RAM or equivalent (if supported)
|
||||||
See Documentation/admin-guide/pm/sleep-states.rst.
|
See Documentation/admin-guide/pm/sleep-states.rst.
|
||||||
|
|
||||||
meye.*= [HW] Set MotionEye Camera parameters
|
|
||||||
See Documentation/admin-guide/media/meye.rst.
|
|
||||||
|
|
||||||
mfgpt_irq= [IA-32] Specify the IRQ to use for the
|
mfgpt_irq= [IA-32] Specify the IRQ to use for the
|
||||||
Multi-Function General Purpose Timers on AMD Geode
|
Multi-Function General Purpose Timers on AMD Geode
|
||||||
platforms.
|
platforms.
|
||||||
|
@ -3332,6 +3362,12 @@
|
||||||
specified, <module>.async_probe takes precedence for
|
specified, <module>.async_probe takes precedence for
|
||||||
the specific module.
|
the specific module.
|
||||||
|
|
||||||
|
module.enable_dups_trace
|
||||||
|
[KNL] When CONFIG_MODULE_DEBUG_AUTOLOAD_DUPS is set,
|
||||||
|
this means that duplicate request_module() calls will
|
||||||
|
trigger a WARN_ON() instead of a pr_warn(). Note that
|
||||||
|
if MODULE_DEBUG_AUTOLOAD_DUPS_TRACE is set, WARN_ON()s
|
||||||
|
will always be issued and this option does nothing.
|
||||||
module.sig_enforce
|
module.sig_enforce
|
||||||
[KNL] When CONFIG_MODULE_SIG is set, this means that
|
[KNL] When CONFIG_MODULE_SIG is set, this means that
|
||||||
modules without (valid) signatures will fail to load.
|
modules without (valid) signatures will fail to load.
|
||||||
|
@ -3428,14 +3464,13 @@
|
||||||
1 to enable accounting
|
1 to enable accounting
|
||||||
Default value is 0.
|
Default value is 0.
|
||||||
|
|
||||||
nfsaddrs= [NFS] Deprecated. Use ip= instead.
|
nfs.cache_getent=
|
||||||
See Documentation/admin-guide/nfs/nfsroot.rst.
|
[NFS] sets the pathname to the program which is used
|
||||||
|
to update the NFS client cache entries.
|
||||||
|
|
||||||
nfsroot= [NFS] nfs root filesystem for disk-less boxes.
|
nfs.cache_getent_timeout=
|
||||||
See Documentation/admin-guide/nfs/nfsroot.rst.
|
[NFS] sets the timeout after which an attempt to
|
||||||
|
update a cache entry is deemed to have failed.
|
||||||
nfsrootdebug [NFS] enable nfsroot debugging messages.
|
|
||||||
See Documentation/admin-guide/nfs/nfsroot.rst.
|
|
||||||
|
|
||||||
nfs.callback_nr_threads=
|
nfs.callback_nr_threads=
|
||||||
[NFSv4] set the total number of threads that the
|
[NFSv4] set the total number of threads that the
|
||||||
|
@ -3446,18 +3481,6 @@
|
||||||
[NFS] set the TCP port on which the NFSv4 callback
|
[NFS] set the TCP port on which the NFSv4 callback
|
||||||
channel should listen.
|
channel should listen.
|
||||||
|
|
||||||
nfs.cache_getent=
|
|
||||||
[NFS] sets the pathname to the program which is used
|
|
||||||
to update the NFS client cache entries.
|
|
||||||
|
|
||||||
nfs.cache_getent_timeout=
|
|
||||||
[NFS] sets the timeout after which an attempt to
|
|
||||||
update a cache entry is deemed to have failed.
|
|
||||||
|
|
||||||
nfs.idmap_cache_timeout=
|
|
||||||
[NFS] set the maximum lifetime for idmapper cache
|
|
||||||
entries.
|
|
||||||
|
|
||||||
nfs.enable_ino64=
|
nfs.enable_ino64=
|
||||||
[NFS] enable 64-bit inode numbers.
|
[NFS] enable 64-bit inode numbers.
|
||||||
If zero, the NFS client will fake up a 32-bit inode
|
If zero, the NFS client will fake up a 32-bit inode
|
||||||
|
@ -3465,6 +3488,10 @@
|
||||||
of returning the full 64-bit number.
|
of returning the full 64-bit number.
|
||||||
The default is to return 64-bit inode numbers.
|
The default is to return 64-bit inode numbers.
|
||||||
|
|
||||||
|
nfs.idmap_cache_timeout=
|
||||||
|
[NFS] set the maximum lifetime for idmapper cache
|
||||||
|
entries.
|
||||||
|
|
||||||
nfs.max_session_cb_slots=
|
nfs.max_session_cb_slots=
|
||||||
[NFSv4.1] Sets the maximum number of session
|
[NFSv4.1] Sets the maximum number of session
|
||||||
slots the client will assign to the callback
|
slots the client will assign to the callback
|
||||||
|
@ -3492,21 +3519,14 @@
|
||||||
will be autodetected by the client, and it will fall
|
will be autodetected by the client, and it will fall
|
||||||
back to using the idmapper.
|
back to using the idmapper.
|
||||||
To turn off this behaviour, set the value to '0'.
|
To turn off this behaviour, set the value to '0'.
|
||||||
|
|
||||||
nfs.nfs4_unique_id=
|
nfs.nfs4_unique_id=
|
||||||
[NFS4] Specify an additional fixed unique ident-
|
[NFS4] Specify an additional fixed unique ident-
|
||||||
ification string that NFSv4 clients can insert into
|
ification string that NFSv4 clients can insert into
|
||||||
their nfs_client_id4 string. This is typically a
|
their nfs_client_id4 string. This is typically a
|
||||||
UUID that is generated at system install time.
|
UUID that is generated at system install time.
|
||||||
|
|
||||||
nfs.send_implementation_id =
|
nfs.recover_lost_locks=
|
||||||
[NFSv4.1] Send client implementation identification
|
|
||||||
information in exchange_id requests.
|
|
||||||
If zero, no implementation identification information
|
|
||||||
will be sent.
|
|
||||||
The default is to send the implementation identification
|
|
||||||
information.
|
|
||||||
|
|
||||||
nfs.recover_lost_locks =
|
|
||||||
[NFSv4] Attempt to recover locks that were lost due
|
[NFSv4] Attempt to recover locks that were lost due
|
||||||
to a lease timeout on the server. Please note that
|
to a lease timeout on the server. Please note that
|
||||||
doing this risks data corruption, since there are
|
doing this risks data corruption, since there are
|
||||||
|
@ -3518,7 +3538,15 @@
|
||||||
The default parameter value of '0' causes the kernel
|
The default parameter value of '0' causes the kernel
|
||||||
not to attempt recovery of lost locks.
|
not to attempt recovery of lost locks.
|
||||||
|
|
||||||
nfs4.layoutstats_timer =
|
nfs.send_implementation_id=
|
||||||
|
[NFSv4.1] Send client implementation identification
|
||||||
|
information in exchange_id requests.
|
||||||
|
If zero, no implementation identification information
|
||||||
|
will be sent.
|
||||||
|
The default is to send the implementation identification
|
||||||
|
information.
|
||||||
|
|
||||||
|
nfs4.layoutstats_timer=
|
||||||
[NFSv4.2] Change the rate at which the kernel sends
|
[NFSv4.2] Change the rate at which the kernel sends
|
||||||
layoutstats to the pNFS metadata server.
|
layoutstats to the pNFS metadata server.
|
||||||
|
|
||||||
|
@ -3527,19 +3555,11 @@
|
||||||
driver. A non-zero value sets the minimum interval
|
driver. A non-zero value sets the minimum interval
|
||||||
in seconds between layoutstats transmissions.
|
in seconds between layoutstats transmissions.
|
||||||
|
|
||||||
nfsd.inter_copy_offload_enable =
|
nfsd.inter_copy_offload_enable=
|
||||||
[NFSv4.2] When set to 1, the server will support
|
[NFSv4.2] When set to 1, the server will support
|
||||||
server-to-server copies for which this server is
|
server-to-server copies for which this server is
|
||||||
the destination of the copy.
|
the destination of the copy.
|
||||||
|
|
||||||
nfsd.nfsd4_ssc_umount_timeout =
|
|
||||||
[NFSv4.2] When used as the destination of a
|
|
||||||
server-to-server copy, knfsd temporarily mounts
|
|
||||||
the source server. It caches the mount in case
|
|
||||||
it will be needed again, and discards it if not
|
|
||||||
used for the number of milliseconds specified by
|
|
||||||
this parameter.
|
|
||||||
|
|
||||||
nfsd.nfs4_disable_idmapping=
|
nfsd.nfs4_disable_idmapping=
|
||||||
[NFSv4] When set to the default of '1', the NFSv4
|
[NFSv4] When set to the default of '1', the NFSv4
|
||||||
server will return only numeric uids and gids to
|
server will return only numeric uids and gids to
|
||||||
|
@ -3547,6 +3567,22 @@
|
||||||
and gids from such clients. This is intended to ease
|
and gids from such clients. This is intended to ease
|
||||||
migration from NFSv2/v3.
|
migration from NFSv2/v3.
|
||||||
|
|
||||||
|
nfsd.nfsd4_ssc_umount_timeout=
|
||||||
|
[NFSv4.2] When used as the destination of a
|
||||||
|
server-to-server copy, knfsd temporarily mounts
|
||||||
|
the source server. It caches the mount in case
|
||||||
|
it will be needed again, and discards it if not
|
||||||
|
used for the number of milliseconds specified by
|
||||||
|
this parameter.
|
||||||
|
|
||||||
|
nfsaddrs= [NFS] Deprecated. Use ip= instead.
|
||||||
|
See Documentation/admin-guide/nfs/nfsroot.rst.
|
||||||
|
|
||||||
|
nfsroot= [NFS] nfs root filesystem for disk-less boxes.
|
||||||
|
See Documentation/admin-guide/nfs/nfsroot.rst.
|
||||||
|
|
||||||
|
nfsrootdebug [NFS] enable nfsroot debugging messages.
|
||||||
|
See Documentation/admin-guide/nfs/nfsroot.rst.
|
||||||
|
|
||||||
nmi_backtrace.backtrace_idle [KNL]
|
nmi_backtrace.backtrace_idle [KNL]
|
||||||
Dump stacks even of idle CPUs in response to an
|
Dump stacks even of idle CPUs in response to an
|
||||||
|
@ -3576,37 +3612,12 @@
|
||||||
emulation library even if a 387 maths coprocessor
|
emulation library even if a 387 maths coprocessor
|
||||||
is present.
|
is present.
|
||||||
|
|
||||||
no5lvl [X86-64] Disable 5-level paging mode. Forces
|
no4lvl [RISCV] Disable 4-level and 5-level paging modes. Forces
|
||||||
|
kernel to use 3-level paging instead.
|
||||||
|
|
||||||
|
no5lvl [X86-64,RISCV] Disable 5-level paging mode. Forces
|
||||||
kernel to use 4-level paging instead.
|
kernel to use 4-level paging instead.
|
||||||
|
|
||||||
nofsgsbase [X86] Disables FSGSBASE instructions.
|
|
||||||
|
|
||||||
no_console_suspend
|
|
||||||
[HW] Never suspend the console
|
|
||||||
Disable suspending of consoles during suspend and
|
|
||||||
hibernate operations. Once disabled, debugging
|
|
||||||
messages can reach various consoles while the rest
|
|
||||||
of the system is being put to sleep (ie, while
|
|
||||||
debugging driver suspend/resume hooks). This may
|
|
||||||
not work reliably with all consoles, but is known
|
|
||||||
to work with serial and VGA consoles.
|
|
||||||
To facilitate more flexible debugging, we also add
|
|
||||||
console_suspend, a printk module parameter to control
|
|
||||||
it. Users could use console_suspend (usually
|
|
||||||
/sys/module/printk/parameters/console_suspend) to
|
|
||||||
turn on/off it dynamically.
|
|
||||||
|
|
||||||
novmcoredd [KNL,KDUMP]
|
|
||||||
Disable device dump. Device dump allows drivers to
|
|
||||||
append dump data to vmcore so you can collect driver
|
|
||||||
specified debug info. Drivers can append the data
|
|
||||||
without any limit and this data is stored in memory,
|
|
||||||
so this may cause significant memory stress. Disabling
|
|
||||||
device dump can help save memory but the driver debug
|
|
||||||
data will be no longer available. This parameter
|
|
||||||
is only available when CONFIG_PROC_VMCORE_DEVICE_DUMP
|
|
||||||
is set.
|
|
||||||
|
|
||||||
noaliencache [MM, NUMA, SLAB] Disables the allocation of alien
|
noaliencache [MM, NUMA, SLAB] Disables the allocation of alien
|
||||||
caches in the slab allocator. Saves per-node memory,
|
caches in the slab allocator. Saves per-node memory,
|
||||||
but will impact performance.
|
but will impact performance.
|
||||||
|
@ -3623,6 +3634,24 @@
|
||||||
|
|
||||||
nocache [ARM]
|
nocache [ARM]
|
||||||
|
|
||||||
|
no_console_suspend
|
||||||
|
[HW] Never suspend the console
|
||||||
|
Disable suspending of consoles during suspend and
|
||||||
|
hibernate operations. Once disabled, debugging
|
||||||
|
messages can reach various consoles while the rest
|
||||||
|
of the system is being put to sleep (ie, while
|
||||||
|
debugging driver suspend/resume hooks). This may
|
||||||
|
not work reliably with all consoles, but is known
|
||||||
|
to work with serial and VGA consoles.
|
||||||
|
To facilitate more flexible debugging, we also add
|
||||||
|
console_suspend, a printk module parameter to control
|
||||||
|
it. Users could use console_suspend (usually
|
||||||
|
/sys/module/printk/parameters/console_suspend) to
|
||||||
|
turn on/off it dynamically.
|
||||||
|
|
||||||
|
no_debug_objects
|
||||||
|
[KNL] Disable object debugging
|
||||||
|
|
||||||
nodsp [SH] Disable hardware DSP at boot time.
|
nodsp [SH] Disable hardware DSP at boot time.
|
||||||
|
|
||||||
noefi Disable EFI runtime services support.
|
noefi Disable EFI runtime services support.
|
||||||
|
@ -3631,14 +3660,6 @@
|
||||||
|
|
||||||
noexec [IA-64]
|
noexec [IA-64]
|
||||||
|
|
||||||
nosmap [PPC]
|
|
||||||
Disable SMAP (Supervisor Mode Access Prevention)
|
|
||||||
even if it is supported by processor.
|
|
||||||
|
|
||||||
nosmep [PPC64s]
|
|
||||||
Disable SMEP (Supervisor Mode Execution Prevention)
|
|
||||||
even if it is supported by processor.
|
|
||||||
|
|
||||||
noexec32 [X86-64]
|
noexec32 [X86-64]
|
||||||
This affects only 32-bit executables.
|
This affects only 32-bit executables.
|
||||||
noexec32=on: enable non-executable mappings (default)
|
noexec32=on: enable non-executable mappings (default)
|
||||||
|
@ -3646,74 +3667,18 @@
|
||||||
noexec32=off: disable non-executable mappings
|
noexec32=off: disable non-executable mappings
|
||||||
read implies executable mappings
|
read implies executable mappings
|
||||||
|
|
||||||
|
no_file_caps Tells the kernel not to honor file capabilities. The
|
||||||
|
only way then for a file to be executed with privilege
|
||||||
|
is to be setuid root or executed by root.
|
||||||
|
|
||||||
nofpu [MIPS,SH] Disable hardware FPU at boot time.
|
nofpu [MIPS,SH] Disable hardware FPU at boot time.
|
||||||
|
|
||||||
|
nofsgsbase [X86] Disables FSGSBASE instructions.
|
||||||
|
|
||||||
nofxsr [BUGS=X86-32] Disables x86 floating point extended
|
nofxsr [BUGS=X86-32] Disables x86 floating point extended
|
||||||
register save and restore. The kernel will only save
|
register save and restore. The kernel will only save
|
||||||
legacy floating-point registers on task switch.
|
legacy floating-point registers on task switch.
|
||||||
|
|
||||||
nohugeiomap [KNL,X86,PPC,ARM64] Disable kernel huge I/O mappings.
|
|
||||||
|
|
||||||
nohugevmalloc [KNL,X86,PPC,ARM64] Disable kernel huge vmalloc mappings.
|
|
||||||
|
|
||||||
nosmt [KNL,S390] Disable symmetric multithreading (SMT).
|
|
||||||
Equivalent to smt=1.
|
|
||||||
|
|
||||||
[KNL,X86] Disable symmetric multithreading (SMT).
|
|
||||||
nosmt=force: Force disable SMT, cannot be undone
|
|
||||||
via the sysfs control file.
|
|
||||||
|
|
||||||
nospectre_v1 [X86,PPC] Disable mitigations for Spectre Variant 1
|
|
||||||
(bounds check bypass). With this option data leaks are
|
|
||||||
possible in the system.
|
|
||||||
|
|
||||||
nospectre_v2 [X86,PPC_E500,ARM64] Disable all mitigations for
|
|
||||||
the Spectre variant 2 (indirect branch prediction)
|
|
||||||
vulnerability. System may allow data leaks with this
|
|
||||||
option.
|
|
||||||
|
|
||||||
nospectre_bhb [ARM64] Disable all mitigations for Spectre-BHB (branch
|
|
||||||
history injection) vulnerability. System may allow data leaks
|
|
||||||
with this option.
|
|
||||||
|
|
||||||
nospec_store_bypass_disable
|
|
||||||
[HW] Disable all mitigations for the Speculative Store Bypass vulnerability
|
|
||||||
|
|
||||||
no_uaccess_flush
|
|
||||||
[PPC] Don't flush the L1-D cache after accessing user data.
|
|
||||||
|
|
||||||
noxsave [BUGS=X86] Disables x86 extended register state save
|
|
||||||
and restore using xsave. The kernel will fallback to
|
|
||||||
enabling legacy floating-point and sse state.
|
|
||||||
|
|
||||||
noxsaveopt [X86] Disables xsaveopt used in saving x86 extended
|
|
||||||
register states. The kernel will fall back to use
|
|
||||||
xsave to save the states. By using this parameter,
|
|
||||||
performance of saving the states is degraded because
|
|
||||||
xsave doesn't support modified optimization while
|
|
||||||
xsaveopt supports it on xsaveopt enabled systems.
|
|
||||||
|
|
||||||
noxsaves [X86] Disables xsaves and xrstors used in saving and
|
|
||||||
restoring x86 extended register state in compacted
|
|
||||||
form of xsave area. The kernel will fall back to use
|
|
||||||
xsaveopt and xrstor to save and restore the states
|
|
||||||
in standard form of xsave area. By using this
|
|
||||||
parameter, xsave area per process might occupy more
|
|
||||||
memory on xsaves enabled systems.
|
|
||||||
|
|
||||||
nohlt [ARM,ARM64,MICROBLAZE,SH] Forces the kernel to busy wait
|
|
||||||
in do_idle() and not use the arch_cpu_idle()
|
|
||||||
implementation; requires CONFIG_GENERIC_IDLE_POLL_SETUP
|
|
||||||
to be effective. This is useful on platforms where the
|
|
||||||
sleep(SH) or wfi(ARM,ARM64) instructions do not work
|
|
||||||
correctly or when doing power measurements to evaluate
|
|
||||||
the impact of the sleep instructions. This is also
|
|
||||||
useful when using JTAG debugger.
|
|
||||||
|
|
||||||
no_file_caps Tells the kernel not to honor file capabilities. The
|
|
||||||
only way then for a file to be executed with privilege
|
|
||||||
is to be setuid root or executed by root.
|
|
||||||
|
|
||||||
nohalt [IA-64] Tells the kernel not to use the power saving
|
nohalt [IA-64] Tells the kernel not to use the power saving
|
||||||
function PAL_HALT_LIGHT when idle. This increases
|
function PAL_HALT_LIGHT when idle. This increases
|
||||||
power-consumption. On the positive side, it reduces
|
power-consumption. On the positive side, it reduces
|
||||||
|
@ -3737,6 +3702,19 @@
|
||||||
|
|
||||||
nohibernate [HIBERNATION] Disable hibernation and resume.
|
nohibernate [HIBERNATION] Disable hibernation and resume.
|
||||||
|
|
||||||
|
nohlt [ARM,ARM64,MICROBLAZE,SH] Forces the kernel to busy wait
|
||||||
|
in do_idle() and not use the arch_cpu_idle()
|
||||||
|
implementation; requires CONFIG_GENERIC_IDLE_POLL_SETUP
|
||||||
|
to be effective. This is useful on platforms where the
|
||||||
|
sleep(SH) or wfi(ARM,ARM64) instructions do not work
|
||||||
|
correctly or when doing power measurements to evaluate
|
||||||
|
the impact of the sleep instructions. This is also
|
||||||
|
useful when using JTAG debugger.
|
||||||
|
|
||||||
|
nohugeiomap [KNL,X86,PPC,ARM64] Disable kernel huge I/O mappings.
|
||||||
|
|
||||||
|
nohugevmalloc [KNL,X86,PPC,ARM64] Disable kernel huge vmalloc mappings.
|
||||||
|
|
||||||
nohz= [KNL] Boottime enable/disable dynamic ticks
|
nohz= [KNL] Boottime enable/disable dynamic ticks
|
||||||
Valid arguments: on, off
|
Valid arguments: on, off
|
||||||
Default: on
|
Default: on
|
||||||
|
@ -3754,16 +3732,6 @@
|
||||||
Note that this argument takes precedence over
|
Note that this argument takes precedence over
|
||||||
the CONFIG_RCU_NOCB_CPU_DEFAULT_ALL option.
|
the CONFIG_RCU_NOCB_CPU_DEFAULT_ALL option.
|
||||||
|
|
||||||
noiotrap [SH] Disables trapped I/O port accesses.
|
|
||||||
|
|
||||||
noirqdebug [X86-32] Disables the code which attempts to detect and
|
|
||||||
disable unhandled interrupt sources.
|
|
||||||
|
|
||||||
no_timer_check [X86,APIC] Disables the code which tests for
|
|
||||||
broken timer IRQ sources.
|
|
||||||
|
|
||||||
noisapnp [ISAPNP] Disables ISA PnP code.
|
|
||||||
|
|
||||||
noinitrd [RAM] Tells the kernel not to load any configured
|
noinitrd [RAM] Tells the kernel not to load any configured
|
||||||
initial RAM disk.
|
initial RAM disk.
|
||||||
|
|
||||||
|
@ -3775,6 +3743,13 @@
|
||||||
|
|
||||||
noinvpcid [X86] Disable the INVPCID cpu feature.
|
noinvpcid [X86] Disable the INVPCID cpu feature.
|
||||||
|
|
||||||
|
noiotrap [SH] Disables trapped I/O port accesses.
|
||||||
|
|
||||||
|
noirqdebug [X86-32] Disables the code which attempts to detect and
|
||||||
|
disable unhandled interrupt sources.
|
||||||
|
|
||||||
|
noisapnp [ISAPNP] Disables ISA PnP code.
|
||||||
|
|
||||||
nojitter [IA-64] Disables jitter checking for ITC timers.
|
nojitter [IA-64] Disables jitter checking for ITC timers.
|
||||||
|
|
||||||
nokaslr [KNL]
|
nokaslr [KNL]
|
||||||
|
@ -3782,18 +3757,10 @@
|
||||||
kernel and module base offset ASLR (Address Space
|
kernel and module base offset ASLR (Address Space
|
||||||
Layout Randomization).
|
Layout Randomization).
|
||||||
|
|
||||||
no-kvmclock [X86,KVM] Disable paravirtualized KVM clock driver
|
|
||||||
|
|
||||||
no-kvmapf [X86,KVM] Disable paravirtualized asynchronous page
|
no-kvmapf [X86,KVM] Disable paravirtualized asynchronous page
|
||||||
fault handling.
|
fault handling.
|
||||||
|
|
||||||
no-vmw-sched-clock
|
no-kvmclock [X86,KVM] Disable paravirtualized KVM clock driver
|
||||||
[X86,PV_OPS] Disable paravirtualized VMware scheduler
|
|
||||||
clock and use the default one.
|
|
||||||
|
|
||||||
no-steal-acc [X86,PV_OPS,ARM64,PPC/PSERIES] Disable paravirtualized
|
|
||||||
steal time accounting. steal time is computed, but
|
|
||||||
won't influence scheduler behaviour
|
|
||||||
|
|
||||||
nolapic [X86-32,APIC] Do not enable or use the local APIC.
|
nolapic [X86-32,APIC] Do not enable or use the local APIC.
|
||||||
|
|
||||||
|
@ -3806,10 +3773,6 @@
|
||||||
nomfgpt [X86-32] Disable Multi-Function General Purpose
|
nomfgpt [X86-32] Disable Multi-Function General Purpose
|
||||||
Timer usage (for AMD Geode machines).
|
Timer usage (for AMD Geode machines).
|
||||||
|
|
||||||
nonmi_ipi [X86] Disable using NMI IPIs during panic/reboot to
|
|
||||||
shutdown the other cpus. Instead use the REBOOT_VECTOR
|
|
||||||
irq.
|
|
||||||
|
|
||||||
nomodeset Disable kernel modesetting. Most systems' firmware
|
nomodeset Disable kernel modesetting. Most systems' firmware
|
||||||
sets up a display mode and provides framebuffer memory
|
sets up a display mode and provides framebuffer memory
|
||||||
for output. With nomodeset, DRM and fbdev drivers will
|
for output. With nomodeset, DRM and fbdev drivers will
|
||||||
|
@ -3822,6 +3785,10 @@
|
||||||
|
|
||||||
nomodule Disable module load
|
nomodule Disable module load
|
||||||
|
|
||||||
|
nonmi_ipi [X86] Disable using NMI IPIs during panic/reboot to
|
||||||
|
shutdown the other cpus. Instead use the REBOOT_VECTOR
|
||||||
|
irq.
|
||||||
|
|
||||||
nopat [X86] Disable PAT (page attribute table extension of
|
nopat [X86] Disable PAT (page attribute table extension of
|
||||||
pagetables) support.
|
pagetables) support.
|
||||||
|
|
||||||
|
@ -3830,6 +3797,9 @@
|
||||||
nopku [X86] Disable Memory Protection Keys CPU feature found
|
nopku [X86] Disable Memory Protection Keys CPU feature found
|
||||||
in some Intel CPUs.
|
in some Intel CPUs.
|
||||||
|
|
||||||
|
nopti [X86-64]
|
||||||
|
Equivalent to pti=off
|
||||||
|
|
||||||
nopv= [X86,XEN,KVM,HYPER_V,VMWARE]
|
nopv= [X86,XEN,KVM,HYPER_V,VMWARE]
|
||||||
Disables the PV optimizations forcing the guest to run
|
Disables the PV optimizations forcing the guest to run
|
||||||
as generic guest with no PV drivers. Currently support
|
as generic guest with no PV drivers. Currently support
|
||||||
|
@ -3849,21 +3819,77 @@
|
||||||
noresume [SWSUSP] Disables resume and restores original swap
|
noresume [SWSUSP] Disables resume and restores original swap
|
||||||
space.
|
space.
|
||||||
|
|
||||||
|
nosbagart [IA-64]
|
||||||
|
|
||||||
no-scroll [VGA] Disables scrollback.
|
no-scroll [VGA] Disables scrollback.
|
||||||
This is required for the Braillex ib80-piezo Braille
|
This is required for the Braillex ib80-piezo Braille
|
||||||
reader made by F.H. Papenmeier (Germany).
|
reader made by F.H. Papenmeier (Germany).
|
||||||
|
|
||||||
nosbagart [IA-64]
|
|
||||||
|
|
||||||
nosgx [X86-64,SGX] Disables Intel SGX kernel support.
|
nosgx [X86-64,SGX] Disables Intel SGX kernel support.
|
||||||
|
|
||||||
|
nosmap [PPC]
|
||||||
|
Disable SMAP (Supervisor Mode Access Prevention)
|
||||||
|
even if it is supported by processor.
|
||||||
|
|
||||||
|
nosmep [PPC64s]
|
||||||
|
Disable SMEP (Supervisor Mode Execution Prevention)
|
||||||
|
even if it is supported by processor.
|
||||||
|
|
||||||
nosmp [SMP] Tells an SMP kernel to act as a UP kernel,
|
nosmp [SMP] Tells an SMP kernel to act as a UP kernel,
|
||||||
and disable the IO APIC. legacy for "maxcpus=0".
|
and disable the IO APIC. legacy for "maxcpus=0".
|
||||||
|
|
||||||
|
nosmt [KNL,S390] Disable symmetric multithreading (SMT).
|
||||||
|
Equivalent to smt=1.
|
||||||
|
|
||||||
|
[KNL,X86] Disable symmetric multithreading (SMT).
|
||||||
|
nosmt=force: Force disable SMT, cannot be undone
|
||||||
|
via the sysfs control file.
|
||||||
|
|
||||||
nosoftlockup [KNL] Disable the soft-lockup detector.
|
nosoftlockup [KNL] Disable the soft-lockup detector.
|
||||||
|
|
||||||
|
nospec_store_bypass_disable
|
||||||
|
[HW] Disable all mitigations for the Speculative Store Bypass vulnerability
|
||||||
|
|
||||||
|
nospectre_bhb [ARM64] Disable all mitigations for Spectre-BHB (branch
|
||||||
|
history injection) vulnerability. System may allow data leaks
|
||||||
|
with this option.
|
||||||
|
|
||||||
|
nospectre_v1 [X86,PPC] Disable mitigations for Spectre Variant 1
|
||||||
|
(bounds check bypass). With this option data leaks are
|
||||||
|
possible in the system.
|
||||||
|
|
||||||
|
nospectre_v2 [X86,PPC_E500,ARM64] Disable all mitigations for
|
||||||
|
the Spectre variant 2 (indirect branch prediction)
|
||||||
|
vulnerability. System may allow data leaks with this
|
||||||
|
option.
|
||||||
|
|
||||||
|
no-steal-acc [X86,PV_OPS,ARM64,PPC/PSERIES] Disable paravirtualized
|
||||||
|
steal time accounting. steal time is computed, but
|
||||||
|
won't influence scheduler behaviour
|
||||||
|
|
||||||
nosync [HW,M68K] Disables sync negotiation for all devices.
|
nosync [HW,M68K] Disables sync negotiation for all devices.
|
||||||
|
|
||||||
|
no_timer_check [X86,APIC] Disables the code which tests for
|
||||||
|
broken timer IRQ sources.
|
||||||
|
|
||||||
|
no_uaccess_flush
|
||||||
|
[PPC] Don't flush the L1-D cache after accessing user data.
|
||||||
|
|
||||||
|
novmcoredd [KNL,KDUMP]
|
||||||
|
Disable device dump. Device dump allows drivers to
|
||||||
|
append dump data to vmcore so you can collect driver
|
||||||
|
specified debug info. Drivers can append the data
|
||||||
|
without any limit and this data is stored in memory,
|
||||||
|
so this may cause significant memory stress. Disabling
|
||||||
|
device dump can help save memory but the driver debug
|
||||||
|
data will be no longer available. This parameter
|
||||||
|
is only available when CONFIG_PROC_VMCORE_DEVICE_DUMP
|
||||||
|
is set.
|
||||||
|
|
||||||
|
no-vmw-sched-clock
|
||||||
|
[X86,PV_OPS] Disable paravirtualized VMware scheduler
|
||||||
|
clock and use the default one.
|
||||||
|
|
||||||
nowatchdog [KNL] Disable both lockup detectors, i.e.
|
nowatchdog [KNL] Disable both lockup detectors, i.e.
|
||||||
soft-lockup and NMI watchdog (hard-lockup).
|
soft-lockup and NMI watchdog (hard-lockup).
|
||||||
|
|
||||||
|
@ -3875,6 +3901,25 @@
|
||||||
LEGACY_XAPIC_DISABLED bit set in the
|
LEGACY_XAPIC_DISABLED bit set in the
|
||||||
IA32_XAPIC_DISABLE_STATUS MSR.
|
IA32_XAPIC_DISABLE_STATUS MSR.
|
||||||
|
|
||||||
|
noxsave [BUGS=X86] Disables x86 extended register state save
|
||||||
|
and restore using xsave. The kernel will fallback to
|
||||||
|
enabling legacy floating-point and sse state.
|
||||||
|
|
||||||
|
noxsaveopt [X86] Disables xsaveopt used in saving x86 extended
|
||||||
|
register states. The kernel will fall back to use
|
||||||
|
xsave to save the states. By using this parameter,
|
||||||
|
performance of saving the states is degraded because
|
||||||
|
xsave doesn't support modified optimization while
|
||||||
|
xsaveopt supports it on xsaveopt enabled systems.
|
||||||
|
|
||||||
|
noxsaves [X86] Disables xsaves and xrstors used in saving and
|
||||||
|
restoring x86 extended register state in compacted
|
||||||
|
form of xsave area. The kernel will fall back to use
|
||||||
|
xsaveopt and xrstor to save and restore the states
|
||||||
|
in standard form of xsave area. By using this
|
||||||
|
parameter, xsave area per process might occupy more
|
||||||
|
memory on xsaves enabled systems.
|
||||||
|
|
||||||
nps_mtm_hs_ctr= [KNL,ARC]
|
nps_mtm_hs_ctr= [KNL,ARC]
|
||||||
This parameter sets the maximum duration, in
|
This parameter sets the maximum duration, in
|
||||||
cycles, each HW thread of the CTOP can run
|
cycles, each HW thread of the CTOP can run
|
||||||
|
@ -3969,7 +4014,7 @@
|
||||||
[KNL] Minimal page reporting order
|
[KNL] Minimal page reporting order
|
||||||
Format: <integer>
|
Format: <integer>
|
||||||
Adjust the minimal page reporting order. The page
|
Adjust the minimal page reporting order. The page
|
||||||
reporting is disabled when it exceeds (MAX_ORDER-1).
|
reporting is disabled when it exceeds MAX_ORDER.
|
||||||
|
|
||||||
panic= [KNL] Kernel behaviour on panic: delay <timeout>
|
panic= [KNL] Kernel behaviour on panic: delay <timeout>
|
||||||
timeout > 0: seconds before rebooting
|
timeout > 0: seconds before rebooting
|
||||||
|
@ -4410,7 +4455,7 @@
|
||||||
and performance comparison.
|
and performance comparison.
|
||||||
|
|
||||||
pirq= [SMP,APIC] Manual mp-table setup
|
pirq= [SMP,APIC] Manual mp-table setup
|
||||||
See Documentation/x86/i386/IO-APIC.rst.
|
See Documentation/arch/x86/i386/IO-APIC.rst.
|
||||||
|
|
||||||
plip= [PPT,NET] Parallel port network link
|
plip= [PPT,NET] Parallel port network link
|
||||||
Format: { parport<nr> | timid | 0 }
|
Format: { parport<nr> | timid | 0 }
|
||||||
|
@ -4582,9 +4627,6 @@
|
||||||
|
|
||||||
Not specifying this option is equivalent to pti=auto.
|
Not specifying this option is equivalent to pti=auto.
|
||||||
|
|
||||||
nopti [X86-64]
|
|
||||||
Equivalent to pti=off
|
|
||||||
|
|
||||||
pty.legacy_count=
|
pty.legacy_count=
|
||||||
[KNL] Number of legacy pty's. Overwrites compiled-in
|
[KNL] Number of legacy pty's. Overwrites compiled-in
|
||||||
default number.
|
default number.
|
||||||
|
@ -5591,7 +5633,7 @@
|
||||||
|
|
||||||
serialnumber [BUGS=X86-32]
|
serialnumber [BUGS=X86-32]
|
||||||
|
|
||||||
sev=option[,option...] [X86-64] See Documentation/x86/x86_64/boot-options.rst
|
sev=option[,option...] [X86-64] See Documentation/arch/x86/x86_64/boot-options.rst
|
||||||
|
|
||||||
shapers= [NET]
|
shapers= [NET]
|
||||||
Maximal number of shapers.
|
Maximal number of shapers.
|
||||||
|
@ -6130,15 +6172,6 @@
|
||||||
later by a loaded module cannot be set this way.
|
later by a loaded module cannot be set this way.
|
||||||
Example: sysctl.vm.swappiness=40
|
Example: sysctl.vm.swappiness=40
|
||||||
|
|
||||||
sysfs.deprecated=0|1 [KNL]
|
|
||||||
Enable/disable old style sysfs layout for old udev
|
|
||||||
on older distributions. When this option is enabled
|
|
||||||
very new udev will not work anymore. When this option
|
|
||||||
is disabled (or CONFIG_SYSFS_DEPRECATED not compiled)
|
|
||||||
in older udev will not work anymore.
|
|
||||||
Default depends on CONFIG_SYSFS_DEPRECATED_V2 set in
|
|
||||||
the kernel configuration.
|
|
||||||
|
|
||||||
sysrq_always_enabled
|
sysrq_always_enabled
|
||||||
[KNL]
|
[KNL]
|
||||||
Ignore sysrq setting - this boot parameter will
|
Ignore sysrq setting - this boot parameter will
|
||||||
|
@ -6770,7 +6803,7 @@
|
||||||
Can be used multiple times for multiple devices.
|
Can be used multiple times for multiple devices.
|
||||||
|
|
||||||
vga= [BOOT,X86-32] Select a particular video mode
|
vga= [BOOT,X86-32] Select a particular video mode
|
||||||
See Documentation/x86/boot.rst and
|
See Documentation/arch/x86/boot.rst and
|
||||||
Documentation/admin-guide/svga.rst.
|
Documentation/admin-guide/svga.rst.
|
||||||
Use vga=ask for menu.
|
Use vga=ask for menu.
|
||||||
This is actually a boot loader parameter; the value is
|
This is actually a boot loader parameter; the value is
|
||||||
|
@ -6933,6 +6966,12 @@
|
||||||
When enabled, memory and cache locality will be
|
When enabled, memory and cache locality will be
|
||||||
impacted.
|
impacted.
|
||||||
|
|
||||||
|
writecombine= [LOONGARCH] Control the MAT (Memory Access Type) of
|
||||||
|
ioremap_wc().
|
||||||
|
|
||||||
|
on - Enable writecombine, use WUC for ioremap_wc()
|
||||||
|
off - Disable writecombine, use SUC for ioremap_wc()
|
||||||
|
|
||||||
x2apic_phys [X86-64,APIC] Use x2apic physical mode instead of
|
x2apic_phys [X86-64,APIC] Use x2apic physical mode instead of
|
||||||
default x2apic cluster mode on platforms
|
default x2apic cluster mode on platforms
|
||||||
supporting x2apic.
|
supporting x2apic.
|
||||||
|
@ -7059,20 +7098,3 @@
|
||||||
xmon commands.
|
xmon commands.
|
||||||
off xmon is disabled.
|
off xmon is disabled.
|
||||||
|
|
||||||
amd_pstate= [X86]
|
|
||||||
disable
|
|
||||||
Do not enable amd_pstate as the default
|
|
||||||
scaling driver for the supported processors
|
|
||||||
passive
|
|
||||||
Use amd_pstate as a scaling driver, driver requests a
|
|
||||||
desired performance on this abstract scale and the power
|
|
||||||
management firmware translates the requests into actual
|
|
||||||
hardware states (core frequency, data fabric and memory
|
|
||||||
clocks etc.)
|
|
||||||
active
|
|
||||||
Use amd_pstate_epp driver instance as the scaling driver,
|
|
||||||
driver provides a hint to the hardware if software wants
|
|
||||||
to bias toward performance (0x0) or energy efficiency (0xff)
|
|
||||||
to the CPPC firmware. then CPPC power algorithm will
|
|
||||||
calculate the runtime workload and adjust the realtime cores
|
|
||||||
frequency.
|
|
||||||
|
|
|
@ -55,6 +55,15 @@ Miscellaneous:
|
||||||
you can control the CEC line through this driver. This supports error
|
you can control the CEC line through this driver. This supports error
|
||||||
injection as well.
|
injection as well.
|
||||||
|
|
||||||
|
- cec-gpio and Allwinner A10 (or any other driver that uses the CEC pin
|
||||||
|
framework to drive the CEC pin directly): the CEC pin framework uses
|
||||||
|
high-resolution timers. These timers are affected by NTP daemons that
|
||||||
|
speed up or slow down the clock to sync with the official time. The
|
||||||
|
chronyd server will by default increase or decrease the clock by
|
||||||
|
1/12th. This will cause the CEC timings to go out of spec. To fix this,
|
||||||
|
add a 'maxslewrate 40000' line to chronyd.conf. This limits the clock
|
||||||
|
frequency change to 1/25th, which keeps the CEC timings within spec.
|
||||||
|
|
||||||
|
|
||||||
Utilities
|
Utilities
|
||||||
=========
|
=========
|
||||||
|
@ -296,69 +305,71 @@ broadcast messages twice to reduce the chance of them being lost. Specifically
|
||||||
Making a CEC debugger
|
Making a CEC debugger
|
||||||
=====================
|
=====================
|
||||||
|
|
||||||
By using a Raspberry Pi 2B/3/4 and some cheap components you can make
|
By using a Raspberry Pi 4B and some cheap components you can make
|
||||||
your own low-level CEC debugger.
|
your own low-level CEC debugger.
|
||||||
|
|
||||||
Here is a picture of my setup:
|
The critical component is one of these HDMI female-female passthrough connectors
|
||||||
|
(full soldering type 1):
|
||||||
https://hverkuil.home.xs4all.nl/rpi3-cec.jpg
|
|
||||||
|
|
||||||
It's a Raspberry Pi 3 together with a breadboard and some breadboard wires:
|
|
||||||
|
|
||||||
http://www.dx.com/p/diy-40p-male-to-female-male-to-male-female-to-female-dupont-line-wire-3pcs-356089#.WYLOOXWGN7I
|
|
||||||
|
|
||||||
Finally on of these HDMI female-female passthrough connectors (full soldering type 1):
|
|
||||||
|
|
||||||
https://elabbay.myshopify.com/collections/camera/products/hdmi-af-af-v1a-hdmi-type-a-female-to-hdmi-type-a-female-pass-through-adapter-breakout-board?variant=45533926147
|
https://elabbay.myshopify.com/collections/camera/products/hdmi-af-af-v1a-hdmi-type-a-female-to-hdmi-type-a-female-pass-through-adapter-breakout-board?variant=45533926147
|
||||||
|
|
||||||
We've tested this and it works up to 4kp30 (297 MHz). The quality is not high
|
The video quality is variable and certainly not enough to pass-through 4kp60
|
||||||
enough to pass-through 4kp60 (594 MHz).
|
(594 MHz) video. You might be able to support 4kp30, but more likely you will
|
||||||
|
be limited to 1080p60 (148.5 MHz). But for CEC testing that is fine.
|
||||||
|
|
||||||
I also added an RTC and a breakout shield:
|
You need a breadboard and some breadboard wires:
|
||||||
|
|
||||||
https://www.amazon.com/Makerfire%C2%AE-Raspberry-Module-DS1307-Battery/dp/B00ZOXWHK4
|
http://www.dx.com/p/diy-40p-male-to-female-male-to-male-female-to-female-dupont-line-wire-3pcs-356089#.WYLOOXWGN7I
|
||||||
|
|
||||||
https://www.dx.com/p/raspberry-pi-gpio-expansion-board-breadboard-easy-multiplexing-board-one-to-three-with-screw-for-raspberry-pi-2-3-b-b-2729992.html#.YGRCG0MzZ7I
|
If you want to monitor the HPD and/or 5V lines as well, then you need one of
|
||||||
|
these 5V to 3.3V level shifters:
|
||||||
These two are not needed but they make life a bit easier.
|
|
||||||
|
|
||||||
If you want to monitor the HPD line as well, then you need one of these
|
|
||||||
level shifters:
|
|
||||||
|
|
||||||
https://www.adafruit.com/product/757
|
https://www.adafruit.com/product/757
|
||||||
|
|
||||||
(This is just where I got these components, there are many other places you
|
(This is just where I got these components, there are many other places you
|
||||||
can get similar things).
|
can get similar things).
|
||||||
|
|
||||||
The CEC pin of the HDMI connector needs to be connected to these pins:
|
The ground pin of the HDMI connector needs to be connected to a ground
|
||||||
CE0/IO8 and CE1/IO7 (pull-up GPIOs). The (optional) HPD pin of the HDMI
|
pin of the Raspberry Pi, of course.
|
||||||
connector should be connected (via a level shifter to convert the 5V
|
|
||||||
to 3.3V) to these pins: IO17 and IO27. The (optional) 5V pin of the HDMI
|
|
||||||
connector should be connected (via a level shifter) to these pins: IO22
|
|
||||||
and IO24. Monitoring the HPD an 5V lines is not necessary, but it is helpful.
|
|
||||||
|
|
||||||
This kernel patch will hook up the cec-gpio driver correctly to
|
The CEC pin of the HDMI connector needs to be connected to these pins:
|
||||||
e.g. ``arch/arm/boot/dts/bcm2837-rpi-3-b-plus.dts``::
|
GPIO 6 and GPIO 7. The optional HPD pin of the HDMI connector should
|
||||||
|
be connected via the level shifter to these pins: GPIO 23 and GPIO 12.
|
||||||
|
The optional 5V pin of the HDMI connector should be connected via the
|
||||||
|
level shifter to these pins: GPIO 25 and GPIO 22. Monitoring the HPD and
|
||||||
|
5V lines is not necessary, but it is helpful.
|
||||||
|
|
||||||
|
This device tree addition in ``arch/arm/boot/dts/bcm2711-rpi-4-b.dts``
|
||||||
|
will hook up the cec-gpio driver correctly::
|
||||||
|
|
||||||
|
cec@6 {
|
||||||
|
compatible = "cec-gpio";
|
||||||
|
cec-gpios = <&gpio 6 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
|
||||||
|
hpd-gpios = <&gpio 23 GPIO_ACTIVE_HIGH>;
|
||||||
|
v5-gpios = <&gpio 25 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
|
||||||
cec@7 {
|
cec@7 {
|
||||||
compatible = "cec-gpio";
|
compatible = "cec-gpio";
|
||||||
cec-gpios = <&gpio 7 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
|
cec-gpios = <&gpio 7 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
|
||||||
hpd-gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
|
hpd-gpios = <&gpio 12 GPIO_ACTIVE_HIGH>;
|
||||||
v5-gpios = <&gpio 22 GPIO_ACTIVE_HIGH>;
|
v5-gpios = <&gpio 22 GPIO_ACTIVE_HIGH>;
|
||||||
};
|
};
|
||||||
|
|
||||||
cec@8 {
|
If you haven't hooked up the HPD and/or 5V lines, then just delete those
|
||||||
compatible = "cec-gpio";
|
lines.
|
||||||
cec-gpios = <&gpio 8 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
|
|
||||||
hpd-gpios = <&gpio 27 GPIO_ACTIVE_HIGH>;
|
|
||||||
v5-gpios = <&gpio 24 GPIO_ACTIVE_HIGH>;
|
|
||||||
};
|
|
||||||
|
|
||||||
This dts change will enable two cec GPIO devices: I typically use one to
|
This dts change will enable two cec GPIO devices: I typically use one to
|
||||||
send/receive CEC commands and the other to monitor. If you monitor using
|
send/receive CEC commands and the other to monitor. If you monitor using
|
||||||
an unconfigured CEC adapter then it will use GPIO interrupts which makes
|
an unconfigured CEC adapter then it will use GPIO interrupts which makes
|
||||||
monitoring very accurate.
|
monitoring very accurate.
|
||||||
|
|
||||||
|
If you just want to monitor traffic, then a single instance is sufficient.
|
||||||
|
The minimum configuration is one HDMI female-female passthrough connector
|
||||||
|
and two female-female breadboard wires: one for connecting the HDMI ground
|
||||||
|
pin to a ground pin on the Raspberry Pi, and the other to connect the HDMI
|
||||||
|
CEC pin to GPIO 6 on the Raspberry Pi.
|
||||||
|
|
||||||
The documentation on how to use the error injection is here: :ref:`cec_pin_error_inj`.
|
The documentation on how to use the error injection is here: :ref:`cec_pin_error_inj`.
|
||||||
|
|
||||||
``cec-ctl --monitor-pin`` will do low-level CEC bus sniffing and analysis.
|
``cec-ctl --monitor-pin`` will do low-level CEC bus sniffing and analysis.
|
||||||
|
|
|
@ -72,17 +72,13 @@ imx319 Sony IMX319 sensor
|
||||||
imx334 Sony IMX334 sensor
|
imx334 Sony IMX334 sensor
|
||||||
imx355 Sony IMX355 sensor
|
imx355 Sony IMX355 sensor
|
||||||
imx412 Sony IMX412 sensor
|
imx412 Sony IMX412 sensor
|
||||||
m5mols Fujitsu M-5MOLS 8MP sensor
|
|
||||||
mt9m001 mt9m001
|
mt9m001 mt9m001
|
||||||
mt9m032 MT9M032 camera sensor
|
|
||||||
mt9m111 mt9m111, mt9m112 and mt9m131
|
mt9m111 mt9m111, mt9m112 and mt9m131
|
||||||
mt9p031 Aptina MT9P031
|
mt9p031 Aptina MT9P031
|
||||||
mt9t001 Aptina MT9T001
|
|
||||||
mt9t112 Aptina MT9T111/MT9T112
|
mt9t112 Aptina MT9T111/MT9T112
|
||||||
mt9v011 Micron mt9v011 sensor
|
mt9v011 Micron mt9v011 sensor
|
||||||
mt9v032 Micron MT9V032 sensor
|
mt9v032 Micron MT9V032 sensor
|
||||||
mt9v111 Aptina MT9V111 sensor
|
mt9v111 Aptina MT9V111 sensor
|
||||||
noon010pc30 Siliconfile NOON010PC30 sensor
|
|
||||||
ov13858 OmniVision OV13858 sensor
|
ov13858 OmniVision OV13858 sensor
|
||||||
ov13b10 OmniVision OV13B10 sensor
|
ov13b10 OmniVision OV13B10 sensor
|
||||||
ov2640 OmniVision OV2640 sensor
|
ov2640 OmniVision OV2640 sensor
|
||||||
|
@ -109,9 +105,6 @@ s5c73m3 Samsung S5C73M3 sensor
|
||||||
s5k4ecgx Samsung S5K4ECGX sensor
|
s5k4ecgx Samsung S5K4ECGX sensor
|
||||||
s5k5baf Samsung S5K5BAF sensor
|
s5k5baf Samsung S5K5BAF sensor
|
||||||
s5k6a3 Samsung S5K6A3 sensor
|
s5k6a3 Samsung S5K6A3 sensor
|
||||||
s5k6aa Samsung S5K6AAFX sensor
|
|
||||||
sr030pc30 Siliconfile SR030PC30 sensor
|
|
||||||
vs6624 ST VS6624 sensor
|
|
||||||
============ ==========================================================
|
============ ==========================================================
|
||||||
|
|
||||||
Flash devices
|
Flash devices
|
||||||
|
@ -222,7 +215,6 @@ Video encoders
|
||||||
============ ==========================================================
|
============ ==========================================================
|
||||||
Driver Name
|
Driver Name
|
||||||
============ ==========================================================
|
============ ==========================================================
|
||||||
ad9389b Analog Devices AD9389B encoder
|
|
||||||
adv7170 Analog Devices ADV7170 video encoder
|
adv7170 Analog Devices ADV7170 video encoder
|
||||||
adv7175 Analog Devices ADV7175 video encoder
|
adv7175 Analog Devices ADV7175 video encoder
|
||||||
adv7343 ADV7343 video encoder
|
adv7343 ADV7343 video encoder
|
||||||
|
|
|
@ -20,7 +20,7 @@ content which can be replaced by a single write-protected page (which
|
||||||
is automatically copied if a process later wants to update its
|
is automatically copied if a process later wants to update its
|
||||||
content). The amount of pages that KSM daemon scans in a single pass
|
content). The amount of pages that KSM daemon scans in a single pass
|
||||||
and the time between the passes are configured using :ref:`sysfs
|
and the time between the passes are configured using :ref:`sysfs
|
||||||
intraface <ksm_sysfs>`
|
interface <ksm_sysfs>`
|
||||||
|
|
||||||
KSM only merges anonymous (private) pages, never pagecache (file) pages.
|
KSM only merges anonymous (private) pages, never pagecache (file) pages.
|
||||||
KSM's merged pages were originally locked into kernel memory, but can now
|
KSM's merged pages were originally locked into kernel memory, but can now
|
||||||
|
@ -157,6 +157,8 @@ stable_node_chains_prune_millisecs
|
||||||
|
|
||||||
The effectiveness of KSM and MADV_MERGEABLE is shown in ``/sys/kernel/mm/ksm/``:
|
The effectiveness of KSM and MADV_MERGEABLE is shown in ``/sys/kernel/mm/ksm/``:
|
||||||
|
|
||||||
|
general_profit
|
||||||
|
how effective is KSM. The calculation is explained below.
|
||||||
pages_shared
|
pages_shared
|
||||||
how many shared pages are being used
|
how many shared pages are being used
|
||||||
pages_sharing
|
pages_sharing
|
||||||
|
@ -207,7 +209,8 @@ several times, which are unprofitable memory consumed.
|
||||||
ksm_rmap_items * sizeof(rmap_item).
|
ksm_rmap_items * sizeof(rmap_item).
|
||||||
|
|
||||||
where ksm_merging_pages is shown under the directory ``/proc/<pid>/``,
|
where ksm_merging_pages is shown under the directory ``/proc/<pid>/``,
|
||||||
and ksm_rmap_items is shown in ``/proc/<pid>/ksm_stat``.
|
and ksm_rmap_items is shown in ``/proc/<pid>/ksm_stat``. The process profit
|
||||||
|
is also shown in ``/proc/<pid>/ksm_stat`` as ksm_process_profit.
|
||||||
|
|
||||||
From the perspective of application, a high ratio of ``ksm_rmap_items`` to
|
From the perspective of application, a high ratio of ``ksm_rmap_items`` to
|
||||||
``ksm_merging_pages`` means a bad madvise-applied policy, so developers or
|
``ksm_merging_pages`` means a bad madvise-applied policy, so developers or
|
||||||
|
|
|
@ -91,9 +91,9 @@ Short descriptions to the page flags
|
||||||
The page is being locked for exclusive access, e.g. by undergoing read/write
|
The page is being locked for exclusive access, e.g. by undergoing read/write
|
||||||
IO.
|
IO.
|
||||||
7 - SLAB
|
7 - SLAB
|
||||||
The page is managed by the SLAB/SLOB/SLUB/SLQB kernel memory allocator.
|
The page is managed by the SLAB/SLUB kernel memory allocator.
|
||||||
When compound page is used, SLUB/SLQB will only set this flag on the head
|
When compound page is used, either will only set this flag on the head
|
||||||
page; SLOB will not flag it at all.
|
page.
|
||||||
10 - BUDDY
|
10 - BUDDY
|
||||||
A free memory block managed by the buddy system allocator.
|
A free memory block managed by the buddy system allocator.
|
||||||
The buddy system organizes free memory in blocks of various orders.
|
The buddy system organizes free memory in blocks of various orders.
|
||||||
|
|
|
@ -219,6 +219,31 @@ former will have ``UFFD_PAGEFAULT_FLAG_WP`` set, the latter
|
||||||
you still need to supply a page when ``UFFDIO_REGISTER_MODE_MISSING`` was
|
you still need to supply a page when ``UFFDIO_REGISTER_MODE_MISSING`` was
|
||||||
used.
|
used.
|
||||||
|
|
||||||
|
Userfaultfd write-protect mode currently behave differently on none ptes
|
||||||
|
(when e.g. page is missing) over different types of memories.
|
||||||
|
|
||||||
|
For anonymous memory, ``ioctl(UFFDIO_WRITEPROTECT)`` will ignore none ptes
|
||||||
|
(e.g. when pages are missing and not populated). For file-backed memories
|
||||||
|
like shmem and hugetlbfs, none ptes will be write protected just like a
|
||||||
|
present pte. In other words, there will be a userfaultfd write fault
|
||||||
|
message generated when writing to a missing page on file typed memories,
|
||||||
|
as long as the page range was write-protected before. Such a message will
|
||||||
|
not be generated on anonymous memories by default.
|
||||||
|
|
||||||
|
If the application wants to be able to write protect none ptes on anonymous
|
||||||
|
memory, one can pre-populate the memory with e.g. MADV_POPULATE_READ. On
|
||||||
|
newer kernels, one can also detect the feature UFFD_FEATURE_WP_UNPOPULATED
|
||||||
|
and set the feature bit in advance to make sure none ptes will also be
|
||||||
|
write protected even upon anonymous memory.
|
||||||
|
|
||||||
|
When using ``UFFDIO_REGISTER_MODE_WP`` in combination with either
|
||||||
|
``UFFDIO_REGISTER_MODE_MISSING`` or ``UFFDIO_REGISTER_MODE_MINOR``, when
|
||||||
|
resolving missing / minor faults with ``UFFDIO_COPY`` or ``UFFDIO_CONTINUE``
|
||||||
|
respectively, it may be desirable for the new page / mapping to be
|
||||||
|
write-protected (so future writes will also result in a WP fault). These ioctls
|
||||||
|
support a mode flag (``UFFDIO_COPY_MODE_WP`` or ``UFFDIO_CONTINUE_MODE_WP``
|
||||||
|
respectively) to configure the mapping this way.
|
||||||
|
|
||||||
QEMU/KVM
|
QEMU/KVM
|
||||||
========
|
========
|
||||||
|
|
||||||
|
|
|
@ -303,13 +303,18 @@ efficiency frequency management method on AMD processors.
|
||||||
AMD Pstate Driver Operation Modes
|
AMD Pstate Driver Operation Modes
|
||||||
=================================
|
=================================
|
||||||
|
|
||||||
``amd_pstate`` CPPC has two operation modes: CPPC Autonomous(active) mode and
|
``amd_pstate`` CPPC has 3 operation modes: autonomous (active) mode,
|
||||||
CPPC non-autonomous(passive) mode.
|
non-autonomous (passive) mode and guided autonomous (guided) mode.
|
||||||
active mode and passive mode can be chosen by different kernel parameters.
|
Active/passive/guided mode can be chosen by different kernel parameters.
|
||||||
When in Autonomous mode, CPPC ignores requests done in the Desired Performance
|
|
||||||
Target register and takes into account only the values set to the Minimum requested
|
- In autonomous mode, platform ignores the desired performance level request
|
||||||
performance, Maximum requested performance, and Energy Performance Preference
|
and takes into account only the values set to the minimum, maximum and energy
|
||||||
registers. When Autonomous is disabled, it only considers the Desired Performance Target.
|
performance preference registers.
|
||||||
|
- In non-autonomous mode, platform gets desired performance level
|
||||||
|
from OS directly through Desired Performance Register.
|
||||||
|
- In guided-autonomous mode, platform sets operating performance level
|
||||||
|
autonomously according to the current workload and within the limits set by
|
||||||
|
OS through min and max performance registers.
|
||||||
|
|
||||||
Active Mode
|
Active Mode
|
||||||
------------
|
------------
|
||||||
|
@ -338,6 +343,15 @@ to the Performance Reduction Tolerance register. Above the nominal performance l
|
||||||
processor must provide at least nominal performance requested and go higher if current
|
processor must provide at least nominal performance requested and go higher if current
|
||||||
operating conditions allow.
|
operating conditions allow.
|
||||||
|
|
||||||
|
Guided Mode
|
||||||
|
-----------
|
||||||
|
|
||||||
|
``amd_pstate=guided``
|
||||||
|
|
||||||
|
If ``amd_pstate=guided`` is passed to kernel command line option then this mode
|
||||||
|
is activated. In this mode, driver requests minimum and maximum performance
|
||||||
|
level and the platform autonomously selects a performance level in this range
|
||||||
|
and appropriate to the current workload.
|
||||||
|
|
||||||
User Space Interface in ``sysfs`` - General
|
User Space Interface in ``sysfs`` - General
|
||||||
===========================================
|
===========================================
|
||||||
|
@ -358,6 +372,9 @@ control its functionality at the system level. They are located in the
|
||||||
"passive"
|
"passive"
|
||||||
The driver is functional and in the ``passive mode``
|
The driver is functional and in the ``passive mode``
|
||||||
|
|
||||||
|
"guided"
|
||||||
|
The driver is functional and in the ``guided mode``
|
||||||
|
|
||||||
"disable"
|
"disable"
|
||||||
The driver is unregistered and not functional now.
|
The driver is unregistered and not functional now.
|
||||||
|
|
||||||
|
|
1092
Documentation/admin-guide/quickly-build-trimmed-linux.rst
Normal file
1092
Documentation/admin-guide/quickly-build-trimmed-linux.rst
Normal file
File diff suppressed because it is too large
Load diff
|
@ -199,7 +199,7 @@ Architecture (MCA)\ [#f3]_.
|
||||||
mode).
|
mode).
|
||||||
|
|
||||||
.. [#f3] For more details about the Machine Check Architecture (MCA),
|
.. [#f3] For more details about the Machine Check Architecture (MCA),
|
||||||
please read Documentation/x86/x86_64/machinecheck.rst at the Kernel tree.
|
please read Documentation/arch/x86/x86_64/machinecheck.rst at the Kernel tree.
|
||||||
|
|
||||||
EDAC - Error Detection And Correction
|
EDAC - Error Detection And Correction
|
||||||
*************************************
|
*************************************
|
||||||
|
|
|
@ -395,7 +395,7 @@ might want to be aware of; it for example explains how to add your issue to the
|
||||||
list of tracked regressions, to ensure it won't fall through the cracks.
|
list of tracked regressions, to ensure it won't fall through the cracks.
|
||||||
|
|
||||||
What qualifies as security issue is left to your judgment. Consider reading
|
What qualifies as security issue is left to your judgment. Consider reading
|
||||||
Documentation/admin-guide/security-bugs.rst before proceeding, as it
|
Documentation/process/security-bugs.rst before proceeding, as it
|
||||||
provides additional details how to best handle security issues.
|
provides additional details how to best handle security issues.
|
||||||
|
|
||||||
An issue is a 'really severe problem' when something totally unacceptably bad
|
An issue is a 'really severe problem' when something totally unacceptably bad
|
||||||
|
@ -1269,7 +1269,7 @@ them when sending the report by mail. If you filed it in a bug tracker, forward
|
||||||
the report's text to these addresses; but on top of it put a small note where
|
the report's text to these addresses; but on top of it put a small note where
|
||||||
you mention that you filed it with a link to the ticket.
|
you mention that you filed it with a link to the ticket.
|
||||||
|
|
||||||
See Documentation/admin-guide/security-bugs.rst for more information.
|
See Documentation/process/security-bugs.rst for more information.
|
||||||
|
|
||||||
|
|
||||||
Duties after the report went out
|
Duties after the report went out
|
||||||
|
|
|
@ -33,8 +33,11 @@ The format of this option is::
|
||||||
9600n8. The maximum baudrate is 115200.
|
9600n8. The maximum baudrate is 115200.
|
||||||
|
|
||||||
You can specify multiple console= options on the kernel command line.
|
You can specify multiple console= options on the kernel command line.
|
||||||
Output will appear on all of them. The last device will be used when
|
|
||||||
you open ``/dev/console``. So, for example::
|
The behavior is well defined when each device type is mentioned only once.
|
||||||
|
In this case, the output will appear on all requested consoles. And
|
||||||
|
the last device will be used when you open ``/dev/console``.
|
||||||
|
So, for example::
|
||||||
|
|
||||||
console=ttyS1,9600 console=tty0
|
console=ttyS1,9600 console=tty0
|
||||||
|
|
||||||
|
@ -42,7 +45,34 @@ defines that opening ``/dev/console`` will get you the current foreground
|
||||||
virtual console, and kernel messages will appear on both the VGA
|
virtual console, and kernel messages will appear on both the VGA
|
||||||
console and the 2nd serial port (ttyS1 or COM2) at 9600 baud.
|
console and the 2nd serial port (ttyS1 or COM2) at 9600 baud.
|
||||||
|
|
||||||
Note that you can only define one console per device type (serial, video).
|
The behavior is more complicated when the same device type is defined more
|
||||||
|
times. In this case, there are the following two rules:
|
||||||
|
|
||||||
|
1. The output will appear only on the first device of each defined type.
|
||||||
|
|
||||||
|
2. ``/dev/console`` will be associated with the first registered device.
|
||||||
|
Where the registration order depends on how kernel initializes various
|
||||||
|
subsystems.
|
||||||
|
|
||||||
|
This rule is used also when the last console= parameter is not used
|
||||||
|
for other reasons. For example, because of a typo or because
|
||||||
|
the hardware is not available.
|
||||||
|
|
||||||
|
The result might be surprising. For example, the following two command
|
||||||
|
lines have the same result:
|
||||||
|
|
||||||
|
console=ttyS1,9600 console=tty0 console=tty1
|
||||||
|
console=tty0 console=ttyS1,9600 console=tty1
|
||||||
|
|
||||||
|
The kernel messages are printed only on ``tty0`` and ``ttyS1``. And
|
||||||
|
``/dev/console`` gets associated with ``tty0``. It is because kernel
|
||||||
|
tries to register graphical consoles before serial ones. It does it
|
||||||
|
because of the default behavior when no console device is specified,
|
||||||
|
see below.
|
||||||
|
|
||||||
|
Note that the last ``console=tty1`` parameter still makes a difference.
|
||||||
|
The kernel command line is used also by systemd. It would use the last
|
||||||
|
defined ``tty1`` as the login console.
|
||||||
|
|
||||||
If no console device is specified, the first device found capable of
|
If no console device is specified, the first device found capable of
|
||||||
acting as a system console will be used. At this time, the system
|
acting as a system console will be used. At this time, the system
|
||||||
|
|
|
@ -73,6 +73,10 @@ thread-wide, without the need to invoke the kernel directly. selector
|
||||||
can be set to SYSCALL_DISPATCH_FILTER_ALLOW or SYSCALL_DISPATCH_FILTER_BLOCK.
|
can be set to SYSCALL_DISPATCH_FILTER_ALLOW or SYSCALL_DISPATCH_FILTER_BLOCK.
|
||||||
Any other value should terminate the program with a SIGSYS.
|
Any other value should terminate the program with a SIGSYS.
|
||||||
|
|
||||||
|
Additionally, a tasks syscall user dispatch configuration can be peeked
|
||||||
|
and poked via the PTRACE_(GET|SET)_SYSCALL_USER_DISPATCH_CONFIG ptrace
|
||||||
|
requests. This is useful for checkpoint/restart software.
|
||||||
|
|
||||||
Security Notes
|
Security Notes
|
||||||
--------------
|
--------------
|
||||||
|
|
||||||
|
|
|
@ -95,7 +95,7 @@ is 0x15 and the full version number is 0x234, this file will contain
|
||||||
the value 340 = 0x154.
|
the value 340 = 0x154.
|
||||||
|
|
||||||
See the ``type_of_loader`` and ``ext_loader_type`` fields in
|
See the ``type_of_loader`` and ``ext_loader_type`` fields in
|
||||||
Documentation/x86/boot.rst for additional information.
|
Documentation/arch/x86/boot.rst for additional information.
|
||||||
|
|
||||||
|
|
||||||
bootloader_version (x86 only)
|
bootloader_version (x86 only)
|
||||||
|
@ -105,7 +105,7 @@ The complete bootloader version number. In the example above, this
|
||||||
file will contain the value 564 = 0x234.
|
file will contain the value 564 = 0x234.
|
||||||
|
|
||||||
See the ``type_of_loader`` and ``ext_loader_ver`` fields in
|
See the ``type_of_loader`` and ``ext_loader_ver`` fields in
|
||||||
Documentation/x86/boot.rst for additional information.
|
Documentation/arch/x86/boot.rst for additional information.
|
||||||
|
|
||||||
|
|
||||||
bpf_stats_enabled
|
bpf_stats_enabled
|
||||||
|
|
|
@ -3,11 +3,10 @@ Unicode support
|
||||||
|
|
||||||
Last update: 2005-01-17, version 1.4
|
Last update: 2005-01-17, version 1.4
|
||||||
|
|
||||||
This file is maintained by H. Peter Anvin <unicode@lanana.org> as part
|
Note: The original version of this document, which was maintained at
|
||||||
of the Linux Assigned Names And Numbers Authority (LANANA) project.
|
lanana.org as part of the Linux Assigned Names And Numbers Authority
|
||||||
The current version can be found at:
|
(LANANA) project, is no longer existent. So, this version in the
|
||||||
|
mainline Linux kernel is now the maintained main document.
|
||||||
http://www.lanana.org/docs/unicode/admin-guide/unicode.rst
|
|
||||||
|
|
||||||
Introduction
|
Introduction
|
||||||
------------
|
------------
|
||||||
|
|
|
@ -236,13 +236,14 @@ the dates listed above.
|
||||||
Deprecated Mount Options
|
Deprecated Mount Options
|
||||||
========================
|
========================
|
||||||
|
|
||||||
=========================== ================
|
============================ ================
|
||||||
Name Removal Schedule
|
Name Removal Schedule
|
||||||
=========================== ================
|
============================ ================
|
||||||
Mounting with V4 filesystem September 2030
|
Mounting with V4 filesystem September 2030
|
||||||
|
Mounting ascii-ci filesystem September 2030
|
||||||
ikeep/noikeep September 2025
|
ikeep/noikeep September 2025
|
||||||
attr2/noattr2 September 2025
|
attr2/noattr2 September 2025
|
||||||
=========================== ================
|
============================ ================
|
||||||
|
|
||||||
|
|
||||||
Removed Mount Options
|
Removed Mount Options
|
||||||
|
|
|
@ -10,18 +10,18 @@ implementation.
|
||||||
:maxdepth: 2
|
:maxdepth: 2
|
||||||
|
|
||||||
arc/index
|
arc/index
|
||||||
arm/index
|
../arm/index
|
||||||
arm64/index
|
../arm64/index
|
||||||
ia64/index
|
ia64/index
|
||||||
loongarch/index
|
../loongarch/index
|
||||||
m68k/index
|
m68k/index
|
||||||
mips/index
|
../mips/index
|
||||||
nios2/index
|
nios2/index
|
||||||
openrisc/index
|
openrisc/index
|
||||||
parisc/index
|
parisc/index
|
||||||
powerpc/index
|
../powerpc/index
|
||||||
riscv/index
|
../riscv/index
|
||||||
s390/index
|
../s390/index
|
||||||
sh/index
|
sh/index
|
||||||
sparc/index
|
sparc/index
|
||||||
x86/index
|
x86/index
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue