Unverified Commit 5bd249ae authored by Mark Brown's avatar Mark Brown
Browse files

spi: Merge up v6.8 release

An i.MX fix depends on other fixes that were sent to v6.8.
parents 7397175c e8f897f4
Loading
Loading
Loading
Loading
+14 −4
Original line number Diff line number Diff line
@@ -191,10 +191,11 @@ Gao Xiang <xiang@kernel.org> <gaoxiang25@huawei.com>
Gao Xiang <xiang@kernel.org> <hsiangkao@aol.com>
Gao Xiang <xiang@kernel.org> <hsiangkao@linux.alibaba.com>
Gao Xiang <xiang@kernel.org> <hsiangkao@redhat.com>
Geliang Tang <geliang.tang@linux.dev> <geliang.tang@suse.com>
Geliang Tang <geliang.tang@linux.dev> <geliangtang@xiaomi.com>
Geliang Tang <geliang.tang@linux.dev> <geliangtang@gmail.com>
Geliang Tang <geliang.tang@linux.dev> <geliangtang@163.com>
Geliang Tang <geliang@kernel.org> <geliang.tang@linux.dev>
Geliang Tang <geliang@kernel.org> <geliang.tang@suse.com>
Geliang Tang <geliang@kernel.org> <geliangtang@xiaomi.com>
Geliang Tang <geliang@kernel.org> <geliangtang@gmail.com>
Geliang Tang <geliang@kernel.org> <geliangtang@163.com>
Georgi Djakov <djakov@kernel.org> <georgi.djakov@linaro.org>
Gerald Schaefer <gerald.schaefer@linux.ibm.com> <geraldsc@de.ibm.com>
Gerald Schaefer <gerald.schaefer@linux.ibm.com> <gerald.schaefer@de.ibm.com>
@@ -289,6 +290,7 @@ Johan Hovold <johan@kernel.org> <johan@hovoldconsulting.com>
John Crispin <john@phrozen.org> <blogic@openwrt.org>
John Fastabend <john.fastabend@gmail.com> <john.r.fastabend@intel.com>
John Keeping <john@keeping.me.uk> <john@metanate.com>
John Moon <john@jmoon.dev> <quic_johmoo@quicinc.com>
John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
John Stultz <johnstul@us.ibm.com>
<jon.toppins+linux@gmail.com> <jtoppins@cumulusnetworks.com>
@@ -323,6 +325,7 @@ Kenneth W Chen <kenneth.w.chen@intel.com>
Kenneth Westfield <quic_kwestfie@quicinc.com> <kwestfie@codeaurora.org>
Kiran Gunda <quic_kgunda@quicinc.com> <kgunda@codeaurora.org>
Kirill Tkhai <tkhai@ya.ru> <ktkhai@virtuozzo.com>
Kishon Vijay Abraham I <kishon@kernel.org> <kishon@ti.com>
Konstantin Khlebnikov <koct9i@gmail.com> <khlebnikov@yandex-team.ru>
Konstantin Khlebnikov <koct9i@gmail.com> <k.khlebnikov@samsung.com>
Koushik <raghavendra.koushik@neterion.com>
@@ -344,6 +347,7 @@ Leonid I Ananiev <leonid.i.ananiev@intel.com>
Leon Romanovsky <leon@kernel.org> <leon@leon.nu>
Leon Romanovsky <leon@kernel.org> <leonro@mellanox.com>
Leon Romanovsky <leon@kernel.org> <leonro@nvidia.com>
Leo Yan <leo.yan@linux.dev> <leo.yan@linaro.org>
Liam Mark <quic_lmark@quicinc.com> <lmark@codeaurora.org>
Linas Vepstas <linas@austin.ibm.com>
Linus Lüssing <linus.luessing@c0d3.blue> <linus.luessing@ascom.ch>
@@ -550,6 +554,7 @@ Senthilkumar N L <quic_snlakshm@quicinc.com> <snlakshm@codeaurora.org>
Serge Hallyn <sergeh@kernel.org> <serge.hallyn@canonical.com>
Serge Hallyn <sergeh@kernel.org> <serue@us.ibm.com>
Seth Forshee <sforshee@kernel.org> <seth.forshee@canonical.com>
Shakeel Butt <shakeel.butt@linux.dev> <shakeelb@google.com>
Shannon Nelson <shannon.nelson@amd.com> <snelson@pensando.io>
Shannon Nelson <shannon.nelson@amd.com> <shannon.nelson@intel.com>
Shannon Nelson <shannon.nelson@amd.com> <shannon.nelson@oracle.com>
@@ -605,6 +610,11 @@ TripleX Chung <xxx.phy@gmail.com> <triplex@zh-kernel.org>
TripleX Chung <xxx.phy@gmail.com> <zhongyu@18mail.cn>
Tsuneo Yoshioka <Tsuneo.Yoshioka@f-secure.com>
Tudor Ambarus <tudor.ambarus@linaro.org> <tudor.ambarus@microchip.com>
Tvrtko Ursulin <tursulin@ursulin.net> <tvrtko.ursulin@intel.com>
Tvrtko Ursulin <tursulin@ursulin.net> <tvrtko.ursulin@linux.intel.com>
Tvrtko Ursulin <tursulin@ursulin.net> <tvrtko.ursulin@sophos.com>
Tvrtko Ursulin <tursulin@ursulin.net> <tvrtko.ursulin@onelan.co.uk>
Tvrtko Ursulin <tursulin@ursulin.net> <tvrtko@ursulin.net>
Tycho Andersen <tycho@tycho.pizza> <tycho@tycho.ws>
Tzung-Bi Shih <tzungbi@kernel.org> <tzungbi@google.com>
Uwe Kleine-König <ukleinek@informatik.uni-freiburg.de>
+24 −24
Original line number Diff line number Diff line
What:		/sys/class/<iface>/statistics/collisions
What:		/sys/class/net/<iface>/statistics/collisions
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -6,7 +6,7 @@ Description:
		Indicates the number of collisions seen by this network device.
		This value might not be relevant with all MAC layers.

What:		/sys/class/<iface>/statistics/multicast
What:		/sys/class/net/<iface>/statistics/multicast
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -14,7 +14,7 @@ Description:
		Indicates the number of multicast packets received by this
		network device.

What:		/sys/class/<iface>/statistics/rx_bytes
What:		/sys/class/net/<iface>/statistics/rx_bytes
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -23,7 +23,7 @@ Description:
		See the network driver for the exact meaning of when this
		value is incremented.

What:		/sys/class/<iface>/statistics/rx_compressed
What:		/sys/class/net/<iface>/statistics/rx_compressed
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -32,7 +32,7 @@ Description:
		network device. This value might only be relevant for interfaces
		that support packet compression (e.g: PPP).

What:		/sys/class/<iface>/statistics/rx_crc_errors
What:		/sys/class/net/<iface>/statistics/rx_crc_errors
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -41,7 +41,7 @@ Description:
		by this network device. Note that the specific meaning might
		depend on the MAC layer used by the interface.

What:		/sys/class/<iface>/statistics/rx_dropped
What:		/sys/class/net/<iface>/statistics/rx_dropped
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -51,7 +51,7 @@ Description:
		packet processing. See the network driver for the exact
		meaning of this value.

What:		/sys/class/<iface>/statistics/rx_errors
What:		/sys/class/net/<iface>/statistics/rx_errors
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -59,7 +59,7 @@ Description:
		Indicates the number of receive errors on this network device.
		See the network driver for the exact meaning of this value.

What:		/sys/class/<iface>/statistics/rx_fifo_errors
What:		/sys/class/net/<iface>/statistics/rx_fifo_errors
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -68,7 +68,7 @@ Description:
		network device. See the network driver for the exact
		meaning of this value.

What:		/sys/class/<iface>/statistics/rx_frame_errors
What:		/sys/class/net/<iface>/statistics/rx_frame_errors
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -78,7 +78,7 @@ Description:
		on the MAC layer protocol used. See the network driver for
		the exact meaning of this value.

What:		/sys/class/<iface>/statistics/rx_length_errors
What:		/sys/class/net/<iface>/statistics/rx_length_errors
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -87,7 +87,7 @@ Description:
		error, oversized or undersized. See the network driver for the
		exact meaning of this value.

What:		/sys/class/<iface>/statistics/rx_missed_errors
What:		/sys/class/net/<iface>/statistics/rx_missed_errors
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -96,7 +96,7 @@ Description:
		due to lack of capacity in the receive side. See the network
		driver for the exact meaning of this value.

What:		/sys/class/<iface>/statistics/rx_nohandler
What:		/sys/class/net/<iface>/statistics/rx_nohandler
Date:		February 2016
KernelVersion:	4.6
Contact:	netdev@vger.kernel.org
@@ -104,7 +104,7 @@ Description:
		Indicates the number of received packets that were dropped on
		an inactive device by the network core.

What:		/sys/class/<iface>/statistics/rx_over_errors
What:		/sys/class/net/<iface>/statistics/rx_over_errors
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -114,7 +114,7 @@ Description:
		(e.g: larger than MTU). See the network driver for the exact
		meaning of this value.

What:		/sys/class/<iface>/statistics/rx_packets
What:		/sys/class/net/<iface>/statistics/rx_packets
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -122,7 +122,7 @@ Description:
		Indicates the total number of good packets received by this
		network device.

What:		/sys/class/<iface>/statistics/tx_aborted_errors
What:		/sys/class/net/<iface>/statistics/tx_aborted_errors
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -132,7 +132,7 @@ Description:
		a medium collision). See the network driver for the exact
		meaning of this value.

What:		/sys/class/<iface>/statistics/tx_bytes
What:		/sys/class/net/<iface>/statistics/tx_bytes
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -143,7 +143,7 @@ Description:
		transmitted packets or all packets that have been queued for
		transmission.

What:		/sys/class/<iface>/statistics/tx_carrier_errors
What:		/sys/class/net/<iface>/statistics/tx_carrier_errors
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -152,7 +152,7 @@ Description:
		because of carrier errors (e.g: physical link down). See the
		network driver for the exact meaning of this value.

What:		/sys/class/<iface>/statistics/tx_compressed
What:		/sys/class/net/<iface>/statistics/tx_compressed
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -161,7 +161,7 @@ Description:
		this might only be relevant for devices that support
		compression (e.g: PPP).

What:		/sys/class/<iface>/statistics/tx_dropped
What:		/sys/class/net/<iface>/statistics/tx_dropped
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -170,7 +170,7 @@ Description:
		See the driver for the exact reasons as to why the packets were
		dropped.

What:		/sys/class/<iface>/statistics/tx_errors
What:		/sys/class/net/<iface>/statistics/tx_errors
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -179,7 +179,7 @@ Description:
		a network device. See the driver for the exact reasons as to
		why the packets were dropped.

What:		/sys/class/<iface>/statistics/tx_fifo_errors
What:		/sys/class/net/<iface>/statistics/tx_fifo_errors
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -188,7 +188,7 @@ Description:
		FIFO error. See the driver for the exact reasons as to why the
		packets were dropped.

What:		/sys/class/<iface>/statistics/tx_heartbeat_errors
What:		/sys/class/net/<iface>/statistics/tx_heartbeat_errors
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -197,7 +197,7 @@ Description:
		reported as heartbeat errors. See the driver for the exact
		reasons as to why the packets were dropped.

What:		/sys/class/<iface>/statistics/tx_packets
What:		/sys/class/net/<iface>/statistics/tx_packets
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
@@ -206,7 +206,7 @@ Description:
		device. See the driver for whether this reports the number of all
		attempted or successful transmissions.

What:		/sys/class/<iface>/statistics/tx_window_errors
What:		/sys/class/net/<iface>/statistics/tx_window_errors
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
+8 −8
Original line number Diff line number Diff line
@@ -4,18 +4,18 @@ KernelVersion: 6.5
Contact:	Miquel Raynal <miquel.raynal@bootlin.com>
Description:
		The "cells" folder contains one file per cell exposed by the
		NVMEM device. The name of the file is: <name>@<where>, with
		<name> being the cell name and <where> its location in the NVMEM
		device, in hexadecimal (without the '0x' prefix, to mimic device
		tree node names). The length of the file is the size of the cell
		(when known). The content of the file is the binary content of
		the cell (may sometimes be ASCII, likely without trailing
		character).
		NVMEM device. The name of the file is: "<name>@<byte>,<bit>",
		with <name> being the cell name and <where> its location in
		the NVMEM device, in hexadecimal bytes and bits (without the
		'0x' prefix, to mimic device tree node names). The length of
		the file is the size of the cell (when known). The content of
		the file is the binary content of the cell (may sometimes be
		ASCII, likely without trailing character).
		Note: This file is only present if CONFIG_NVMEM_SYSFS
		is enabled.

		Example::

		  hexdump -C /sys/bus/nvmem/devices/1-00563/cells/product-name@d
		  hexdump -C /sys/bus/nvmem/devices/1-00563/cells/product-name@d,0
		  00000000  54 4e 34 38 4d 2d 50 2d  44 4e         |TN48M-P-DN|
		  0000000a
+7 −0
Original line number Diff line number Diff line
@@ -243,3 +243,10 @@ stable kernels.
+----------------+-----------------+-----------------+-----------------------------+
| ASR            | ASR8601         | #8601001        | N/A                         |
+----------------+-----------------+-----------------+-----------------------------+
+----------------+-----------------+-----------------+-----------------------------+
| Microsoft      | Azure Cobalt 100| #2139208        | ARM64_ERRATUM_2139208       |
+----------------+-----------------+-----------------+-----------------------------+
| Microsoft      | Azure Cobalt 100| #2067961        | ARM64_ERRATUM_2067961       |
+----------------+-----------------+-----------------+-----------------------------+
| Microsoft      | Azure Cobalt 100| #2253138        | ARM64_ERRATUM_2253138       |
+----------------+-----------------+-----------------+-----------------------------+
+27 −11
Original line number Diff line number Diff line
@@ -95,6 +95,9 @@ The kernel provides a function to invoke the buffer clearing:

    mds_clear_cpu_buffers()

Also macro CLEAR_CPU_BUFFERS can be used in ASM late in exit-to-user path.
Other than CFLAGS.ZF, this macro doesn't clobber any registers.

The mitigation is invoked on kernel/userspace, hypervisor/guest and C-state
(idle) transitions.

@@ -138,17 +141,30 @@ Mitigation points

   When transitioning from kernel to user space the CPU buffers are flushed
   on affected CPUs when the mitigation is not disabled on the kernel
   command line. The migitation is enabled through the static key
   mds_user_clear.

   The mitigation is invoked in prepare_exit_to_usermode() which covers
   all but one of the kernel to user space transitions.  The exception
   is when we return from a Non Maskable Interrupt (NMI), which is
   handled directly in do_nmi().

   (The reason that NMI is special is that prepare_exit_to_usermode() can
    enable IRQs.  In NMI context, NMIs are blocked, and we don't want to
    enable IRQs with NMIs blocked.)
   command line. The mitigation is enabled through the feature flag
   X86_FEATURE_CLEAR_CPU_BUF.

   The mitigation is invoked just before transitioning to userspace after
   user registers are restored. This is done to minimize the window in
   which kernel data could be accessed after VERW e.g. via an NMI after
   VERW.

   **Corner case not handled**
   Interrupts returning to kernel don't clear CPUs buffers since the
   exit-to-user path is expected to do that anyways. But, there could be
   a case when an NMI is generated in kernel after the exit-to-user path
   has cleared the buffers. This case is not handled and NMI returning to
   kernel don't clear CPU buffers because:

   1. It is rare to get an NMI after VERW, but before returning to userspace.
   2. For an unprivileged user, there is no known way to make that NMI
      less rare or target it.
   3. It would take a large number of these precisely-timed NMIs to mount
      an actual attack.  There's presumably not enough bandwidth.
   4. The NMI in question occurs after a VERW, i.e. when user state is
      restored and most interesting data is already scrubbed. Whats left
      is only the data that NMI touches, and that may or may not be of
      any interest.


2. C-State transition
Loading