Skip to content

Commit bd9c67a

Browse files
author
Ingo Molnar
committed
Merge branch 'linus' into perf/core, to pick up fixes
Signed-off-by: Ingo Molnar <[email protected]>
2 parents 8614102 + b506943 commit bd9c67a

File tree

410 files changed

+5865
-2115
lines changed

Some content is hidden

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

410 files changed

+5865
-2115
lines changed

Documentation/ABI/testing/sysfs-class-cxl

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -244,3 +244,11 @@ Description: read only
244244
Returns 1 if the psl timebase register is synchronized
245245
with the core timebase register, 0 otherwise.
246246
Users: https://github.com/ibm-capi/libcxl
247+
248+
What: /sys/class/cxl/<card>/tunneled_ops_supported
249+
Date: May 2018
250+
251+
Description: read only
252+
Returns 1 if tunneled operations are supported in capi mode,
253+
0 otherwise.
254+
Users: https://github.com/ibm-capi/libcxl

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -478,6 +478,7 @@ What: /sys/devices/system/cpu/vulnerabilities
478478
/sys/devices/system/cpu/vulnerabilities/meltdown
479479
/sys/devices/system/cpu/vulnerabilities/spectre_v1
480480
/sys/devices/system/cpu/vulnerabilities/spectre_v2
481+
/sys/devices/system/cpu/vulnerabilities/spec_store_bypass
481482
Date: January 2018
482483
Contact: Linux kernel mailing list <[email protected]>
483484
Description: Information about CPU vulnerabilities

Documentation/admin-guide/kernel-parameters.txt

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2680,6 +2680,9 @@
26802680
allow data leaks with this option, which is equivalent
26812681
to spectre_v2=off.
26822682

2683+
nospec_store_bypass_disable
2684+
[HW] Disable all mitigations for the Speculative Store Bypass vulnerability
2685+
26832686
noxsave [BUGS=X86] Disables x86 extended register state save
26842687
and restore using xsave. The kernel will fallback to
26852688
enabling legacy floating-point and sse state.
@@ -4025,6 +4028,48 @@
40254028
Not specifying this option is equivalent to
40264029
spectre_v2=auto.
40274030

4031+
spec_store_bypass_disable=
4032+
[HW] Control Speculative Store Bypass (SSB) Disable mitigation
4033+
(Speculative Store Bypass vulnerability)
4034+
4035+
Certain CPUs are vulnerable to an exploit against a
4036+
a common industry wide performance optimization known
4037+
as "Speculative Store Bypass" in which recent stores
4038+
to the same memory location may not be observed by
4039+
later loads during speculative execution. The idea
4040+
is that such stores are unlikely and that they can
4041+
be detected prior to instruction retirement at the
4042+
end of a particular speculation execution window.
4043+
4044+
In vulnerable processors, the speculatively forwarded
4045+
store can be used in a cache side channel attack, for
4046+
example to read memory to which the attacker does not
4047+
directly have access (e.g. inside sandboxed code).
4048+
4049+
This parameter controls whether the Speculative Store
4050+
Bypass optimization is used.
4051+
4052+
on - Unconditionally disable Speculative Store Bypass
4053+
off - Unconditionally enable Speculative Store Bypass
4054+
auto - Kernel detects whether the CPU model contains an
4055+
implementation of Speculative Store Bypass and
4056+
picks the most appropriate mitigation. If the
4057+
CPU is not vulnerable, "off" is selected. If the
4058+
CPU is vulnerable the default mitigation is
4059+
architecture and Kconfig dependent. See below.
4060+
prctl - Control Speculative Store Bypass per thread
4061+
via prctl. Speculative Store Bypass is enabled
4062+
for a process by default. The state of the control
4063+
is inherited on fork.
4064+
seccomp - Same as "prctl" above, but all seccomp threads
4065+
will disable SSB unless they explicitly opt out.
4066+
4067+
Not specifying this option is equivalent to
4068+
spec_store_bypass_disable=auto.
4069+
4070+
Default mitigations:
4071+
X86: If CONFIG_SECCOMP=y "seccomp", otherwise "prctl"
4072+
40284073
spia_io_base= [HW,MTD]
40294074
spia_fio_base=
40304075
spia_pedr=

Documentation/devicetree/bindings/net/marvell-pp2.txt

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,10 @@ Required properties:
2121
- main controller clock (for both armada-375-pp2 and armada-7k-pp2)
2222
- GOP clock (for both armada-375-pp2 and armada-7k-pp2)
2323
- MG clock (only for armada-7k-pp2)
24+
- MG Core clock (only for armada-7k-pp2)
2425
- AXI clock (only for armada-7k-pp2)
25-
- clock-names: names of used clocks, must be "pp_clk", "gop_clk", "mg_clk"
26-
and "axi_clk" (the 2 latter only for armada-7k-pp2).
26+
- clock-names: names of used clocks, must be "pp_clk", "gop_clk", "mg_clk",
27+
"mg_core_clk" and "axi_clk" (the 3 latter only for armada-7k-pp2).
2728

2829
The ethernet ports are represented by subnodes. At least one port is
2930
required.
@@ -80,8 +81,8 @@ cpm_ethernet: ethernet@0 {
8081
compatible = "marvell,armada-7k-pp22";
8182
reg = <0x0 0x100000>, <0x129000 0xb000>;
8283
clocks = <&cpm_syscon0 1 3>, <&cpm_syscon0 1 9>,
83-
<&cpm_syscon0 1 5>, <&cpm_syscon0 1 18>;
84-
clock-names = "pp_clk", "gop_clk", "gp_clk", "axi_clk";
84+
<&cpm_syscon0 1 5>, <&cpm_syscon0 1 6>, <&cpm_syscon0 1 18>;
85+
clock-names = "pp_clk", "gop_clk", "mg_clk", "mg_core_clk", "axi_clk";
8586

8687
eth0: eth0 {
8788
interrupts = <ICU_GRP_NSR 39 IRQ_TYPE_LEVEL_HIGH>,

Documentation/devicetree/bindings/net/micrel-ksz90x1.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,13 @@ KSZ9031:
5757
- txd2-skew-ps : Skew control of TX data 2 pad
5858
- txd3-skew-ps : Skew control of TX data 3 pad
5959

60+
- micrel,force-master:
61+
Boolean, force phy to master mode. Only set this option if the phy
62+
reference clock provided at CLK125_NDO pin is used as MAC reference
63+
clock because the clock jitter in slave mode is to high (errata#2).
64+
Attention: The link partner must be configurable as slave otherwise
65+
no link will be established.
66+
6067
Examples:
6168

6269
mdio {

Documentation/userspace-api/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ place where this information is gathered.
1919
no_new_privs
2020
seccomp_filter
2121
unshare
22+
spec_ctrl
2223

2324
.. only:: subproject and html
2425

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
===================
2+
Speculation Control
3+
===================
4+
5+
Quite some CPUs have speculation-related misfeatures which are in
6+
fact vulnerabilities causing data leaks in various forms even across
7+
privilege domains.
8+
9+
The kernel provides mitigation for such vulnerabilities in various
10+
forms. Some of these mitigations are compile-time configurable and some
11+
can be supplied on the kernel command line.
12+
13+
There is also a class of mitigations which are very expensive, but they can
14+
be restricted to a certain set of processes or tasks in controlled
15+
environments. The mechanism to control these mitigations is via
16+
:manpage:`prctl(2)`.
17+
18+
There are two prctl options which are related to this:
19+
20+
* PR_GET_SPECULATION_CTRL
21+
22+
* PR_SET_SPECULATION_CTRL
23+
24+
PR_GET_SPECULATION_CTRL
25+
-----------------------
26+
27+
PR_GET_SPECULATION_CTRL returns the state of the speculation misfeature
28+
which is selected with arg2 of prctl(2). The return value uses bits 0-3 with
29+
the following meaning:
30+
31+
==== ===================== ===================================================
32+
Bit Define Description
33+
==== ===================== ===================================================
34+
0 PR_SPEC_PRCTL Mitigation can be controlled per task by
35+
PR_SET_SPECULATION_CTRL.
36+
1 PR_SPEC_ENABLE The speculation feature is enabled, mitigation is
37+
disabled.
38+
2 PR_SPEC_DISABLE The speculation feature is disabled, mitigation is
39+
enabled.
40+
3 PR_SPEC_FORCE_DISABLE Same as PR_SPEC_DISABLE, but cannot be undone. A
41+
subsequent prctl(..., PR_SPEC_ENABLE) will fail.
42+
==== ===================== ===================================================
43+
44+
If all bits are 0 the CPU is not affected by the speculation misfeature.
45+
46+
If PR_SPEC_PRCTL is set, then the per-task control of the mitigation is
47+
available. If not set, prctl(PR_SET_SPECULATION_CTRL) for the speculation
48+
misfeature will fail.
49+
50+
PR_SET_SPECULATION_CTRL
51+
-----------------------
52+
53+
PR_SET_SPECULATION_CTRL allows to control the speculation misfeature, which
54+
is selected by arg2 of :manpage:`prctl(2)` per task. arg3 is used to hand
55+
in the control value, i.e. either PR_SPEC_ENABLE or PR_SPEC_DISABLE or
56+
PR_SPEC_FORCE_DISABLE.
57+
58+
Common error codes
59+
------------------
60+
======= =================================================================
61+
Value Meaning
62+
======= =================================================================
63+
EINVAL The prctl is not implemented by the architecture or unused
64+
prctl(2) arguments are not 0.
65+
66+
ENODEV arg2 is selecting a not supported speculation misfeature.
67+
======= =================================================================
68+
69+
PR_SET_SPECULATION_CTRL error codes
70+
-----------------------------------
71+
======= =================================================================
72+
Value Meaning
73+
======= =================================================================
74+
0 Success
75+
76+
ERANGE arg3 is incorrect, i.e. it's neither PR_SPEC_ENABLE nor
77+
PR_SPEC_DISABLE nor PR_SPEC_FORCE_DISABLE.
78+
79+
ENXIO Control of the selected speculation misfeature is not possible.
80+
See PR_GET_SPECULATION_CTRL.
81+
82+
EPERM Speculation was disabled with PR_SPEC_FORCE_DISABLE and caller
83+
tried to enable it again.
84+
======= =================================================================
85+
86+
Speculation misfeature controls
87+
-------------------------------
88+
- PR_SPEC_STORE_BYPASS: Speculative Store Bypass
89+
90+
Invocations:
91+
* prctl(PR_GET_SPECULATION_CTRL, PR_SPEC_STORE_BYPASS, 0, 0, 0);
92+
* prctl(PR_SET_SPECULATION_CTRL, PR_SPEC_STORE_BYPASS, PR_SPEC_ENABLE, 0, 0);
93+
* prctl(PR_SET_SPECULATION_CTRL, PR_SPEC_STORE_BYPASS, PR_SPEC_DISABLE, 0, 0);
94+
* prctl(PR_SET_SPECULATION_CTRL, PR_SPEC_STORE_BYPASS, PR_SPEC_FORCE_DISABLE, 0, 0);

Documentation/virtual/kvm/cpuid.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -72,8 +72,8 @@ KVM_FEATURE_CLOCKSOURCE_STABLE_BIT || 24 || host will warn if no guest-side
7272

7373
flag || value || meaning
7474
==================================================================================
75-
KVM_HINTS_DEDICATED || 0 || guest checks this feature bit to
76-
|| || determine if there is vCPU pinning
77-
|| || and there is no vCPU over-commitment,
75+
KVM_HINTS_REALTIME || 0 || guest checks this feature bit to
76+
|| || determine that vCPUs are never
77+
|| || preempted for an unlimited time,
7878
|| || allowing optimizations
7979
----------------------------------------------------------------------------------

MAINTAINERS

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4309,7 +4309,7 @@ F: Documentation/driver-api/dma-buf.rst
43094309
T: git git://anongit.freedesktop.org/drm/drm-misc
43104310

43114311
DMA GENERIC OFFLOAD ENGINE SUBSYSTEM
4312-
M: Vinod Koul <[email protected]>
4312+
M: Vinod Koul <[email protected]>
43134313
43144314
Q: https://patchwork.kernel.org/project/linux-dmaengine/list/
43154315
S: Maintained
@@ -5388,7 +5388,6 @@ S: Maintained
53885388
F: drivers/iommu/exynos-iommu.c
53895389

53905390
EZchip NPS platform support
5391-
M: Elad Kanfi <[email protected]>
53925391
M: Vineet Gupta <[email protected]>
53935392
S: Supported
53945393
F: arch/arc/plat-eznps
@@ -7698,6 +7697,7 @@ KERNEL SELFTEST FRAMEWORK
76987697
M: Shuah Khan <[email protected]>
76997698
77007699
T: git git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest.git
7700+
Q: https://patchwork.kernel.org/project/linux-kselftest/list/
77017701
S: Maintained
77027702
F: tools/testing/selftests/
77037703
F: Documentation/dev-tools/kselftest*
@@ -9020,7 +9020,6 @@ Q: http://patchwork.ozlabs.org/project/netdev/list/
90209020
F: drivers/net/ethernet/mellanox/mlx5/core/en_*
90219021

90229022
MELLANOX ETHERNET INNOVA DRIVER
9023-
M: Ilan Tayari <[email protected]>
90249023
R: Boris Pismenny <[email protected]>
90259024
90269025
S: Supported
@@ -9030,7 +9029,6 @@ F: drivers/net/ethernet/mellanox/mlx5/core/fpga/*
90309029
F: include/linux/mlx5/mlx5_ifc_fpga.h
90319030

90329031
MELLANOX ETHERNET INNOVA IPSEC DRIVER
9033-
M: Ilan Tayari <[email protected]>
90349032
R: Boris Pismenny <[email protected]>
90359033
90369034
S: Supported
@@ -9086,7 +9084,6 @@ F: include/uapi/rdma/mlx4-abi.h
90869084

90879085
MELLANOX MLX5 core VPI driver
90889086
M: Saeed Mahameed <[email protected]>
9089-
M: Matan Barak <[email protected]>
90909087
M: Leon Romanovsky <[email protected]>
90919088
90929089
@@ -9097,7 +9094,6 @@ F: drivers/net/ethernet/mellanox/mlx5/core/
90979094
F: include/linux/mlx5/
90989095

90999096
MELLANOX MLX5 IB driver
9100-
M: Matan Barak <[email protected]>
91019097
M: Leon Romanovsky <[email protected]>
91029098
91039099
W: http://www.mellanox.com
@@ -9831,7 +9827,6 @@ F: net/netfilter/xt_CONNSECMARK.c
98319827
F: net/netfilter/xt_SECMARK.c
98329828

98339829
NETWORKING [TLS]
9834-
M: Ilya Lesokhin <[email protected]>
98359830
M: Aviad Yehezkel <[email protected]>
98369831
M: Dave Watson <[email protected]>
98379832
@@ -12220,7 +12215,7 @@ F: Documentation/s390/vfio-ccw.txt
1222012215
F: include/uapi/linux/vfio_ccw.h
1222112216

1222212217
S390 ZCRYPT DRIVER
12223-
M: Harald Freudenberger <freude@de.ibm.com>
12218+
M: Harald Freudenberger <freude@linux.ibm.com>
1222412219
1222512220
W: http://www.ibm.com/developerworks/linux/linux390/
1222612221
S: Supported
@@ -13264,6 +13259,12 @@ M: Jan-Benedict Glaw <[email protected]>
1326413259
S: Maintained
1326513260
F: arch/alpha/kernel/srm_env.c
1326613261

13262+
ST STM32 I2C/SMBUS DRIVER
13263+
M: Pierre-Yves MORDRET <[email protected]>
13264+
13265+
S: Maintained
13266+
F: drivers/i2c/busses/i2c-stm32*
13267+
1326713268
STABLE BRANCH
1326813269
M: Greg Kroah-Hartman <[email protected]>
1326913270

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
VERSION = 4
33
PATCHLEVEL = 17
44
SUBLEVEL = 0
5-
EXTRAVERSION = -rc5
5+
EXTRAVERSION = -rc6
66
NAME = Merciless Moray
77

88
# *DOCUMENTATION*

arch/alpha/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,7 @@ config ALPHA_EIGER
211211
config ALPHA_JENSEN
212212
bool "Jensen"
213213
depends on BROKEN
214+
select DMA_DIRECT_OPS
214215
help
215216
DEC PC 150 AXP (aka Jensen): This is a very old Digital system - one
216217
of the first-generation Alpha systems. A number of these systems

arch/alpha/include/asm/dma-mapping.h

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,15 @@
22
#ifndef _ALPHA_DMA_MAPPING_H
33
#define _ALPHA_DMA_MAPPING_H
44

5-
extern const struct dma_map_ops *dma_ops;
5+
extern const struct dma_map_ops alpha_pci_ops;
66

77
static inline const struct dma_map_ops *get_arch_dma_ops(struct bus_type *bus)
88
{
9-
return dma_ops;
9+
#ifdef CONFIG_ALPHA_JENSEN
10+
return &dma_direct_ops;
11+
#else
12+
return &alpha_pci_ops;
13+
#endif
1014
}
1115

1216
#endif /* _ALPHA_DMA_MAPPING_H */

0 commit comments

Comments
 (0)