Skip to content

Commit 939204e

Browse files
committed
Merge tag 'v6.2' into iommufd.git for-next
Resolve conflicts from the signature change in iommu_map: - drivers/infiniband/hw/usnic/usnic_uiom.c Switch iommu_map_atomic() to iommu_map(.., GFP_ATOMIC) - drivers/vfio/vfio_iommu_type1.c Following indenting change for GFP_KERNEL Signed-off-by: Jason Gunthorpe <[email protected]>
2 parents b4ff830 + c9c3395 commit 939204e

File tree

1,439 files changed

+14780
-9526
lines changed

Some content is hidden

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

1,439 files changed

+14780
-9526
lines changed

.mailmap

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ Aleksey Gorelov <[email protected]>
2525
2626
2727
28+
Alexander Mikhalitsyn <[email protected]> <[email protected]>
29+
Alexander Mikhalitsyn <[email protected]> <[email protected]>
2830
2931
Alexei Starovoitov <[email protected]> <[email protected]>
3032
Alexei Starovoitov <[email protected]> <[email protected]>
@@ -130,6 +132,7 @@ Domen Puncer <[email protected]>
130132
Douglas Gilbert <[email protected]>
131133
Ed L. Cashin <[email protected]>
132134
135+
133136
Evgeniy Polyakov <[email protected]>
134137
135138
Felipe W Damasio <[email protected]>
@@ -214,6 +217,7 @@ Jisheng Zhang <[email protected]> <[email protected]>
214217
215218
216219
220+
217221
John Paul Adrian Glaubitz <[email protected]>
218222
John Stultz <[email protected]>
219223
@@ -371,6 +375,7 @@ Rémi Denis-Courmont <[email protected]>
371375
372376
Ricardo Ribalda <[email protected]> Ricardo Ribalda Delgado <[email protected]>
373377
378+
374379
375380
376381
@@ -422,6 +427,7 @@ Tony Luck <[email protected]>
422427
423428
424429
Tsuneo Yoshioka <[email protected]>
430+
425431
426432
427433
Uwe Kleine-König <[email protected]>

CREDITS

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1173,6 +1173,10 @@ D: Future Domain TMC-16x0 SCSI driver (author)
11731173
D: APM driver (early port)
11741174
D: DRM drivers (author of several)
11751175

1176+
N: Veaceslav Falico
1177+
1178+
D: Co-maintainer and co-author of the network bonding driver.
1179+
11761180
N: János Farkas
11771181
11781182
D: romfs, various (mostly networking) fixes
@@ -2489,6 +2493,13 @@ D: XF86_Mach8
24892493
D: XF86_8514
24902494
D: cfdisk (curses based disk partitioning program)
24912495

2496+
N: Mat Martineau
2497+
2498+
D: MPTCP subsystem co-maintainer 2020-2023
2499+
D: Keyctl restricted keyring and Diffie-Hellman UAPI
2500+
D: Bluetooth L2CAP ERTM mode and AMP
2501+
S: USA
2502+
24922503
N: John S. Marvin
24932504
24942505
D: PA-RISC port
@@ -4172,6 +4183,10 @@ S: B-1206 Jingmao Guojigongyu
41724183
S: 16 Baliqiao Nanjie, Beijing 101100
41734184
S: People's Repulic of China
41744185

4186+
N: Vlad Yasevich
4187+
4188+
D: SCTP protocol maintainer.
4189+
41754190
N: Aviad Yehezkel
41764191
41774192
D: Kernel TLS implementation and offload support.

Documentation/admin-guide/cgroup-v2.rst

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1245,13 +1245,17 @@ PAGE_SIZE multiple when read back.
12451245
This is a simple interface to trigger memory reclaim in the
12461246
target cgroup.
12471247

1248-
This file accepts a string which contains the number of bytes to
1249-
reclaim.
1248+
This file accepts a single key, the number of bytes to reclaim.
1249+
No nested keys are currently supported.
12501250

12511251
Example::
12521252

12531253
echo "1G" > memory.reclaim
12541254

1255+
The interface can be later extended with nested keys to
1256+
configure the reclaim behavior. For example, specify the
1257+
type of memory to reclaim from (anon, file, ..).
1258+
12551259
Please note that the kernel can over or under reclaim from
12561260
the target cgroup. If less bytes are reclaimed than the
12571261
specified amount, -EAGAIN is returned.
@@ -1263,13 +1267,6 @@ PAGE_SIZE multiple when read back.
12631267
This means that the networking layer will not adapt based on
12641268
reclaim induced by memory.reclaim.
12651269

1266-
This file also allows the user to specify the nodes to reclaim from,
1267-
via the 'nodes=' key, for example::
1268-
1269-
echo "1G nodes=0,1" > memory.reclaim
1270-
1271-
The above instructs the kernel to reclaim memory from nodes 0,1.
1272-
12731270
memory.peak
12741271
A read-only single value file which exists on non-root
12751272
cgroups.
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
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. ``kvm.mitigate_smt_rsb=1``.

Documentation/admin-guide/hw-vuln/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,4 @@ are configurable at compile, boot or run time.
1818
core-scheduling.rst
1919
l1d_flush.rst
2020
processor_mmio_stale_data.rst
21+
cross-thread-rsb.rst

Documentation/admin-guide/mm/zswap.rst

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,7 @@ e.g. ``zswap.zpool=zbud``. It can also be changed at runtime using the sysfs
7070
The zbud type zpool allocates exactly 1 page to store 2 compressed pages, which
7171
means the compression ratio will always be 2:1 or worse (because of half-full
7272
zbud pages). The zsmalloc type zpool has a more complex compressed page
73-
storage method, and it can achieve greater storage densities. However,
74-
zsmalloc does not implement compressed page eviction, so once zswap fills it
75-
cannot evict the oldest page, it can only reject new pages.
73+
storage method, and it can achieve greater storage densities.
7674

7775
When a swap page is passed from frontswap to zswap, zswap maintains a mapping
7876
of the swap entry, a combination of the swap type and swap offset, to the zpool

Documentation/arm64/silicon-errata.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,8 @@ stable kernels.
120120
+----------------+-----------------+-----------------+-----------------------------+
121121
| ARM | Cortex-A710 | #2224489 | ARM64_ERRATUM_2224489 |
122122
+----------------+-----------------+-----------------+-----------------------------+
123+
| ARM | Cortex-A715 | #2645198 | ARM64_ERRATUM_2645198 |
124+
+----------------+-----------------+-----------------+-----------------------------+
123125
| ARM | Cortex-X2 | #2119858 | ARM64_ERRATUM_2119858 |
124126
+----------------+-----------------+-----------------+-----------------------------+
125127
| ARM | Cortex-X2 | #2224489 | ARM64_ERRATUM_2224489 |

Documentation/conf.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,12 @@ def have_command(cmd):
3131
# Get Sphinx version
3232
major, minor, patch = sphinx.version_info[:3]
3333

34+
#
35+
# Warn about older versions that we don't want to support for much
36+
# longer.
37+
#
38+
if (major < 2) or (major == 2 and minor < 4):
39+
print('WARNING: support for Sphinx < 2.4 will be removed soon.')
3440

3541
# If extensions (or modules to document with autodoc) are in another directory,
3642
# add these directories to sys.path here. If the directory is relative to the
@@ -339,7 +345,11 @@ def get_cline_version():
339345

340346
# Custom sidebar templates, maps document names to template names.
341347
# Note that the RTD theme ignores this
342-
html_sidebars = { '**': ["about.html", 'searchbox.html', 'localtoc.html', 'sourcelink.html']}
348+
html_sidebars = { '**': ['searchbox.html', 'localtoc.html', 'sourcelink.html']}
349+
350+
# about.html is available for alabaster theme. Add it at the front.
351+
if html_theme == 'alabaster':
352+
html_sidebars['**'].insert(0, 'about.html')
343353

344354
# Output file base name for HTML help builder.
345355
htmlhelp_basename = 'TheLinuxKerneldoc'

Documentation/devicetree/bindings/.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,8 @@
22
*.example.dts
33
/processed-schema*.yaml
44
/processed-schema*.json
5+
6+
#
7+
# We don't want to ignore the following even if they are dot-files
8+
#
9+
!.yamllint

Documentation/devicetree/bindings/cpufreq/cpufreq-qcom-hw.yaml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,17 @@ properties:
5454
- const: xo
5555
- const: alternate
5656

57+
interrupts:
58+
minItems: 1
59+
maxItems: 3
60+
61+
interrupt-names:
62+
minItems: 1
63+
items:
64+
- const: dcvsh-irq-0
65+
- const: dcvsh-irq-1
66+
- const: dcvsh-irq-2
67+
5768
'#freq-domain-cells':
5869
const: 1
5970

0 commit comments

Comments
 (0)