Skip to content

Commit 55fe097

Browse files
committed
Merge tag 'v4.14.54' into master-next
This is the 4.14.54 stable release Signed-off-by: Jack Vogel <[email protected]> Note: drivers/infiniband/hw/mlx4/mr.c was excluded due to local changes
2 parents 0097883 + 5893f4c commit 55fe097

File tree

229 files changed

+4358
-822
lines changed

Some content is hidden

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

229 files changed

+4358
-822
lines changed

Documentation/ABI/testing/sysfs-class-cxl

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,9 @@ Date: September 2014
6969
7070
Description: read/write
7171
Set the mode for prefaulting in segments into the segment table
72-
when performing the START_WORK ioctl. Possible values:
72+
when performing the START_WORK ioctl. Only applicable when
73+
running under hashed page table mmu.
74+
Possible values:
7375
none: No prefaulting (default)
7476
work_element_descriptor: Treat the work element
7577
descriptor as an effective address and

Documentation/devicetree/bindings/net/dsa/b53.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ Required properties:
1010
"brcm,bcm53128"
1111
"brcm,bcm5365"
1212
"brcm,bcm5395"
13+
"brcm,bcm5389"
1314
"brcm,bcm5397"
1415
"brcm,bcm5398"
1516

Documentation/printk-formats.txt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -397,11 +397,10 @@ struct clk
397397

398398
%pC pll1
399399
%pCn pll1
400-
%pCr 1560000000
401400

402401
For printing struct clk structures. ``%pC`` and ``%pCn`` print the name
403402
(Common Clock Framework) or address (legacy clock framework) of the
404-
structure; ``%pCr`` prints the current clock rate.
403+
structure.
405404

406405
Passed by reference.
407406

arch/arm/boot/dts/imx6q.dtsi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@
9696
clocks = <&clks IMX6Q_CLK_ECSPI5>,
9797
<&clks IMX6Q_CLK_ECSPI5>;
9898
clock-names = "ipg", "per";
99-
dmas = <&sdma 11 7 1>, <&sdma 12 7 2>;
99+
dmas = <&sdma 11 8 1>, <&sdma 12 8 2>;
100100
dma-names = "rx", "tx";
101101
status = "disabled";
102102
};

arch/arm/boot/dts/mt7623.dtsi

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,12 @@
2222
#include <dt-bindings/phy/phy.h>
2323
#include <dt-bindings/reset/mt2701-resets.h>
2424
#include <dt-bindings/thermal/thermal.h>
25-
#include "skeleton64.dtsi"
2625

2726
/ {
2827
compatible = "mediatek,mt7623";
2928
interrupt-parent = <&sysirq>;
29+
#address-cells = <2>;
30+
#size-cells = <2>;
3031

3132
cpu_opp_table: opp_table {
3233
compatible = "operating-points-v2";

arch/arm/boot/dts/mt7623n-bananapi-bpi-r2.dts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,7 @@
100100
};
101101

102102
memory@80000000 {
103+
device_type = "memory";
103104
reg = <0 0x80000000 0 0x40000000>;
104105
};
105106
};

arch/arm/boot/dts/mt7623n-rfb.dtsi

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@
4747
};
4848

4949
memory@80000000 {
50+
device_type = "memory";
5051
reg = <0 0x80000000 0 0x40000000>;
5152
};
5253

arch/arm/boot/dts/socfpga.dtsi

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -744,13 +744,13 @@
744744
nand0: nand@ff900000 {
745745
#address-cells = <0x1>;
746746
#size-cells = <0x1>;
747-
compatible = "denali,denali-nand-dt";
747+
compatible = "altr,socfpga-denali-nand";
748748
reg = <0xff900000 0x100000>,
749749
<0xffb80000 0x10000>;
750750
reg-names = "nand_data", "denali_reg";
751751
interrupts = <0x0 0x90 0x4>;
752752
dma-mask = <0xffffffff>;
753-
clocks = <&nand_clk>;
753+
clocks = <&nand_x_clk>;
754754
status = "disabled";
755755
};
756756

arch/arm/boot/dts/socfpga_arria10.dtsi

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -593,8 +593,7 @@
593593
#size-cells = <0>;
594594
reg = <0xffda5000 0x100>;
595595
interrupts = <0 102 4>;
596-
num-chipselect = <4>;
597-
bus-num = <0>;
596+
num-cs = <4>;
598597
/*32bit_access;*/
599598
tx-dma-channel = <&pdma 16>;
600599
rx-dma-channel = <&pdma 17>;
@@ -633,7 +632,7 @@
633632
nand: nand@ffb90000 {
634633
#address-cells = <1>;
635634
#size-cells = <1>;
636-
compatible = "denali,denali-nand-dt", "altr,socfpga-denali-nand";
635+
compatible = "altr,socfpga-denali-nand";
637636
reg = <0xffb90000 0x72000>,
638637
<0xffb80000 0x10000>;
639638
reg-names = "nand_data", "denali_reg";

arch/arm/include/asm/kgdb.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ extern int kgdb_fault_expected;
7777

7878
#define KGDB_MAX_NO_CPUS 1
7979
#define BUFMAX 400
80-
#define NUMREGBYTES (DBG_MAX_REG_NUM << 2)
80+
#define NUMREGBYTES (GDB_MAX_REGS << 2)
8181
#define NUMCRITREGBYTES (32 << 2)
8282

8383
#define _R0 0

arch/arm64/boot/dts/amlogic/meson-gxl-s905x-libretech-cc.dts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -205,9 +205,6 @@
205205

206206
bus-width = <4>;
207207
cap-sd-highspeed;
208-
sd-uhs-sdr12;
209-
sd-uhs-sdr25;
210-
sd-uhs-sdr50;
211208
max-frequency = <100000000>;
212209
disable-wp;
213210

arch/arm64/kernel/cpufeature.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -929,7 +929,7 @@ static int __init parse_kpti(char *str)
929929
__kpti_forced = enabled ? 1 : -1;
930930
return 0;
931931
}
932-
__setup("kpti=", parse_kpti);
932+
early_param("kpti", parse_kpti);
933933
#endif /* CONFIG_UNMAP_KERNEL_AT_EL0 */
934934

935935
static void cpu_copy_el2regs(const struct arm64_cpu_capabilities *__unused)

arch/arm64/kernel/signal.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -832,11 +832,12 @@ static void do_signal(struct pt_regs *regs)
832832
unsigned long continue_addr = 0, restart_addr = 0;
833833
int retval = 0;
834834
struct ksignal ksig;
835+
bool syscall = in_syscall(regs);
835836

836837
/*
837838
* If we were from a system call, check for system call restarting...
838839
*/
839-
if (in_syscall(regs)) {
840+
if (syscall) {
840841
continue_addr = regs->pc;
841842
restart_addr = continue_addr - (compat_thumb_mode(regs) ? 2 : 4);
842843
retval = regs->regs[0];
@@ -888,7 +889,7 @@ static void do_signal(struct pt_regs *regs)
888889
* Handle restarting a different system call. As above, if a debugger
889890
* has chosen to restart at a different PC, ignore the restart.
890891
*/
891-
if (in_syscall(regs) && regs->pc == restart_addr) {
892+
if (syscall && regs->pc == restart_addr) {
892893
if (retval == -ERESTART_RESTARTBLOCK)
893894
setup_restart_syscall(regs);
894895
user_rewind_single_step(current);

arch/arm64/mm/proc.S

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -208,8 +208,9 @@ ENDPROC(idmap_cpu_replace_ttbr1)
208208

209209
.macro __idmap_kpti_put_pgtable_ent_ng, type
210210
orr \type, \type, #PTE_NG // Same bit for blocks and pages
211-
str \type, [cur_\()\type\()p] // Update the entry and ensure it
212-
dc civac, cur_\()\type\()p // is visible to all CPUs.
211+
str \type, [cur_\()\type\()p] // Update the entry and ensure
212+
dmb sy // that it is visible to all
213+
dc civac, cur_\()\type\()p // CPUs.
213214
.endm
214215

215216
/*

arch/m68k/mac/config.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1017,7 +1017,7 @@ int __init mac_platform_init(void)
10171017
struct resource swim_rsrc = {
10181018
.flags = IORESOURCE_MEM,
10191019
.start = (resource_size_t)swim_base,
1020-
.end = (resource_size_t)swim_base + 0x2000,
1020+
.end = (resource_size_t)swim_base + 0x1FFF,
10211021
};
10221022

10231023
platform_device_register_simple("swim", -1, &swim_rsrc, 1);

arch/m68k/mm/kmap.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,8 @@ static inline void free_io_area(void *addr)
8989
for (p = &iolist ; (tmp = *p) ; p = &tmp->next) {
9090
if (tmp->addr == addr) {
9191
*p = tmp->next;
92-
__iounmap(tmp->addr, tmp->size);
92+
/* remove gap added in get_io_area() */
93+
__iounmap(tmp->addr, tmp->size - IO_SIZE);
9394
kfree(tmp);
9495
return;
9596
}

arch/mips/bcm47xx/setup.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,12 @@ static int __init bcm47xx_cpu_fixes(void)
212212
*/
213213
if (bcm47xx_bus.bcma.bus.chipinfo.id == BCMA_CHIP_ID_BCM4706)
214214
cpu_wait = NULL;
215+
216+
/*
217+
* BCM47XX Erratum "R10: PCIe Transactions Periodically Fail"
218+
* Enable ExternalSync for sync instruction to take effect
219+
*/
220+
set_c0_config7(MIPS_CONF7_ES);
215221
break;
216222
#endif
217223
}

arch/mips/include/asm/io.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -414,6 +414,8 @@ static inline type pfx##in##bwlq##p(unsigned long port) \
414414
__val = *__addr; \
415415
slow; \
416416
\
417+
/* prevent prefetching of coherent DMA data prematurely */ \
418+
rmb(); \
417419
return pfx##ioswab##bwlq(__addr, __val); \
418420
}
419421

arch/mips/include/asm/mipsregs.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -680,6 +680,8 @@
680680
#define MIPS_CONF7_WII (_ULCAST_(1) << 31)
681681

682682
#define MIPS_CONF7_RPS (_ULCAST_(1) << 2)
683+
/* ExternalSync */
684+
#define MIPS_CONF7_ES (_ULCAST_(1) << 8)
683685

684686
#define MIPS_CONF7_IAR (_ULCAST_(1) << 10)
685687
#define MIPS_CONF7_AR (_ULCAST_(1) << 16)
@@ -2745,6 +2747,7 @@ __BUILD_SET_C0(status)
27452747
__BUILD_SET_C0(cause)
27462748
__BUILD_SET_C0(config)
27472749
__BUILD_SET_C0(config5)
2750+
__BUILD_SET_C0(config7)
27482751
__BUILD_SET_C0(intcontrol)
27492752
__BUILD_SET_C0(intctl)
27502753
__BUILD_SET_C0(srsmap)

arch/mips/kernel/mcount.S

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -119,10 +119,20 @@ NESTED(_mcount, PT_SIZE, ra)
119119
EXPORT_SYMBOL(_mcount)
120120
PTR_LA t1, ftrace_stub
121121
PTR_L t2, ftrace_trace_function /* Prepare t2 for (1) */
122-
bne t1, t2, static_trace
122+
beq t1, t2, fgraph_trace
123123
nop
124124

125+
MCOUNT_SAVE_REGS
126+
127+
move a0, ra /* arg1: self return address */
128+
jalr t2 /* (1) call *ftrace_trace_function */
129+
move a1, AT /* arg2: parent's return address */
130+
131+
MCOUNT_RESTORE_REGS
132+
133+
fgraph_trace:
125134
#ifdef CONFIG_FUNCTION_GRAPH_TRACER
135+
PTR_LA t1, ftrace_stub
126136
PTR_L t3, ftrace_graph_return
127137
bne t1, t3, ftrace_graph_caller
128138
nop
@@ -131,24 +141,11 @@ EXPORT_SYMBOL(_mcount)
131141
bne t1, t3, ftrace_graph_caller
132142
nop
133143
#endif
134-
b ftrace_stub
135-
#ifdef CONFIG_32BIT
136-
addiu sp, sp, 8
137-
#else
138-
nop
139-
#endif
140144

141-
static_trace:
142-
MCOUNT_SAVE_REGS
143-
144-
move a0, ra /* arg1: self return address */
145-
jalr t2 /* (1) call *ftrace_trace_function */
146-
move a1, AT /* arg2: parent's return address */
147-
148-
MCOUNT_RESTORE_REGS
149145
#ifdef CONFIG_32BIT
150146
addiu sp, sp, 8
151147
#endif
148+
152149
.globl ftrace_stub
153150
ftrace_stub:
154151
RETURN_BACK

arch/powerpc/kernel/entry_64.S

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -597,6 +597,7 @@ END_MMU_FTR_SECTION_IFSET(MMU_FTR_1T_SEGMENT)
597597
* actually hit this code path.
598598
*/
599599

600+
isync
600601
slbie r6
601602
slbie r6 /* Workaround POWER5 < DD2.1 issue */
602603
slbmte r7,r0

arch/powerpc/kernel/fadump.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1155,6 +1155,9 @@ void fadump_cleanup(void)
11551155
init_fadump_mem_struct(&fdm,
11561156
be64_to_cpu(fdm_active->cpu_state_data.destination_address));
11571157
fadump_invalidate_dump(&fdm);
1158+
} else if (fw_dump.dump_registered) {
1159+
/* Un-register Firmware-assisted dump if it was registered. */
1160+
fadump_unregister_dump(&fdm);
11581161
}
11591162
}
11601163

arch/powerpc/kernel/hw_breakpoint.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -175,8 +175,8 @@ int arch_validate_hwbkpt_settings(struct perf_event *bp)
175175
if (cpu_has_feature(CPU_FTR_DAWR)) {
176176
length_max = 512 ; /* 64 doublewords */
177177
/* DAWR region can't cross 512 boundary */
178-
if ((bp->attr.bp_addr >> 10) !=
179-
((bp->attr.bp_addr + bp->attr.bp_len - 1) >> 10))
178+
if ((bp->attr.bp_addr >> 9) !=
179+
((bp->attr.bp_addr + bp->attr.bp_len - 1) >> 9))
180180
return -EINVAL;
181181
}
182182
if (info->len >

arch/powerpc/kernel/ptrace.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2362,6 +2362,7 @@ static int ptrace_set_debugreg(struct task_struct *task, unsigned long addr,
23622362
/* Create a new breakpoint request if one doesn't exist already */
23632363
hw_breakpoint_init(&attr);
23642364
attr.bp_addr = hw_brk.address;
2365+
attr.bp_len = 8;
23652366
arch_bp_generic_fields(hw_brk.type,
23662367
&attr.bp_type);
23672368

arch/powerpc/perf/imc-pmu.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1131,7 +1131,7 @@ static int init_nest_pmu_ref(void)
11311131

11321132
static void cleanup_all_core_imc_memory(void)
11331133
{
1134-
int i, nr_cores = DIV_ROUND_UP(num_present_cpus(), threads_per_core);
1134+
int i, nr_cores = DIV_ROUND_UP(num_possible_cpus(), threads_per_core);
11351135
struct imc_mem_info *ptr = core_imc_pmu->mem_info;
11361136
int size = core_imc_pmu->counter_mem_size;
11371137

@@ -1239,7 +1239,7 @@ static int imc_mem_init(struct imc_pmu *pmu_ptr, struct device_node *parent,
12391239
if (!pmu_ptr->pmu.name)
12401240
return -ENOMEM;
12411241

1242-
nr_cores = DIV_ROUND_UP(num_present_cpus(), threads_per_core);
1242+
nr_cores = DIV_ROUND_UP(num_possible_cpus(), threads_per_core);
12431243
pmu_ptr->mem_info = kcalloc(nr_cores, sizeof(struct imc_mem_info),
12441244
GFP_KERNEL);
12451245

arch/powerpc/platforms/powernv/copy-paste.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,5 +42,6 @@ static inline int vas_paste(void *paste_address, int offset)
4242
: "b" (offset), "b" (paste_address)
4343
: "memory", "cr0");
4444

45-
return (cr >> CR0_SHIFT) & CR0_MASK;
45+
/* We mask with 0xE to ignore SO */
46+
return (cr >> CR0_SHIFT) & 0xE;
4647
}

arch/powerpc/platforms/powernv/idle.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ static int pnv_save_sprs_for_deep_states(void)
7878
uint64_t msr_val = MSR_IDLE;
7979
uint64_t psscr_val = pnv_deepest_stop_psscr_val;
8080

81-
for_each_possible_cpu(cpu) {
81+
for_each_present_cpu(cpu) {
8282
uint64_t pir = get_hard_smp_processor_id(cpu);
8383
uint64_t hsprg0_val = (uint64_t)&paca[cpu];
8484

@@ -741,7 +741,7 @@ static int __init pnv_init_idle_states(void)
741741
int cpu;
742742

743743
pr_info("powernv: idle: Saving PACA pointers of all CPUs in their thread sibling PACA\n");
744-
for_each_possible_cpu(cpu) {
744+
for_each_present_cpu(cpu) {
745745
int base_cpu = cpu_first_thread_sibling(cpu);
746746
int idx = cpu_thread_in_core(cpu);
747747
int i;

arch/powerpc/platforms/powernv/pci-ioda.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3591,7 +3591,6 @@ static void pnv_pci_ioda2_release_pe_dma(struct pnv_ioda_pe *pe)
35913591
WARN_ON(pe->table_group.group);
35923592
}
35933593

3594-
pnv_pci_ioda2_table_free_pages(tbl);
35953594
iommu_tce_table_put(tbl);
35963595
}
35973596

arch/x86/events/intel/uncore_snbep.c

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3035,11 +3035,19 @@ static struct intel_uncore_type *bdx_msr_uncores[] = {
30353035
NULL,
30363036
};
30373037

3038+
/* Bit 7 'Use Occupancy' is not available for counter 0 on BDX */
3039+
static struct event_constraint bdx_uncore_pcu_constraints[] = {
3040+
EVENT_CONSTRAINT(0x80, 0xe, 0x80),
3041+
EVENT_CONSTRAINT_END
3042+
};
3043+
30383044
void bdx_uncore_cpu_init(void)
30393045
{
30403046
if (bdx_uncore_cbox.num_boxes > boot_cpu_data.x86_max_cores)
30413047
bdx_uncore_cbox.num_boxes = boot_cpu_data.x86_max_cores;
30423048
uncore_msr_uncores = bdx_msr_uncores;
3049+
3050+
hswep_uncore_pcu.constraints = bdx_uncore_pcu_constraints;
30433051
}
30443052

30453053
static struct intel_uncore_type bdx_uncore_ha = {

arch/x86/include/asm/barrier.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ static inline unsigned long array_index_mask_nospec(unsigned long index,
3838
{
3939
unsigned long mask;
4040

41-
asm ("cmp %1,%2; sbb %0,%0;"
41+
asm volatile ("cmp %1,%2; sbb %0,%0;"
4242
:"=r" (mask)
4343
:"g"(size),"r" (index)
4444
:"cc");

0 commit comments

Comments
 (0)