Skip to content

Commit 3a22b09

Browse files
committed
This gets all the stable fixes until 6.1.70. It get's us up to the same level as the xlnx_rebase_v6.1_LTS branch of https://github.com/Xilinx/linux-xlnx.git Note that all the conflicts in xilinx related code were resolved in the same way as in the xilinx tree (having special attention in code that we also touch). Below are the xilinx logs for the stable merges: " Merge tag 'v6.1.70' into xlnx_rebase_v6.1_LTS-next This is the 6.1.70 stable release Resolve merge conflicts in: drivers/net/ethernet/xilinx/xilinx_axienet_main.c [Take upstream changes in downstream port] Merge tag 'v6.1.60' into xlnx_rebase_v6.1_LTS-next This is the 6.1.60 stable release Resolve merge conflicts in: drivers/gpu/drm/xlnx/zynqmp_dpsub.c drivers/mtd/spi-nor/core.c drivers/net/ethernet/cadence/macb_main.c drivers/net/ethernet/xilinx/xilinx_axienet_main.c drivers/net/phy/mscc/mscc_main.c drivers/spi/spi-cadence-quadspi.c drivers/usb/dwc3/core.c drivers/usb/dwc3/gadget.c drivers/usb/gadget/udc/udc-xilinx.c Merge tag 'v6.1.30' into xlnx_rebase_v6.1_LTS This is the 6.1.30 stable release drivers/pwm/pwm-cadence.c Fixes: 547cc8d ("pwm: Make .get_state() callback return an error code") Keep #include <linux/mtd/cfi.h> in include/linux/mtd/spi-nor.h to avoid compilation issues. Keep using spi_nor_get_params() in drivers/mtd/spi-nor/spansion.c Don't take commit 065c3d4 ("USB: dwc3: gadget: drop dead hibernation code") from v6.1.30 because it is breaking DWC3 hibernation support which is in SOC vendor tree. " Signed-off-by: Nuno Sa <[email protected]>
2 parents 4dd1aaf + a507f14 commit 3a22b09

File tree

8,057 files changed

+140998
-76949
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

8,057 files changed

+140998
-76949
lines changed

Documentation/ABI/stable/sysfs-driver-dma-idxd

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ Date: Oct 25, 2019
2222
KernelVersion: 5.6.0
2323
2424
Description: The largest number of work descriptors in a batch.
25+
It's not visible when the device does not support batch.
2526

2627
What: /sys/bus/dsa/devices/dsa<m>/max_work_queues_size
2728
Date: Oct 25, 2019
@@ -49,6 +50,8 @@ Description: The total number of read buffers supported by this device.
4950
The read buffers represent resources within the DSA
5051
implementation, and these resources are allocated by engines to
5152
support operations. See DSA spec v1.2 9.2.4 Total Read Buffers.
53+
It's not visible when the device does not support Read Buffer
54+
allocation control.
5255

5356
What: /sys/bus/dsa/devices/dsa<m>/max_transfer_size
5457
Date: Oct 25, 2019
@@ -122,6 +125,8 @@ Contact: [email protected]
122125
Description: The maximum number of read buffers that may be in use at
123126
one time by operations that access low bandwidth memory in the
124127
device. See DSA spec v1.2 9.2.8 GENCFG on Global Read Buffer Limit.
128+
It's not visible when the device does not support Read Buffer
129+
allocation control.
125130

126131
What: /sys/bus/dsa/devices/dsa<m>/cmd_status
127132
Date: Aug 28, 2020
@@ -205,6 +210,7 @@ KernelVersion: 5.10.0
205210
206211
Description: The max batch size for this workqueue. Cannot exceed device
207212
max batch size. Configurable parameter.
213+
It's not visible when the device does not support batch.
208214

209215
What: /sys/bus/dsa/devices/wq<m>.<n>/ats_disable
210216
Date: Nov 13, 2020
@@ -250,6 +256,8 @@ KernelVersion: 5.17.0
250256
251257
Description: Enable the use of global read buffer limit for the group. See DSA
252258
spec v1.2 9.2.18 GRPCFG Use Global Read Buffer Limit.
259+
It's not visible when the device does not support Read Buffer
260+
allocation control.
253261

254262
What: /sys/bus/dsa/devices/group<m>.<n>/read_buffers_allowed
255263
Date: Dec 10, 2021
@@ -258,6 +266,8 @@ Contact: [email protected]
258266
Description: Indicates max number of read buffers that may be in use at one time
259267
by all engines in the group. See DSA spec v1.2 9.2.18 GRPCFG Read
260268
Buffers Allowed.
269+
It's not visible when the device does not support Read Buffer
270+
allocation control.
261271

262272
What: /sys/bus/dsa/devices/group<m>.<n>/read_buffers_reserved
263273
Date: Dec 10, 2021
@@ -266,6 +276,8 @@ Contact: [email protected]
266276
Description: Indicates the number of Read Buffers reserved for the use of
267277
engines in the group. See DSA spec v1.2 9.2.18 GRPCFG Read Buffers
268278
Reserved.
279+
It's not visible when the device does not support Read Buffer
280+
allocation control.
269281

270282
What: /sys/bus/dsa/devices/group<m>.<n>/desc_progress_limit
271283
Date: Sept 14, 2022

Documentation/ABI/testing/configfs-usb-gadget-uvc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ Date: Dec 2014
5252
KernelVersion: 4.0
5353
Description: Default output terminal descriptors
5454

55-
All attributes read only:
55+
All attributes read only except bSourceID:
5656

5757
============== =============================================
5858
iTerminal index of string descriptor

Documentation/ABI/testing/sysfs-bus-fsi-devices-sbefifo

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,6 @@ Description:
55
Indicates whether or not this SBE device has experienced a
66
timeout; i.e. the SBE did not respond within the time allotted
77
by the driver. A value of 1 indicates that a timeout has
8-
ocurred and no transfers have completed since the timeout. A
9-
value of 0 indicates that no timeout has ocurred, or if one
10-
has, more recent transfers have completed successful.
8+
occurred and no transfers have completed since the timeout. A
9+
value of 0 indicates that no timeout has occurred, or if one
10+
has, more recent transfers have completed successfully.

Documentation/ABI/testing/sysfs-bus-optee-devices

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,12 @@ Description:
66
OP-TEE bus provides reference to registered drivers under this directory. The <uuid>
77
matches Trusted Application (TA) driver and corresponding TA in secure OS. Drivers
88
are free to create needed API under optee-ta-<uuid> directory.
9+
10+
What: /sys/bus/tee/devices/optee-ta-<uuid>/need_supplicant
11+
Date: November 2023
12+
KernelVersion: 6.7
13+
14+
Description:
15+
Allows to distinguish whether an OP-TEE based TA/device requires user-space
16+
tee-supplicant to function properly or not. This attribute will be present for
17+
devices which depend on tee-supplicant to be running.

Documentation/ABI/testing/sysfs-bus-spi-devices-spi-nor

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@ Contact: [email protected]
55
Description: (RO) The JEDEC ID of the SPI NOR flash as reported by the
66
flash device.
77

8+
The attribute is not present if the flash doesn't support
9+
the "Read JEDEC ID" command (9Fh). This is the case for
10+
non-JEDEC compliant flashes.
811

912
What: /sys/bus/spi/devices/.../spi-nor/manufacturer
1013
Date: April 2021

Documentation/ABI/testing/sysfs-devices-system-cpu

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -513,17 +513,18 @@ Description: information about CPUs heterogeneity.
513513
cpu_capacity: capacity of cpuX.
514514

515515
What: /sys/devices/system/cpu/vulnerabilities
516+
/sys/devices/system/cpu/vulnerabilities/gather_data_sampling
517+
/sys/devices/system/cpu/vulnerabilities/itlb_multihit
518+
/sys/devices/system/cpu/vulnerabilities/l1tf
519+
/sys/devices/system/cpu/vulnerabilities/mds
516520
/sys/devices/system/cpu/vulnerabilities/meltdown
521+
/sys/devices/system/cpu/vulnerabilities/mmio_stale_data
522+
/sys/devices/system/cpu/vulnerabilities/retbleed
523+
/sys/devices/system/cpu/vulnerabilities/spec_store_bypass
517524
/sys/devices/system/cpu/vulnerabilities/spectre_v1
518525
/sys/devices/system/cpu/vulnerabilities/spectre_v2
519-
/sys/devices/system/cpu/vulnerabilities/spec_store_bypass
520-
/sys/devices/system/cpu/vulnerabilities/l1tf
521-
/sys/devices/system/cpu/vulnerabilities/mds
522526
/sys/devices/system/cpu/vulnerabilities/srbds
523527
/sys/devices/system/cpu/vulnerabilities/tsx_async_abort
524-
/sys/devices/system/cpu/vulnerabilities/itlb_multihit
525-
/sys/devices/system/cpu/vulnerabilities/mmio_stale_data
526-
/sys/devices/system/cpu/vulnerabilities/retbleed
527528
Date: January 2018
528529
Contact: Linux kernel mailing list <[email protected]>
529530
Description: Information about CPU vulnerabilities

Documentation/ABI/testing/sysfs-driver-chromeos-acpi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,4 +134,4 @@ KernelVersion: 5.19
134134
Description:
135135
Returns the verified boot data block shared between the
136136
firmware verification step and the kernel verification step
137-
(binary).
137+
(hex dump).

Documentation/ABI/testing/sysfs-driver-eud

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
What: /sys/bus/platform/drivers/eud/.../enable
1+
What: /sys/bus/platform/drivers/qcom_eud/.../enable
22
Date: February 2022
33
Contact: Souradeep Chowdhury <[email protected]>
44
Description:
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
What: /sys/kernel/oops_count
2+
Date: November 2022
3+
KernelVersion: 6.2.0
4+
Contact: Linux Kernel Hardening List <[email protected]>
5+
Description:
6+
Shows how many times the system has Oopsed since last boot.
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
What: /sys/kernel/warn_count
2+
Date: November 2022
3+
KernelVersion: 6.2.0
4+
Contact: Linux Kernel Hardening List <[email protected]>
5+
Description:
6+
Shows how many times the system has Warned since last boot.

Documentation/ABI/testing/sysfs-module

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,3 +60,14 @@ Description: Module taint flags:
6060
C staging driver module
6161
E unsigned module
6262
== =====================
63+
64+
What: /sys/module/grant_table/parameters/free_per_iteration
65+
Date: July 2023
66+
KernelVersion: 6.5 but backported to all supported stable branches
67+
Contact: Xen developer discussion <[email protected]>
68+
Description: Read and write number of grant entries to attempt to free per iteration.
69+
70+
Note: Future versions of Xen and Linux may provide a better
71+
interface for controlling the rate of deferred grant reclaim
72+
or may not need it at all.
73+
Users: Qubes OS (https://www.qubes-os.org)

Documentation/accounting/psi.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,10 @@ prevent overly frequent polling. Max limit is chosen as a high enough number
105105
after which monitors are most likely not needed and psi averages can be used
106106
instead.
107107

108+
Unprivileged users can also create monitors, with the only limitation that the
109+
window size must be a multiple of 2s, in order to prevent excessive resource
110+
usage.
111+
108112
When activated, psi monitor stays active for at least the duration of one
109113
tracking window to avoid repeated activations/deactivations when system is
110114
bouncing in and out of the stall state.

Documentation/admin-guide/cgroup-v1/memory.rst

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -86,11 +86,18 @@ Brief summary of control files.
8686
memory.swappiness set/show swappiness parameter of vmscan
8787
(See sysctl's vm.swappiness)
8888
memory.move_charge_at_immigrate set/show controls of moving charges
89+
This knob is deprecated and shouldn't be
90+
used.
8991
memory.oom_control set/show oom controls.
9092
memory.numa_stat show the number of memory usage per numa
9193
node
92-
memory.kmem.limit_in_bytes This knob is deprecated and writing to
93-
it will return -ENOTSUPP.
94+
memory.kmem.limit_in_bytes Deprecated knob to set and read the kernel
95+
memory hard limit. Kernel hard limit is not
96+
supported since 5.16. Writing any value to
97+
do file will not have any effect same as if
98+
nokmem kernel parameter was specified.
99+
Kernel memory is still charged and reported
100+
by memory.kmem.usage_in_bytes.
94101
memory.kmem.usage_in_bytes show current kernel memory allocation
95102
memory.kmem.failcnt show the number of kernel memory usage
96103
hits limits
@@ -716,8 +723,15 @@ NOTE2:
716723
It is recommended to set the soft limit always below the hard limit,
717724
otherwise the hard limit will take precedence.
718725

719-
8. Move charges at task migration
720-
=================================
726+
8. Move charges at task migration (DEPRECATED!)
727+
===============================================
728+
729+
THIS IS DEPRECATED!
730+
731+
It's expensive and unreliable! It's better practice to launch workload
732+
tasks directly from inside their target cgroup. Use dedicated workload
733+
cgroups to allow fine-grained policy adjustments without having to
734+
move physical pages between control domains.
721735

722736
Users can move charges associated with a task along with task migration, that
723737
is, uncharge task's pages from the old cgroup and charge them to the new cgroup.

Documentation/admin-guide/device-mapper/dm-init.rst

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,3 +123,11 @@ Other examples (per target):
123123
0 1638400 verity 1 8:1 8:2 4096 4096 204800 1 sha256
124124
fb1a5a0f00deb908d8b53cb270858975e76cf64105d412ce764225d53b8f3cfd
125125
51934789604d1b92399c52e7cb149d1b3a1b74bbbcb103b2a0aaacbed5c08584
126+
127+
For setups using device-mapper on top of asynchronously probed block
128+
devices (MMC, USB, ..), it may be necessary to tell dm-init to
129+
explicitly wait for them to become available before setting up the
130+
device-mapper tables. This can be done with the "dm-mod.waitfor="
131+
module parameter, which takes a list of devices to wait for::
132+
133+
dm-mod.waitfor=<device1>[,..,<deviceN>]
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
2+
.. SPDX-License-Identifier: GPL-2.0
3+
4+
Cross-Thread Return Address Predictions
5+
=======================================
6+
7+
Certain AMD and Hygon processors are subject to a cross-thread return address
8+
predictions vulnerability. When running in SMT mode and one sibling thread
9+
transitions out of C0 state, the other sibling thread could use return target
10+
predictions from the sibling thread that transitioned out of C0.
11+
12+
The Spectre v2 mitigations protect the Linux kernel, as it fills the return
13+
address prediction entries with safe targets when context switching to the idle
14+
thread. However, KVM does allow a VMM to prevent exiting guest mode when
15+
transitioning out of C0. This could result in a guest-controlled return target
16+
being consumed by the sibling thread.
17+
18+
Affected processors
19+
-------------------
20+
21+
The following CPUs are vulnerable:
22+
23+
- AMD Family 17h processors
24+
- Hygon Family 18h processors
25+
26+
Related CVEs
27+
------------
28+
29+
The following CVE entry is related to this issue:
30+
31+
============== =======================================
32+
CVE-2022-27672 Cross-Thread Return Address Predictions
33+
============== =======================================
34+
35+
Problem
36+
-------
37+
38+
Affected SMT-capable processors support 1T and 2T modes of execution when SMT
39+
is enabled. In 2T mode, both threads in a core are executing code. For the
40+
processor core to enter 1T mode, it is required that one of the threads
41+
requests to transition out of the C0 state. This can be communicated with the
42+
HLT instruction or with an MWAIT instruction that requests non-C0.
43+
When the thread re-enters the C0 state, the processor transitions back
44+
to 2T mode, assuming the other thread is also still in C0 state.
45+
46+
In affected processors, the return address predictor (RAP) is partitioned
47+
depending on the SMT mode. For instance, in 2T mode each thread uses a private
48+
16-entry RAP, but in 1T mode, the active thread uses a 32-entry RAP. Upon
49+
transition between 1T/2T mode, the RAP contents are not modified but the RAP
50+
pointers (which control the next return target to use for predictions) may
51+
change. This behavior may result in return targets from one SMT thread being
52+
used by RET predictions in the sibling thread following a 1T/2T switch. In
53+
particular, a RET instruction executed immediately after a transition to 1T may
54+
use a return target from the thread that just became idle. In theory, this
55+
could lead to information disclosure if the return targets used do not come
56+
from trustworthy code.
57+
58+
Attack scenarios
59+
----------------
60+
61+
An attack can be mounted on affected processors by performing a series of CALL
62+
instructions with targeted return locations and then transitioning out of C0
63+
state.
64+
65+
Mitigation mechanism
66+
--------------------
67+
68+
Before entering idle state, the kernel context switches to the idle thread. The
69+
context switch fills the RAP entries (referred to as the RSB in Linux) with safe
70+
targets by performing a sequence of CALL instructions.
71+
72+
Prevent a guest VM from directly putting the processor into an idle state by
73+
intercepting HLT and MWAIT instructions.
74+
75+
Both mitigations are required to fully address this issue.
76+
77+
Mitigation control on the kernel command line
78+
---------------------------------------------
79+
80+
Use existing Spectre v2 mitigations that will fill the RSB on context switch.
81+
82+
Mitigation control for KVM - module parameter
83+
---------------------------------------------
84+
85+
By default, the KVM hypervisor mitigates this issue by intercepting guest
86+
attempts to transition out of C0. A VMM can use the KVM_CAP_X86_DISABLE_EXITS
87+
capability to override those interceptions, but since this is not common, the
88+
mitigation that covers this path is not enabled by default.
89+
90+
The mitigation for the KVM_CAP_X86_DISABLE_EXITS capability can be turned on
91+
using the boolean module parameter mitigate_smt_rsb, e.g.:
92+
kvm.mitigate_smt_rsb=1

0 commit comments

Comments
 (0)