Skip to content

Commit 7b41528

Browse files
committed
Merge tag 'v4.3-rc4' into next
Merge with mainline to sync up with changes to parkbd driver.
2 parents c65cf81 + 049e6dd commit 7b41528

File tree

286 files changed

+2525
-1622
lines changed

Some content is hidden

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

286 files changed

+2525
-1622
lines changed

Documentation/Changes

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ o udev 081 # udevd --version
4343
o grub 0.93 # grub --version || grub-install --version
4444
o mcelog 0.6 # mcelog --version
4545
o iptables 1.4.2 # iptables -V
46-
o openssl & libcrypto 1.0.1k # openssl version
46+
o openssl & libcrypto 1.0.0 # openssl version
4747

4848

4949
Kernel compilation

Documentation/devicetree/bindings/input/cypress,cyapa.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ Example:
2525
/* Cypress Gen3 touchpad */
2626
touchpad@67 {
2727
compatible = "cypress,cyapa";
28-
reg = <0x24>;
28+
reg = <0x67>;
2929
interrupt-parent = <&gpio>;
3030
interrupts = <2 IRQ_TYPE_EDGE_FALLING>; /* GPIO 2 */
3131
wakeup-source;

Documentation/devicetree/bindings/interrupt-controller/qca,ath79-misc-intc.txt

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,18 @@ The MISC interrupt controller is a secondary controller for lower priority
44
interrupt.
55

66
Required Properties:
7-
- compatible: has to be "qca,<soctype>-cpu-intc", "qca,ar7100-misc-intc"
8-
as fallback
7+
- compatible: has to be "qca,<soctype>-cpu-intc", "qca,ar7100-misc-intc" or
8+
"qca,<soctype>-cpu-intc", "qca,ar7240-misc-intc"
99
- reg: Base address and size of the controllers memory area
1010
- interrupt-parent: phandle of the parent interrupt controller.
1111
- interrupts: Interrupt specifier for the controllers interrupt.
1212
- interrupt-controller : Identifies the node as an interrupt controller
1313
- #interrupt-cells : Specifies the number of cells needed to encode interrupt
1414
source, should be 1
1515

16+
Compatible fallback depends on the SoC. Use ar7100 for ar71xx and ar913x,
17+
use ar7240 for all other SoCs.
18+
1619
Please refer to interrupts.txt in this directory for details of the common
1720
Interrupt Controllers bindings used by client devices.
1821

@@ -28,3 +31,16 @@ Example:
2831
interrupt-controller;
2932
#interrupt-cells = <1>;
3033
};
34+
35+
Another example:
36+
37+
interrupt-controller@18060010 {
38+
compatible = "qca,ar9331-misc-intc", qca,ar7240-misc-intc";
39+
reg = <0x18060010 0x4>;
40+
41+
interrupt-parent = <&cpuintc>;
42+
interrupts = <6>;
43+
44+
interrupt-controller;
45+
#interrupt-cells = <1>;
46+
};

Documentation/input/multi-touch-protocol.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -361,7 +361,7 @@ For win8 devices with both T and C coordinates, the position mapping is
361361
ABS_MT_POSITION_X := T_X
362362
ABS_MT_POSITION_Y := T_Y
363363
ABS_MT_TOOL_X := C_X
364-
ABS_MT_TOOL_X := C_Y
364+
ABS_MT_TOOL_Y := C_Y
365365

366366
Unfortunately, there is not enough information to specify both the touching
367367
ellipse and the tool ellipse, so one has to resort to approximations. One

Documentation/power/pci.txt

Lines changed: 38 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -979,20 +979,45 @@ every time right after the runtime_resume() callback has returned
979979
(alternatively, the runtime_suspend() callback will have to check if the
980980
device should really be suspended and return -EAGAIN if that is not the case).
981981

982-
The runtime PM of PCI devices is disabled by default. It is also blocked by
983-
pci_pm_init() that runs the pm_runtime_forbid() helper function. If a PCI
984-
driver implements the runtime PM callbacks and intends to use the runtime PM
985-
framework provided by the PM core and the PCI subsystem, it should enable this
986-
feature by executing the pm_runtime_enable() helper function. However, the
987-
driver should not call the pm_runtime_allow() helper function unblocking
988-
the runtime PM of the device. Instead, it should allow user space or some
989-
platform-specific code to do that (user space can do it via sysfs), although
990-
once it has called pm_runtime_enable(), it must be prepared to handle the
982+
The runtime PM of PCI devices is enabled by default by the PCI core. PCI
983+
device drivers do not need to enable it and should not attempt to do so.
984+
However, it is blocked by pci_pm_init() that runs the pm_runtime_forbid()
985+
helper function. In addition to that, the runtime PM usage counter of
986+
each PCI device is incremented by local_pci_probe() before executing the
987+
probe callback provided by the device's driver.
988+
989+
If a PCI driver implements the runtime PM callbacks and intends to use the
990+
runtime PM framework provided by the PM core and the PCI subsystem, it needs
991+
to decrement the device's runtime PM usage counter in its probe callback
992+
function. If it doesn't do that, the counter will always be different from
993+
zero for the device and it will never be runtime-suspended. The simplest
994+
way to do that is by calling pm_runtime_put_noidle(), but if the driver
995+
wants to schedule an autosuspend right away, for example, it may call
996+
pm_runtime_put_autosuspend() instead for this purpose. Generally, it
997+
just needs to call a function that decrements the devices usage counter
998+
from its probe routine to make runtime PM work for the device.
999+
1000+
It is important to remember that the driver's runtime_suspend() callback
1001+
may be executed right after the usage counter has been decremented, because
1002+
user space may already have cuased the pm_runtime_allow() helper function
1003+
unblocking the runtime PM of the device to run via sysfs, so the driver must
1004+
be prepared to cope with that.
1005+
1006+
The driver itself should not call pm_runtime_allow(), though. Instead, it
1007+
should let user space or some platform-specific code do that (user space can
1008+
do it via sysfs as stated above), but it must be prepared to handle the
9911009
runtime PM of the device correctly as soon as pm_runtime_allow() is called
992-
(which may happen at any time). [It also is possible that user space causes
993-
pm_runtime_allow() to be called via sysfs before the driver is loaded, so in
994-
fact the driver has to be prepared to handle the runtime PM of the device as
995-
soon as it calls pm_runtime_enable().]
1010+
(which may happen at any time, even before the driver is loaded).
1011+
1012+
When the driver's remove callback runs, it has to balance the decrementation
1013+
of the device's runtime PM usage counter at the probe time. For this reason,
1014+
if it has decremented the counter in its probe callback, it must run
1015+
pm_runtime_get_noresume() in its remove callback. [Since the core carries
1016+
out a runtime resume of the device and bumps up the device's usage counter
1017+
before running the driver's remove callback, the runtime PM of the device
1018+
is effectively disabled for the duration of the remove execution and all
1019+
runtime PM helper functions incrementing the device's usage counter are
1020+
then effectively equivalent to pm_runtime_get_noresume().]
9961021

9971022
The runtime PM framework works by processing requests to suspend or resume
9981023
devices, or to check if they are idle (in which cases it is reasonable to

Documentation/ptp/testptp.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
1919
*/
2020
#define _GNU_SOURCE
21+
#define __SANE_USERSPACE_TYPES__ /* For PPC64, to get LL64 types */
2122
#include <errno.h>
2223
#include <fcntl.h>
2324
#include <inttypes.h>

MAINTAINERS

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5957,15 +5957,15 @@ F: virt/kvm/
59575957
KERNEL VIRTUAL MACHINE (KVM) FOR AMD-V
59585958
M: Joerg Roedel <[email protected]>
59595959
5960-
W: http://kvm.qumranet.com
5960+
W: http://www.linux-kvm.org/
59615961
S: Maintained
59625962
F: arch/x86/include/asm/svm.h
59635963
F: arch/x86/kvm/svm.c
59645964

59655965
KERNEL VIRTUAL MACHINE (KVM) FOR POWERPC
59665966
M: Alexander Graf <[email protected]>
59675967
5968-
W: http://kvm.qumranet.com
5968+
W: http://www.linux-kvm.org/
59695969
T: git git://github.com/agraf/linux-2.6.git
59705970
S: Supported
59715971
F: arch/powerpc/include/asm/kvm*

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
VERSION = 4
22
PATCHLEVEL = 3
33
SUBLEVEL = 0
4-
EXTRAVERSION = -rc3
4+
EXTRAVERSION = -rc4
55
NAME = Hurr durr I'ma sheep
66

77
# *DOCUMENTATION*

arch/arc/include/asm/Kbuild

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,4 +48,5 @@ generic-y += types.h
4848
generic-y += ucontext.h
4949
generic-y += user.h
5050
generic-y += vga.h
51+
generic-y += word-at-a-time.h
5152
generic-y += xor.h

arch/arm64/include/asm/pgtable.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ extern void __pgd_error(const char *file, int line, unsigned long val);
7979
#define PAGE_S2 __pgprot(PROT_DEFAULT | PTE_S2_MEMATTR(MT_S2_NORMAL) | PTE_S2_RDONLY)
8080
#define PAGE_S2_DEVICE __pgprot(PROT_DEFAULT | PTE_S2_MEMATTR(MT_S2_DEVICE_nGnRE) | PTE_S2_RDONLY | PTE_UXN)
8181

82-
#define PAGE_NONE __pgprot(((_PAGE_DEFAULT) & ~PTE_TYPE_MASK) | PTE_PROT_NONE | PTE_PXN | PTE_UXN)
82+
#define PAGE_NONE __pgprot(((_PAGE_DEFAULT) & ~PTE_VALID) | PTE_PROT_NONE | PTE_PXN | PTE_UXN)
8383
#define PAGE_SHARED __pgprot(_PAGE_DEFAULT | PTE_USER | PTE_NG | PTE_PXN | PTE_UXN | PTE_WRITE)
8484
#define PAGE_SHARED_EXEC __pgprot(_PAGE_DEFAULT | PTE_USER | PTE_NG | PTE_PXN | PTE_WRITE)
8585
#define PAGE_COPY __pgprot(_PAGE_DEFAULT | PTE_USER | PTE_NG | PTE_PXN | PTE_UXN)
@@ -496,7 +496,7 @@ static inline pud_t *pud_offset(pgd_t *pgd, unsigned long addr)
496496
static inline pte_t pte_modify(pte_t pte, pgprot_t newprot)
497497
{
498498
const pteval_t mask = PTE_USER | PTE_PXN | PTE_UXN | PTE_RDONLY |
499-
PTE_PROT_NONE | PTE_WRITE | PTE_TYPE_MASK;
499+
PTE_PROT_NONE | PTE_VALID | PTE_WRITE;
500500
/* preserve the hardware dirty information */
501501
if (pte_hw_dirty(pte))
502502
pte = pte_mkdirty(pte);

arch/arm64/kernel/efi.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -258,7 +258,8 @@ static bool __init efi_virtmap_init(void)
258258
*/
259259
if (!is_normal_ram(md))
260260
prot = __pgprot(PROT_DEVICE_nGnRE);
261-
else if (md->type == EFI_RUNTIME_SERVICES_CODE)
261+
else if (md->type == EFI_RUNTIME_SERVICES_CODE ||
262+
!PAGE_ALIGNED(md->phys_addr))
262263
prot = PAGE_KERNEL_EXEC;
263264
else
264265
prot = PAGE_KERNEL;

arch/arm64/kernel/entry-ftrace.S

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,24 @@ ENTRY(ftrace_stub)
178178
ENDPROC(ftrace_stub)
179179

180180
#ifdef CONFIG_FUNCTION_GRAPH_TRACER
181+
/* save return value regs*/
182+
.macro save_return_regs
183+
sub sp, sp, #64
184+
stp x0, x1, [sp]
185+
stp x2, x3, [sp, #16]
186+
stp x4, x5, [sp, #32]
187+
stp x6, x7, [sp, #48]
188+
.endm
189+
190+
/* restore return value regs*/
191+
.macro restore_return_regs
192+
ldp x0, x1, [sp]
193+
ldp x2, x3, [sp, #16]
194+
ldp x4, x5, [sp, #32]
195+
ldp x6, x7, [sp, #48]
196+
add sp, sp, #64
197+
.endm
198+
181199
/*
182200
* void ftrace_graph_caller(void)
183201
*
@@ -204,11 +222,11 @@ ENDPROC(ftrace_graph_caller)
204222
* only when CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST is enabled.
205223
*/
206224
ENTRY(return_to_handler)
207-
str x0, [sp, #-16]!
225+
save_return_regs
208226
mov x0, x29 // parent's fp
209227
bl ftrace_return_to_handler// addr = ftrace_return_to_hander(fp);
210228
mov x30, x0 // restore the original return address
211-
ldr x0, [sp], #16
229+
restore_return_regs
212230
ret
213231
END(return_to_handler)
214232
#endif /* CONFIG_FUNCTION_GRAPH_TRACER */

arch/avr32/include/asm/Kbuild

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,4 +20,5 @@ generic-y += sections.h
2020
generic-y += topology.h
2121
generic-y += trace_clock.h
2222
generic-y += vga.h
23+
generic-y += word-at-a-time.h
2324
generic-y += xor.h

arch/blackfin/include/asm/Kbuild

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,4 +46,5 @@ generic-y += types.h
4646
generic-y += ucontext.h
4747
generic-y += unaligned.h
4848
generic-y += user.h
49+
generic-y += word-at-a-time.h
4950
generic-y += xor.h

arch/c6x/include/asm/Kbuild

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,4 +59,5 @@ generic-y += types.h
5959
generic-y += ucontext.h
6060
generic-y += user.h
6161
generic-y += vga.h
62+
generic-y += word-at-a-time.h
6263
generic-y += xor.h

arch/cris/include/asm/Kbuild

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,4 +43,5 @@ generic-y += topology.h
4343
generic-y += trace_clock.h
4444
generic-y += types.h
4545
generic-y += vga.h
46+
generic-y += word-at-a-time.h
4647
generic-y += xor.h

arch/frv/include/asm/Kbuild

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,4 @@ generic-y += mcs_spinlock.h
77
generic-y += mm-arch-hooks.h
88
generic-y += preempt.h
99
generic-y += trace_clock.h
10+
generic-y += word-at-a-time.h

arch/hexagon/include/asm/Kbuild

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,4 +58,5 @@ generic-y += types.h
5858
generic-y += ucontext.h
5959
generic-y += unaligned.h
6060
generic-y += vga.h
61+
generic-y += word-at-a-time.h
6162
generic-y += xor.h

arch/ia64/include/asm/Kbuild

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,4 @@ generic-y += mm-arch-hooks.h
88
generic-y += preempt.h
99
generic-y += trace_clock.h
1010
generic-y += vtime.h
11+
generic-y += word-at-a-time.h

arch/m32r/include/asm/Kbuild

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,4 @@ generic-y += module.h
99
generic-y += preempt.h
1010
generic-y += sections.h
1111
generic-y += trace_clock.h
12+
generic-y += word-at-a-time.h

arch/m68k/configs/amiga_defconfig

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ CONFIG_LOG_BUF_SHIFT=16
1010
# CONFIG_PID_NS is not set
1111
# CONFIG_NET_NS is not set
1212
CONFIG_BLK_DEV_INITRD=y
13+
CONFIG_USERFAULTFD=y
1314
CONFIG_SLAB=y
1415
CONFIG_MODULES=y
1516
CONFIG_MODULE_UNLOAD=y
@@ -57,7 +58,6 @@ CONFIG_NET_IPGRE_DEMUX=m
5758
CONFIG_NET_IPGRE=m
5859
CONFIG_NET_IPVTI=m
5960
CONFIG_NET_FOU_IP_TUNNELS=y
60-
CONFIG_GENEVE_CORE=m
6161
CONFIG_INET_AH=m
6262
CONFIG_INET_ESP=m
6363
CONFIG_INET_IPCOMP=m
@@ -67,10 +67,12 @@ CONFIG_INET_XFRM_MODE_BEET=m
6767
# CONFIG_INET_LRO is not set
6868
CONFIG_INET_DIAG=m
6969
CONFIG_INET_UDP_DIAG=m
70+
CONFIG_IPV6=m
7071
CONFIG_IPV6_ROUTER_PREF=y
7172
CONFIG_INET6_AH=m
7273
CONFIG_INET6_ESP=m
7374
CONFIG_INET6_IPCOMP=m
75+
CONFIG_IPV6_ILA=m
7476
CONFIG_IPV6_VTI=m
7577
CONFIG_IPV6_GRE=m
7678
CONFIG_NETFILTER=y
@@ -179,6 +181,7 @@ CONFIG_IP_SET_HASH_NETIFACE=m
179181
CONFIG_IP_SET_LIST_SET=m
180182
CONFIG_NF_CONNTRACK_IPV4=m
181183
CONFIG_NFT_CHAIN_ROUTE_IPV4=m
184+
CONFIG_NFT_DUP_IPV4=m
182185
CONFIG_NF_TABLES_ARP=m
183186
CONFIG_NF_LOG_ARP=m
184187
CONFIG_NFT_CHAIN_NAT_IPV4=m
@@ -206,6 +209,7 @@ CONFIG_IP_NF_ARPFILTER=m
206209
CONFIG_IP_NF_ARP_MANGLE=m
207210
CONFIG_NF_CONNTRACK_IPV6=m
208211
CONFIG_NFT_CHAIN_ROUTE_IPV6=m
212+
CONFIG_NFT_DUP_IPV6=m
209213
CONFIG_NFT_CHAIN_NAT_IPV6=m
210214
CONFIG_NFT_MASQ_IPV6=m
211215
CONFIG_NFT_REDIR_IPV6=m
@@ -271,6 +275,7 @@ CONFIG_NETLINK_DIAG=m
271275
CONFIG_MPLS=y
272276
CONFIG_NET_MPLS_GSO=m
273277
CONFIG_MPLS_ROUTING=m
278+
CONFIG_MPLS_IPTUNNEL=m
274279
# CONFIG_WIRELESS is not set
275280
# CONFIG_UEVENT_HELPER is not set
276281
CONFIG_DEVTMPFS=y
@@ -370,6 +375,7 @@ CONFIG_ZORRO8390=y
370375
# CONFIG_NET_VENDOR_SEEQ is not set
371376
# CONFIG_NET_VENDOR_SMSC is not set
372377
# CONFIG_NET_VENDOR_STMICRO is not set
378+
# CONFIG_NET_VENDOR_SYNOPSYS is not set
373379
# CONFIG_NET_VENDOR_VIA is not set
374380
# CONFIG_NET_VENDOR_WIZNET is not set
375381
CONFIG_PPP=m
@@ -537,6 +543,7 @@ CONFIG_TEST_USER_COPY=m
537543
CONFIG_TEST_BPF=m
538544
CONFIG_TEST_FIRMWARE=m
539545
CONFIG_TEST_UDELAY=m
546+
CONFIG_TEST_STATIC_KEYS=m
540547
CONFIG_EARLY_PRINTK=y
541548
CONFIG_ENCRYPTED_KEYS=m
542549
CONFIG_CRYPTO_RSA=m

0 commit comments

Comments
 (0)