Skip to content

Commit d0331aa

Browse files
author
Ingo Molnar
committed
Merge branch 'linus' into perf/core, to pick up perf/urgent fixes
Pick up perf/urgent fixes that are upstream already, but not yet in the perf/core development branch. Signed-off-by: Ingo Molnar <[email protected]>
2 parents 93d3fde + 72374d7 commit d0331aa

File tree

762 files changed

+12967
-5284
lines changed

Some content is hidden

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

762 files changed

+12967
-5284
lines changed

.mailmap

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ Adam Oldham <[email protected]>
2020
Adam Radford <[email protected]>
2121
2222
Adrian Bunk <[email protected]>
23+
2324
2425
2526
@@ -36,6 +37,7 @@ Alexei Avshalom Lazar <[email protected]> <[email protected]>
3637
Alexei Starovoitov <[email protected]> <[email protected]>
3738
Alexei Starovoitov <[email protected]> <[email protected]>
3839
Alexei Starovoitov <[email protected]> <[email protected]>
40+
3941
4042
4143
@@ -110,6 +112,7 @@ Brendan Higgins <[email protected]> <[email protected]>
110112
Brian Avery <[email protected]>
111113
Brian King <[email protected]>
112114
115+
113116
114117
115118
@@ -529,6 +532,7 @@ Rocky Liao <[email protected]> <[email protected]>
529532
530533
531534
535+
532536
533537
534538
@@ -651,6 +655,7 @@ Viresh Kumar <[email protected]> <[email protected]>
651655
652656
653657
658+
654659
655660
656661

CREDITS

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3146,6 +3146,10 @@ S: Triftstra=DFe 55
31463146
S: 13353 Berlin
31473147
S: Germany
31483148

3149+
N: Gustavo Pimental
3150+
3151+
D: PCI driver for Synopsys DesignWare
3152+
31493153
N: Emanuel Pirker
31503154
31513155
D: AIC5800 IEEE 1394, RAW I/O on 1394

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

Lines changed: 38 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -138,11 +138,10 @@ associated with the source address of the indirect branch. Specifically,
138138
the BHB might be shared across privilege levels even in the presence of
139139
Enhanced IBRS.
140140

141-
Currently the only known real-world BHB attack vector is via
142-
unprivileged eBPF. Therefore, it's highly recommended to not enable
143-
unprivileged eBPF, especially when eIBRS is used (without retpolines).
144-
For a full mitigation against BHB attacks, it's recommended to use
145-
retpolines (or eIBRS combined with retpolines).
141+
Previously the only known real-world BHB attack vector was via unprivileged
142+
eBPF. Further research has found attacks that don't require unprivileged eBPF.
143+
For a full mitigation against BHB attacks it is recommended to set BHI_DIS_S or
144+
use the BHB clearing sequence.
146145

147146
Attack scenarios
148147
----------------
@@ -430,6 +429,23 @@ The possible values in this file are:
430429
'PBRSB-eIBRS: Not affected' CPU is not affected by PBRSB
431430
=========================== =======================================================
432431

432+
- Branch History Injection (BHI) protection status:
433+
434+
.. list-table::
435+
436+
* - BHI: Not affected
437+
- System is not affected
438+
* - BHI: Retpoline
439+
- System is protected by retpoline
440+
* - BHI: BHI_DIS_S
441+
- System is protected by BHI_DIS_S
442+
* - BHI: SW loop, KVM SW loop
443+
- System is protected by software clearing sequence
444+
* - BHI: Vulnerable
445+
- System is vulnerable to BHI
446+
* - BHI: Vulnerable, KVM: SW loop
447+
- System is vulnerable; KVM is protected by software clearing sequence
448+
433449
Full mitigation might require a microcode update from the CPU
434450
vendor. When the necessary microcode is not available, the kernel will
435451
report vulnerability.
@@ -484,7 +500,11 @@ Spectre variant 2
484500

485501
Systems which support enhanced IBRS (eIBRS) enable IBRS protection once at
486502
boot, by setting the IBRS bit, and they're automatically protected against
487-
Spectre v2 variant attacks.
503+
some Spectre v2 variant attacks. The BHB can still influence the choice of
504+
indirect branch predictor entry, and although branch predictor entries are
505+
isolated between modes when eIBRS is enabled, the BHB itself is not isolated
506+
between modes. Systems which support BHI_DIS_S will set it to protect against
507+
BHI attacks.
488508

489509
On Intel's enhanced IBRS systems, this includes cross-thread branch target
490510
injections on SMT systems (STIBP). In other words, Intel eIBRS enables
@@ -638,6 +658,18 @@ kernel command line.
638658
spectre_v2=off. Spectre variant 1 mitigations
639659
cannot be disabled.
640660

661+
spectre_bhi=
662+
663+
[X86] Control mitigation of Branch History Injection
664+
(BHI) vulnerability. This setting affects the deployment
665+
of the HW BHI control and the SW BHB clearing sequence.
666+
667+
on
668+
(default) Enable the HW or SW mitigation as
669+
needed.
670+
off
671+
Disable the mitigation.
672+
641673
For spectre_v2_user see Documentation/admin-guide/kernel-parameters.txt
642674

643675
Mitigation selection guide

Documentation/admin-guide/kernel-parameters.txt

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3444,6 +3444,7 @@
34443444
retbleed=off [X86]
34453445
spec_rstack_overflow=off [X86]
34463446
spec_store_bypass_disable=off [X86,PPC]
3447+
spectre_bhi=off [X86]
34473448
spectre_v2_user=off [X86]
34483449
srbds=off [X86,INTEL]
34493450
ssbd=force-off [ARM64]
@@ -6063,6 +6064,15 @@
60636064
sonypi.*= [HW] Sony Programmable I/O Control Device driver
60646065
See Documentation/admin-guide/laptops/sonypi.rst
60656066

6067+
spectre_bhi= [X86] Control mitigation of Branch History Injection
6068+
(BHI) vulnerability. This setting affects the
6069+
deployment of the HW BHI control and the SW BHB
6070+
clearing sequence.
6071+
6072+
on - (default) Enable the HW or SW mitigation
6073+
as needed.
6074+
off - Disable the mitigation.
6075+
60666076
spectre_v2= [X86,EARLY] Control mitigation of Spectre variant 2
60676077
(indirect branch speculation) vulnerability.
60686078
The default operation protects the kernel from
@@ -6599,7 +6609,7 @@
65996609
To turn off having tracepoints sent to printk,
66006610
echo 0 > /proc/sys/kernel/tracepoint_printk
66016611
Note, echoing 1 into this file without the
6602-
tracepoint_printk kernel cmdline option has no effect.
6612+
tp_printk kernel cmdline option has no effect.
66036613

66046614
The tp_printk_stop_on_boot (see below) can also be used
66056615
to stop the printing of events to console at

Documentation/admin-guide/mm/zswap.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ Setting this parameter to 100 will disable the hysteresis.
155155

156156
Some users cannot tolerate the swapping that comes with zswap store failures
157157
and zswap writebacks. Swapping can be disabled entirely (without disabling
158-
zswap itself) on a cgroup-basis as follows:
158+
zswap itself) on a cgroup-basis as follows::
159159

160160
echo 0 > /sys/fs/cgroup/<cgroup-name>/memory.zswap.writeback
161161

@@ -166,7 +166,7 @@ writeback (because the same pages might be rejected again and again).
166166
When there is a sizable amount of cold memory residing in the zswap pool, it
167167
can be advantageous to proactively write these cold pages to swap and reclaim
168168
the memory for other use cases. By default, the zswap shrinker is disabled.
169-
User can enable it as follows:
169+
User can enable it as follows::
170170

171171
echo Y > /sys/module/zswap/parameters/shrinker_enabled
172172

Documentation/dev-tools/testing-overview.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,8 @@ Some of these tools are listed below:
104104
KASAN and can be used in production. See Documentation/dev-tools/kfence.rst
105105
* lockdep is a locking correctness validator. See
106106
Documentation/locking/lockdep-design.rst
107+
* Runtime Verification (RV) supports checking specific behaviours for a given
108+
subsystem. See Documentation/trace/rv/runtime-verification.rst
107109
* There are several other pieces of debug instrumentation in the kernel, many
108110
of which can be found in lib/Kconfig.debug
109111

Documentation/devicetree/bindings/clock/keystone-gate.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
Status: Unstable - ABI compatibility may be broken in the future
2-
31
Binding for Keystone gate control driver which uses PSC controller IP.
42

53
This binding uses the common clock binding[1].

Documentation/devicetree/bindings/clock/keystone-pll.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
Status: Unstable - ABI compatibility may be broken in the future
2-
31
Binding for keystone PLLs. The main PLL IP typically has a multiplier,
42
a divider and a post divider. The additional PLL IPs like ARMPLL, DDRPLL
53
and PAPLL are controlled by the memory mapped register where as the Main

Documentation/devicetree/bindings/clock/ti/adpll.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
Binding for Texas Instruments ADPLL clock.
22

3-
Binding status: Unstable - ABI compatibility may be broken in the future
4-
53
This binding uses the common clock binding[1]. It assumes a
64
register-mapped ADPLL with two to three selectable input clocks
75
and three to four children.

Documentation/devicetree/bindings/clock/ti/apll.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
Binding for Texas Instruments APLL clock.
22

3-
Binding status: Unstable - ABI compatibility may be broken in the future
4-
53
This binding uses the common clock binding[1]. It assumes a
64
register-mapped APLL with usually two selectable input clocks
75
(reference clock and bypass clock), with analog phase locked

0 commit comments

Comments
 (0)