Skip to content

Commit fc8eaa8

Browse files
author
Ingo Molnar
committed
Merge branch 'x86/urgent' into x86/cache, to pick up dependent fix
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2 parents 2cc81c6 + 49e00ee commit fc8eaa8

File tree

409 files changed

+3559
-2203
lines changed

Some content is hidden

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

409 files changed

+3559
-2203
lines changed

Documentation/devicetree/bindings/input/gpio-keys.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Device-Tree bindings for input/gpio_keys.c keyboard driver
1+
Device-Tree bindings for input/keyboard/gpio_keys.c keyboard driver
22

33
Required properties:
44
- compatible = "gpio-keys";

Documentation/driver-api/fpga/fpga-mgr.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,11 @@ API for implementing a new FPGA Manager driver
184184
API for programming an FPGA
185185
---------------------------
186186

187+
FPGA Manager flags
188+
189+
.. kernel-doc:: include/linux/fpga/fpga-mgr.h
190+
:doc: FPGA Manager flags
191+
187192
.. kernel-doc:: include/linux/fpga/fpga-mgr.h
188193
:functions: fpga_image_info
189194

Documentation/fb/uvesafb.txt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@ than x86. Check the v86d documentation for a list of currently supported
1515
arches.
1616

1717
v86d source code can be downloaded from the following website:
18-
http://dev.gentoo.org/~spock/projects/uvesafb
18+
19+
https://github.com/mjanusz/v86d
1920

2021
Please refer to the v86d documentation for detailed configuration and
2122
installation instructions.
@@ -177,7 +178,7 @@ from the Video BIOS if you set pixclock to 0 in fb_var_screeninfo.
177178

178179
--
179180
Michal Januszewski <spock@gentoo.org>
180-
Last updated: 2009-03-30
181+
Last updated: 2017-10-10
181182

182183
Documentation of the uvesafb options is loosely based on vesafb.txt.
183184

Documentation/networking/ip-sysctl.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -425,7 +425,7 @@ tcp_mtu_probing - INTEGER
425425
1 - Disabled by default, enabled when an ICMP black hole detected
426426
2 - Always enabled, use initial MSS of tcp_base_mss.
427427

428-
tcp_probe_interval - INTEGER
428+
tcp_probe_interval - UNSIGNED INTEGER
429429
Controls how often to start TCP Packetization-Layer Path MTU
430430
Discovery reprobe. The default is reprobing every 10 minutes as
431431
per RFC4821.

MAINTAINERS

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -324,7 +324,6 @@ F: Documentation/ABI/testing/sysfs-bus-acpi
324324
F: Documentation/ABI/testing/configfs-acpi
325325
F: drivers/pci/*acpi*
326326
F: drivers/pci/*/*acpi*
327-
F: drivers/pci/*/*/*acpi*
328327
F: tools/power/acpi/
329328

330329
ACPI APEI
@@ -1251,7 +1250,7 @@ N: meson
12511250

12521251
ARM/Annapurna Labs ALPINE ARCHITECTURE
12531252
M: Tsahee Zidenberg <tsahee@annapurnalabs.com>
1254-
M: Antoine Tenart <antoine.tenart@free-electrons.com>
1253+
M: Antoine Tenart <antoine.tenart@bootlin.com>
12551254
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
12561255
S: Maintained
12571256
F: arch/arm/mach-alpine/
@@ -2956,7 +2955,6 @@ F: include/linux/bcm963xx_tag.h
29562955

29572956
BROADCOM BNX2 GIGABIT ETHERNET DRIVER
29582957
M: Rasesh Mody <rasesh.mody@cavium.com>
2959-
M: Harish Patil <harish.patil@cavium.com>
29602958
M: Dept-GELinuxNICDev@cavium.com
29612959
L: netdev@vger.kernel.org
29622960
S: Supported
@@ -2977,6 +2975,7 @@ F: drivers/scsi/bnx2i/
29772975

29782976
BROADCOM BNX2X 10 GIGABIT ETHERNET DRIVER
29792977
M: Ariel Elior <ariel.elior@cavium.com>
2978+
M: Sudarsana Kalluru <sudarsana.kalluru@cavium.com>
29802979
M: everest-linux-l2@cavium.com
29812980
L: netdev@vger.kernel.org
29822981
S: Supported
@@ -5470,7 +5469,8 @@ S: Odd Fixes
54705469
F: drivers/net/ethernet/agere/
54715470

54725471
ETHERNET BRIDGE
5473-
M: Stephen Hemminger <stephen@networkplumber.org>
5472+
M: Roopa Prabhu <roopa@cumulusnetworks.com>
5473+
M: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
54745474
L: bridge@lists.linux-foundation.org (moderated for non-subscribers)
54755475
L: netdev@vger.kernel.org
54765476
W: http://www.linuxfoundation.org/en/Net:Bridge
@@ -8598,7 +8598,6 @@ F: include/linux/spinlock*.h
85988598
F: arch/*/include/asm/spinlock*.h
85998599
F: include/linux/rwlock*.h
86008600
F: include/linux/mutex*.h
8601-
F: arch/*/include/asm/mutex*.h
86028601
F: include/linux/rwsem*.h
86038602
F: arch/*/include/asm/rwsem.h
86048603
F: include/linux/seqlock.h
@@ -9716,13 +9715,6 @@ Q: http://patchwork.linuxtv.org/project/linux-media/list/
97169715
S: Maintained
97179716
F: drivers/media/dvb-frontends/mn88473*
97189717

9719-
PCI DRIVER FOR MOBIVEIL PCIE IP
9720-
M: Subrahmanya Lingappa <l.subrahmanya@mobiveil.co.in>
9721-
L: linux-pci@vger.kernel.org
9722-
S: Supported
9723-
F: Documentation/devicetree/bindings/pci/mobiveil-pcie.txt
9724-
F: drivers/pci/controller/pcie-mobiveil.c
9725-
97269718
MODULE SUPPORT
97279719
M: Jessica Yu <jeyu@kernel.org>
97289720
T: git git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux.git modules-next
@@ -10949,7 +10941,7 @@ M: Willy Tarreau <willy@haproxy.com>
1094910941
M: Ksenija Stanojevic <ksenija.stanojevic@gmail.com>
1095010942
S: Odd Fixes
1095110943
F: Documentation/auxdisplay/lcd-panel-cgram.txt
10952-
F: drivers/misc/panel.c
10944+
F: drivers/auxdisplay/panel.c
1095310945

1095410946
PARALLEL PORT SUBSYSTEM
1095510947
M: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
@@ -11137,6 +11129,13 @@ F: include/uapi/linux/switchtec_ioctl.h
1113711129
F: include/linux/switchtec.h
1113811130
F: drivers/ntb/hw/mscc/
1113911131

11132+
PCI DRIVER FOR MOBIVEIL PCIE IP
11133+
M: Subrahmanya Lingappa <l.subrahmanya@mobiveil.co.in>
11134+
L: linux-pci@vger.kernel.org
11135+
S: Supported
11136+
F: Documentation/devicetree/bindings/pci/mobiveil-pcie.txt
11137+
F: drivers/pci/controller/pcie-mobiveil.c
11138+
1114011139
PCI DRIVER FOR MVEBU (Marvell Armada 370 and Armada XP SOC support)
1114111140
M: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
1114211141
M: Jason Cooper <jason@lakedaemon.net>
@@ -11203,8 +11202,14 @@ F: tools/pci/
1120311202

1120411203
PCI ENHANCED ERROR HANDLING (EEH) FOR POWERPC
1120511204
M: Russell Currey <ruscur@russell.cc>
11205+
M: Sam Bobroff <sbobroff@linux.ibm.com>
11206+
M: Oliver O'Halloran <oohall@gmail.com>
1120611207
L: linuxppc-dev@lists.ozlabs.org
1120711208
S: Supported
11209+
F: Documentation/PCI/pci-error-recovery.txt
11210+
F: drivers/pci/pcie/aer.c
11211+
F: drivers/pci/pcie/dpc.c
11212+
F: drivers/pci/pcie/err.c
1120811213
F: Documentation/powerpc/eeh-pci-error-recovery.txt
1120911214
F: arch/powerpc/kernel/eeh*.c
1121011215
F: arch/powerpc/platforms/*/eeh*.c
@@ -11973,15 +11978,14 @@ F: Documentation/scsi/LICENSE.qla4xxx
1197311978
F: drivers/scsi/qla4xxx/
1197411979

1197511980
QLOGIC QLCNIC (1/10)Gb ETHERNET DRIVER
11976-
M: Harish Patil <harish.patil@cavium.com>
11981+
M: Shahed Shaikh <Shahed.Shaikh@cavium.com>
1197711982
M: Manish Chopra <manish.chopra@cavium.com>
1197811983
M: Dept-GELinuxNICDev@cavium.com
1197911984
L: netdev@vger.kernel.org
1198011985
S: Supported
1198111986
F: drivers/net/ethernet/qlogic/qlcnic/
1198211987

1198311988
QLOGIC QLGE 10Gb ETHERNET DRIVER
11984-
M: Harish Patil <harish.patil@cavium.com>
1198511989
M: Manish Chopra <manish.chopra@cavium.com>
1198611990
M: Dept-GELinuxNICDev@cavium.com
1198711991
L: netdev@vger.kernel.org
@@ -15389,7 +15393,7 @@ S: Maintained
1538915393
UVESAFB DRIVER
1539015394
M: Michal Januszewski <spock@gentoo.org>
1539115395
L: linux-fbdev@vger.kernel.org
15392-
W: http://dev.gentoo.org/~spock/projects/uvesafb/
15396+
W: https://github.com/mjanusz/v86d
1539315397
S: Maintained
1539415398
F: Documentation/fb/uvesafb.txt
1539515399
F: drivers/video/fbdev/uvesafb.*

Makefile

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

88
# *DOCUMENTATION*

arch/arm/boot/dts/at91-sama5d2_ptc_ek.dts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
#include "sama5d2-pinfunc.h"
1212
#include <dt-bindings/mfd/atmel-flexcom.h>
1313
#include <dt-bindings/gpio/gpio.h>
14+
#include <dt-bindings/pinctrl/at91.h>
1415

1516
/ {
1617
model = "Atmel SAMA5D2 PTC EK";
@@ -299,6 +300,7 @@
299300
<PIN_PA30__NWE_NANDWE>,
300301
<PIN_PB2__NRD_NANDOE>;
301302
bias-pull-up;
303+
atmel,drive-strength = <ATMEL_PIO_DRVSTR_ME>;
302304
};
303305

304306
ale_cle_rdy_cs {

arch/arm/boot/dts/bcm63138.dtsi

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -106,21 +106,23 @@
106106
global_timer: timer@1e200 {
107107
compatible = "arm,cortex-a9-global-timer";
108108
reg = <0x1e200 0x20>;
109-
interrupts = <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH>;
109+
interrupts = <GIC_PPI 11 IRQ_TYPE_EDGE_RISING>;
110110
clocks = <&axi_clk>;
111111
};
112112

113113
local_timer: local-timer@1e600 {
114114
compatible = "arm,cortex-a9-twd-timer";
115115
reg = <0x1e600 0x20>;
116-
interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_HIGH>;
116+
interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) |
117+
IRQ_TYPE_EDGE_RISING)>;
117118
clocks = <&axi_clk>;
118119
};
119120

120121
twd_watchdog: watchdog@1e620 {
121122
compatible = "arm,cortex-a9-twd-wdt";
122123
reg = <0x1e620 0x20>;
123-
interrupts = <GIC_PPI 14 IRQ_TYPE_LEVEL_HIGH>;
124+
interrupts = <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) |
125+
IRQ_TYPE_LEVEL_HIGH)>;
124126
};
125127

126128
armpll: armpll {
@@ -158,7 +160,7 @@
158160
serial0: serial@600 {
159161
compatible = "brcm,bcm6345-uart";
160162
reg = <0x600 0x1b>;
161-
interrupts = <GIC_SPI 32 0>;
163+
interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
162164
clocks = <&periph_clk>;
163165
clock-names = "periph";
164166
status = "disabled";
@@ -167,7 +169,7 @@
167169
serial1: serial@620 {
168170
compatible = "brcm,bcm6345-uart";
169171
reg = <0x620 0x1b>;
170-
interrupts = <GIC_SPI 33 0>;
172+
interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
171173
clocks = <&periph_clk>;
172174
clock-names = "periph";
173175
status = "disabled";
@@ -180,7 +182,7 @@
180182
reg = <0x2000 0x600>, <0xf0 0x10>;
181183
reg-names = "nand", "nand-int-base";
182184
status = "disabled";
183-
interrupts = <GIC_SPI 38 0>;
185+
interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
184186
interrupt-names = "nand";
185187
};
186188

arch/arm/boot/dts/stm32mp157c.dtsi

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1078,8 +1078,8 @@
10781078
interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
10791079
clocks = <&rcc SPI6_K>;
10801080
resets = <&rcc SPI6_R>;
1081-
dmas = <&mdma1 34 0x0 0x40008 0x0 0x0 0>,
1082-
<&mdma1 35 0x0 0x40002 0x0 0x0 0>;
1081+
dmas = <&mdma1 34 0x0 0x40008 0x0 0x0>,
1082+
<&mdma1 35 0x0 0x40002 0x0 0x0>;
10831083
dma-names = "rx", "tx";
10841084
status = "disabled";
10851085
};

arch/arm/boot/dts/sun8i-r40.dtsi

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -800,8 +800,7 @@
800800
};
801801

802802
hdmi_phy: hdmi-phy@1ef0000 {
803-
compatible = "allwinner,sun8i-r40-hdmi-phy",
804-
"allwinner,sun50i-a64-hdmi-phy";
803+
compatible = "allwinner,sun8i-r40-hdmi-phy";
805804
reg = <0x01ef0000 0x10000>;
806805
clocks = <&ccu CLK_BUS_HDMI1>, <&ccu CLK_HDMI_SLOW>,
807806
<&ccu 7>, <&ccu 16>;

arch/arm/mm/ioremap.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -473,7 +473,7 @@ void pci_ioremap_set_mem_type(int mem_type)
473473

474474
int pci_ioremap_io(unsigned int offset, phys_addr_t phys_addr)
475475
{
476-
BUG_ON(offset + SZ_64K > IO_SPACE_LIMIT);
476+
BUG_ON(offset + SZ_64K - 1 > IO_SPACE_LIMIT);
477477

478478
return ioremap_page_range(PCI_IO_VIRT_BASE + offset,
479479
PCI_IO_VIRT_BASE + offset + SZ_64K,

arch/arm/tools/syscall.tbl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -413,3 +413,4 @@
413413
396 common pkey_free sys_pkey_free
414414
397 common statx sys_statx
415415
398 common rseq sys_rseq
416+
399 common io_pgetevents sys_io_pgetevents

arch/arm64/kvm/guest.c

Lines changed: 54 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,45 @@ static u64 core_reg_offset_from_id(u64 id)
5757
return id & ~(KVM_REG_ARCH_MASK | KVM_REG_SIZE_MASK | KVM_REG_ARM_CORE);
5858
}
5959

60+
static int validate_core_offset(const struct kvm_one_reg *reg)
61+
{
62+
u64 off = core_reg_offset_from_id(reg->id);
63+
int size;
64+
65+
switch (off) {
66+
case KVM_REG_ARM_CORE_REG(regs.regs[0]) ...
67+
KVM_REG_ARM_CORE_REG(regs.regs[30]):
68+
case KVM_REG_ARM_CORE_REG(regs.sp):
69+
case KVM_REG_ARM_CORE_REG(regs.pc):
70+
case KVM_REG_ARM_CORE_REG(regs.pstate):
71+
case KVM_REG_ARM_CORE_REG(sp_el1):
72+
case KVM_REG_ARM_CORE_REG(elr_el1):
73+
case KVM_REG_ARM_CORE_REG(spsr[0]) ...
74+
KVM_REG_ARM_CORE_REG(spsr[KVM_NR_SPSR - 1]):
75+
size = sizeof(__u64);
76+
break;
77+
78+
case KVM_REG_ARM_CORE_REG(fp_regs.vregs[0]) ...
79+
KVM_REG_ARM_CORE_REG(fp_regs.vregs[31]):
80+
size = sizeof(__uint128_t);
81+
break;
82+
83+
case KVM_REG_ARM_CORE_REG(fp_regs.fpsr):
84+
case KVM_REG_ARM_CORE_REG(fp_regs.fpcr):
85+
size = sizeof(__u32);
86+
break;
87+
88+
default:
89+
return -EINVAL;
90+
}
91+
92+
if (KVM_REG_SIZE(reg->id) == size &&
93+
IS_ALIGNED(off, size / sizeof(__u32)))
94+
return 0;
95+
96+
return -EINVAL;
97+
}
98+
6099
static int get_core_reg(struct kvm_vcpu *vcpu, const struct kvm_one_reg *reg)
61100
{
62101
/*
@@ -76,6 +115,9 @@ static int get_core_reg(struct kvm_vcpu *vcpu, const struct kvm_one_reg *reg)
76115
(off + (KVM_REG_SIZE(reg->id) / sizeof(__u32))) >= nr_regs)
77116
return -ENOENT;
78117

118+
if (validate_core_offset(reg))
119+
return -EINVAL;
120+
79121
if (copy_to_user(uaddr, ((u32 *)regs) + off, KVM_REG_SIZE(reg->id)))
80122
return -EFAULT;
81123

@@ -98,6 +140,9 @@ static int set_core_reg(struct kvm_vcpu *vcpu, const struct kvm_one_reg *reg)
98140
(off + (KVM_REG_SIZE(reg->id) / sizeof(__u32))) >= nr_regs)
99141
return -ENOENT;
100142

143+
if (validate_core_offset(reg))
144+
return -EINVAL;
145+
101146
if (KVM_REG_SIZE(reg->id) > sizeof(tmp))
102147
return -EINVAL;
103148

@@ -107,17 +152,25 @@ static int set_core_reg(struct kvm_vcpu *vcpu, const struct kvm_one_reg *reg)
107152
}
108153

109154
if (off == KVM_REG_ARM_CORE_REG(regs.pstate)) {
110-
u32 mode = (*(u32 *)valp) & PSR_AA32_MODE_MASK;
155+
u64 mode = (*(u64 *)valp) & PSR_AA32_MODE_MASK;
111156
switch (mode) {
112157
case PSR_AA32_MODE_USR:
158+
if (!system_supports_32bit_el0())
159+
return -EINVAL;
160+
break;
113161
case PSR_AA32_MODE_FIQ:
114162
case PSR_AA32_MODE_IRQ:
115163
case PSR_AA32_MODE_SVC:
116164
case PSR_AA32_MODE_ABT:
117165
case PSR_AA32_MODE_UND:
166+
if (!vcpu_el1_is_32bit(vcpu))
167+
return -EINVAL;
168+
break;
118169
case PSR_MODE_EL0t:
119170
case PSR_MODE_EL1t:
120171
case PSR_MODE_EL1h:
172+
if (vcpu_el1_is_32bit(vcpu))
173+
return -EINVAL;
121174
break;
122175
default:
123176
err = -EINVAL;

0 commit comments

Comments
 (0)