Skip to content

Commit ff24e49

Browse files
committed
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Three trivial overlapping conflicts. Signed-off-by: David S. Miller <[email protected]>
2 parents 26f146e + ea98667 commit ff24e49

File tree

167 files changed

+1373
-725
lines changed

Some content is hidden

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

167 files changed

+1373
-725
lines changed

Documentation/driver-api/usb/power-management.rst

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -370,11 +370,15 @@ autosuspend the interface's device. When the usage counter is = 0
370370
then the interface is considered to be idle, and the kernel may
371371
autosuspend the device.
372372

373-
Drivers need not be concerned about balancing changes to the usage
374-
counter; the USB core will undo any remaining "get"s when a driver
375-
is unbound from its interface. As a corollary, drivers must not call
376-
any of the ``usb_autopm_*`` functions after their ``disconnect``
377-
routine has returned.
373+
Drivers must be careful to balance their overall changes to the usage
374+
counter. Unbalanced "get"s will remain in effect when a driver is
375+
unbound from its interface, preventing the device from going into
376+
runtime suspend should the interface be bound to a driver again. On
377+
the other hand, drivers are allowed to achieve this balance by calling
378+
the ``usb_autopm_*`` functions even after their ``disconnect`` routine
379+
has returned -- say from within a work-queue routine -- provided they
380+
retain an active reference to the interface (via ``usb_get_intf`` and
381+
``usb_put_intf``).
378382

379383
Drivers using the async routines are responsible for their own
380384
synchronization and mutual exclusion.

Documentation/networking/ip-sysctl.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1342,6 +1342,7 @@ tag - INTEGER
13421342
Default value is 0.
13431343

13441344
xfrm4_gc_thresh - INTEGER
1345+
(Obsolete since linux-4.14)
13451346
The threshold at which we will start garbage collecting for IPv4
13461347
destination cache entries. At twice this value the system will
13471348
refuse new allocations.
@@ -1950,6 +1951,7 @@ echo_ignore_anycast - BOOLEAN
19501951
Default: 0
19511952

19521953
xfrm6_gc_thresh - INTEGER
1954+
(Obsolete since linux-4.14)
19531955
The threshold at which we will start garbage collecting for IPv6
19541956
destination cache entries. At twice this value the system will
19551957
refuse new allocations.

Documentation/networking/netdev-FAQ.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ version that should be applied. If there is any doubt, the maintainer
132132
will reply and ask what should be done.
133133

134134
Q: I made changes to only a few patches in a patch series should I resend only those changed?
135-
--------------------------------------------------------------------------------------------
135+
---------------------------------------------------------------------------------------------
136136
A: No, please resend the entire patch series and make sure you do number your
137137
patches such that it is clear this is the latest and greatest set of patches
138138
that can be applied.

Documentation/sysctl/vm.txt

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -866,14 +866,14 @@ The intent is that compaction has less work to do in the future and to
866866
increase the success rate of future high-order allocations such as SLUB
867867
allocations, THP and hugetlbfs pages.
868868

869-
To make it sensible with respect to the watermark_scale_factor parameter,
870-
the unit is in fractions of 10,000. The default value of 15,000 means
871-
that up to 150% of the high watermark will be reclaimed in the event of
872-
a pageblock being mixed due to fragmentation. The level of reclaim is
873-
determined by the number of fragmentation events that occurred in the
874-
recent past. If this value is smaller than a pageblock then a pageblocks
875-
worth of pages will be reclaimed (e.g. 2MB on 64-bit x86). A boost factor
876-
of 0 will disable the feature.
869+
To make it sensible with respect to the watermark_scale_factor
870+
parameter, the unit is in fractions of 10,000. The default value of
871+
15,000 on !DISCONTIGMEM configurations means that up to 150% of the high
872+
watermark will be reclaimed in the event of a pageblock being mixed due
873+
to fragmentation. The level of reclaim is determined by the number of
874+
fragmentation events that occurred in the recent past. If this value is
875+
smaller than a pageblock then a pageblocks worth of pages will be reclaimed
876+
(e.g. 2MB on 64-bit x86). A boost factor of 0 will disable the feature.
877877

878878
=============================================================
879879

Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
VERSION = 5
33
PATCHLEVEL = 1
44
SUBLEVEL = 0
5-
EXTRAVERSION = -rc6
5+
EXTRAVERSION = -rc7
66
NAME = Shy Crocodile
77

88
# *DOCUMENTATION*
@@ -679,6 +679,7 @@ KBUILD_CFLAGS += $(call cc-disable-warning,frame-address,)
679679
KBUILD_CFLAGS += $(call cc-disable-warning, format-truncation)
680680
KBUILD_CFLAGS += $(call cc-disable-warning, format-overflow)
681681
KBUILD_CFLAGS += $(call cc-disable-warning, int-in-bool-context)
682+
KBUILD_CFLAGS += $(call cc-disable-warning, address-of-packed-member)
682683

683684
ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
684685
KBUILD_CFLAGS += -Os
@@ -720,7 +721,6 @@ ifdef CONFIG_CC_IS_CLANG
720721
KBUILD_CPPFLAGS += $(call cc-option,-Qunused-arguments,)
721722
KBUILD_CFLAGS += $(call cc-disable-warning, format-invalid-specifier)
722723
KBUILD_CFLAGS += $(call cc-disable-warning, gnu)
723-
KBUILD_CFLAGS += $(call cc-disable-warning, address-of-packed-member)
724724
# Quiet clang warning: comparison of unsigned expression < 0 is always false
725725
KBUILD_CFLAGS += $(call cc-disable-warning, tautological-compare)
726726
# CLANG uses a _MergedGlobals as optimization, but this breaks modpost, as the

arch/arc/boot/dts/hsdk.dts

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818
model = "snps,hsdk";
1919
compatible = "snps,hsdk";
2020

21-
#address-cells = <1>;
22-
#size-cells = <1>;
21+
#address-cells = <2>;
22+
#size-cells = <2>;
2323

2424
chosen {
2525
bootargs = "earlycon=uart8250,mmio32,0xf0005000,115200n8 console=ttyS0,115200n8 debug print-fatal-signals=1";
@@ -105,7 +105,7 @@
105105
#size-cells = <1>;
106106
interrupt-parent = <&idu_intc>;
107107

108-
ranges = <0x00000000 0xf0000000 0x10000000>;
108+
ranges = <0x00000000 0x0 0xf0000000 0x10000000>;
109109

110110
cgu_rst: reset-controller@8a0 {
111111
compatible = "snps,hsdk-reset";
@@ -269,9 +269,10 @@
269269
};
270270

271271
memory@80000000 {
272-
#address-cells = <1>;
273-
#size-cells = <1>;
272+
#address-cells = <2>;
273+
#size-cells = <2>;
274274
device_type = "memory";
275-
reg = <0x80000000 0x40000000>; /* 1 GiB */
275+
reg = <0x0 0x80000000 0x0 0x40000000>; /* 1 GB lowmem */
276+
/* 0x1 0x00000000 0x0 0x40000000>; 1 GB highmem */
276277
};
277278
};

arch/arc/lib/memset-archs.S

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,10 @@
3030

3131
#else
3232

33-
.macro PREALLOC_INSTR
33+
.macro PREALLOC_INSTR reg, off
3434
.endm
3535

36-
.macro PREFETCHW_INSTR
36+
.macro PREFETCHW_INSTR reg, off
3737
.endm
3838

3939
#endif

arch/arc/mm/cache.c

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -113,10 +113,24 @@ static void read_decode_cache_bcr_arcv2(int cpu)
113113
}
114114

115115
READ_BCR(ARC_REG_CLUSTER_BCR, cbcr);
116-
if (cbcr.c)
116+
if (cbcr.c) {
117117
ioc_exists = 1;
118-
else
118+
119+
/*
120+
* As for today we don't support both IOC and ZONE_HIGHMEM enabled
121+
* simultaneously. This happens because as of today IOC aperture covers
122+
* only ZONE_NORMAL (low mem) and any dma transactions outside this
123+
* region won't be HW coherent.
124+
* If we want to use both IOC and ZONE_HIGHMEM we can use
125+
* bounce_buffer to handle dma transactions to HIGHMEM.
126+
* Also it is possible to modify dma_direct cache ops or increase IOC
127+
* aperture size if we are planning to use HIGHMEM without PAE.
128+
*/
129+
if (IS_ENABLED(CONFIG_HIGHMEM) || is_pae40_enabled())
130+
ioc_enable = 0;
131+
} else {
119132
ioc_enable = 0;
133+
}
120134

121135
/* HS 2.0 didn't have AUX_VOL */
122136
if (cpuinfo_arc700[cpu].core.family > 0x51) {
@@ -1158,19 +1172,6 @@ noinline void __init arc_ioc_setup(void)
11581172
if (!ioc_enable)
11591173
return;
11601174

1161-
/*
1162-
* As for today we don't support both IOC and ZONE_HIGHMEM enabled
1163-
* simultaneously. This happens because as of today IOC aperture covers
1164-
* only ZONE_NORMAL (low mem) and any dma transactions outside this
1165-
* region won't be HW coherent.
1166-
* If we want to use both IOC and ZONE_HIGHMEM we can use
1167-
* bounce_buffer to handle dma transactions to HIGHMEM.
1168-
* Also it is possible to modify dma_direct cache ops or increase IOC
1169-
* aperture size if we are planning to use HIGHMEM without PAE.
1170-
*/
1171-
if (IS_ENABLED(CONFIG_HIGHMEM))
1172-
panic("IOC and HIGHMEM can't be used simultaneously");
1173-
11741175
/* Flush + invalidate + disable L1 dcache */
11751176
__dc_disable();
11761177

arch/arm/Kconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ config ARM
7373
select HAVE_EFFICIENT_UNALIGNED_ACCESS if (CPU_V6 || CPU_V6K || CPU_V7) && MMU
7474
select HAVE_EXIT_THREAD
7575
select HAVE_FTRACE_MCOUNT_RECORD if !XIP_KERNEL
76-
select HAVE_FUNCTION_GRAPH_TRACER if !THUMB2_KERNEL
76+
select HAVE_FUNCTION_GRAPH_TRACER if !THUMB2_KERNEL && !CC_IS_CLANG
7777
select HAVE_FUNCTION_TRACER if !XIP_KERNEL
7878
select HAVE_GCC_PLUGINS
7979
select HAVE_HW_BREAKPOINT if PERF_EVENTS && (CPU_V6 || CPU_V6K || CPU_V7)

arch/arm/Kconfig.debug

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@ config DEBUG_WX
4747

4848
choice
4949
prompt "Choose kernel unwinder"
50-
default UNWINDER_ARM if AEABI && !FUNCTION_GRAPH_TRACER
51-
default UNWINDER_FRAME_POINTER if !AEABI || FUNCTION_GRAPH_TRACER
50+
default UNWINDER_ARM if AEABI
51+
default UNWINDER_FRAME_POINTER if !AEABI
5252
help
5353
This determines which method will be used for unwinding kernel stack
5454
traces for panics, oopses, bugs, warnings, perf, /proc/<pid>/stack,
@@ -65,7 +65,7 @@ config UNWINDER_FRAME_POINTER
6565

6666
config UNWINDER_ARM
6767
bool "ARM EABI stack unwinder"
68-
depends on AEABI
68+
depends on AEABI && !FUNCTION_GRAPH_TRACER
6969
select ARM_UNWIND
7070
help
7171
This option enables stack unwinding support in the kernel

arch/arm/boot/compressed/head.S

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1438,7 +1438,21 @@ ENTRY(efi_stub_entry)
14381438

14391439
@ Preserve return value of efi_entry() in r4
14401440
mov r4, r0
1441-
bl cache_clean_flush
1441+
1442+
@ our cache maintenance code relies on CP15 barrier instructions
1443+
@ but since we arrived here with the MMU and caches configured
1444+
@ by UEFI, we must check that the CP15BEN bit is set in SCTLR.
1445+
@ Note that this bit is RAO/WI on v6 and earlier, so the ISB in
1446+
@ the enable path will be executed on v7+ only.
1447+
mrc p15, 0, r1, c1, c0, 0 @ read SCTLR
1448+
tst r1, #(1 << 5) @ CP15BEN bit set?
1449+
bne 0f
1450+
orr r1, r1, #(1 << 5) @ CP15 barrier instructions
1451+
mcr p15, 0, r1, c1, c0, 0 @ write SCTLR
1452+
ARM( .inst 0xf57ff06f @ v7+ isb )
1453+
THUMB( isb )
1454+
1455+
0: bl cache_clean_flush
14421456
bl cache_off
14431457

14441458
@ Set parameters for booting zImage according to boot protocol

arch/arm/kernel/head-nommu.S

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,9 +133,9 @@ __secondary_data:
133133
*/
134134
.text
135135
__after_proc_init:
136-
#ifdef CONFIG_ARM_MPU
137136
M_CLASS(movw r12, #:lower16:BASEADDR_V7M_SCB)
138137
M_CLASS(movt r12, #:upper16:BASEADDR_V7M_SCB)
138+
#ifdef CONFIG_ARM_MPU
139139
M_CLASS(ldr r3, [r12, 0x50])
140140
AR_CLASS(mrc p15, 0, r3, c0, c1, 4) @ Read ID_MMFR0
141141
and r3, r3, #(MMFR0_PMSA) @ PMSA field

arch/arm64/kernel/ftrace.c

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,10 +103,15 @@ int ftrace_make_call(struct dyn_ftrace *rec, unsigned long addr)
103103
* to be revisited if support for multiple ftrace entry points
104104
* is added in the future, but for now, the pr_err() below
105105
* deals with a theoretical issue only.
106+
*
107+
* Note that PLTs are place relative, and plt_entries_equal()
108+
* checks whether they point to the same target. Here, we need
109+
* to check if the actual opcodes are in fact identical,
110+
* regardless of the offset in memory so use memcmp() instead.
106111
*/
107112
trampoline = get_plt_entry(addr, mod->arch.ftrace_trampoline);
108-
if (!plt_entries_equal(mod->arch.ftrace_trampoline,
109-
&trampoline)) {
113+
if (memcmp(mod->arch.ftrace_trampoline, &trampoline,
114+
sizeof(trampoline))) {
110115
if (plt_entry_is_initialized(mod->arch.ftrace_trampoline)) {
111116
pr_err("ftrace: far branches to multiple entry points unsupported inside a single module\n");
112117
return -EINVAL;

arch/arm64/mm/init.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -363,7 +363,7 @@ void __init arm64_memblock_init(void)
363363
* Otherwise, this is a no-op
364364
*/
365365
u64 base = phys_initrd_start & PAGE_MASK;
366-
u64 size = PAGE_ALIGN(phys_initrd_size);
366+
u64 size = PAGE_ALIGN(phys_initrd_start + phys_initrd_size) - base;
367367

368368
/*
369369
* We can only add back the initrd memory if we don't end up

arch/mips/net/ebpf_jit.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -186,8 +186,9 @@ enum which_ebpf_reg {
186186
* separate frame pointer, so BPF_REG_10 relative accesses are
187187
* adjusted to be $sp relative.
188188
*/
189-
int ebpf_to_mips_reg(struct jit_ctx *ctx, const struct bpf_insn *insn,
190-
enum which_ebpf_reg w)
189+
static int ebpf_to_mips_reg(struct jit_ctx *ctx,
190+
const struct bpf_insn *insn,
191+
enum which_ebpf_reg w)
191192
{
192193
int ebpf_reg = (w == src_reg || w == src_reg_no_fp) ?
193194
insn->src_reg : insn->dst_reg;

arch/powerpc/configs/skiroot_defconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -266,6 +266,7 @@ CONFIG_UDF_FS=m
266266
CONFIG_MSDOS_FS=m
267267
CONFIG_VFAT_FS=m
268268
CONFIG_PROC_KCORE=y
269+
CONFIG_HUGETLBFS=y
269270
# CONFIG_MISC_FILESYSTEMS is not set
270271
# CONFIG_NETWORK_FILESYSTEMS is not set
271272
CONFIG_NLS=y

0 commit comments

Comments
 (0)