Skip to content

Commit faa030b

Browse files
committed
Merge remote-tracking branch 'stable/linux-5.7.y' into v5.7+
2 parents ea8c155 + 7490e75 commit faa030b

175 files changed

Lines changed: 1612 additions & 715 deletions

File tree

Some content is hidden

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

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# SPDX-License-Identifier: GPL-2.0
22
VERSION = 5
33
PATCHLEVEL = 7
4-
SUBLEVEL = 8
4+
SUBLEVEL = 9
55
EXTRAVERSION =
66
NAME = Kleptomaniac Octopus
77

arch/arc/include/asm/elf.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
#define R_ARC_32_PCREL 0x31
2020

2121
/*to set parameters in the core dumps */
22-
#define ELF_ARCH EM_ARCOMPACT
22+
#define ELF_ARCH EM_ARC_INUSE
2323
#define ELF_CLASS ELFCLASS32
2424

2525
#ifdef CONFIG_CPU_BIG_ENDIAN

arch/arc/kernel/entry.S

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,6 @@ END(EV_Extension)
165165
tracesys:
166166
; save EFA in case tracer wants the PC of traced task
167167
; using ERET won't work since next-PC has already committed
168-
lr r12, [efa]
169168
GET_CURR_TASK_FIELD_PTR TASK_THREAD, r11
170169
st r12, [r11, THREAD_FAULT_ADDR] ; thread.fault_address
171170

@@ -208,15 +207,9 @@ tracesys_exit:
208207
; Breakpoint TRAP
209208
; ---------------------------------------------
210209
trap_with_param:
211-
212-
; stop_pc info by gdb needs this info
213-
lr r0, [efa]
210+
mov r0, r12 ; EFA in case ptracer/gdb wants stop_pc
214211
mov r1, sp
215212

216-
; Now that we have read EFA, it is safe to do "fake" rtie
217-
; and get out of CPU exception mode
218-
FAKE_RET_FROM_EXCPN
219-
220213
; Save callee regs in case gdb wants to have a look
221214
; SP will grow up by size of CALLEE Reg-File
222215
; NOTE: clobbers r12
@@ -243,16 +236,17 @@ ENTRY(EV_Trap)
243236

244237
EXCEPTION_PROLOGUE
245238

239+
lr r12, [efa]
240+
241+
FAKE_RET_FROM_EXCPN
242+
246243
;============ TRAP 1 :breakpoints
247244
; Check ECR for trap with arg (PROLOGUE ensures r10 has ECR)
248245
bmsk.f 0, r10, 7
249246
bnz trap_with_param
250247

251248
;============ TRAP (no param): syscall top level
252249

253-
; First return from Exception to pure K mode (Exception/IRQs renabled)
254-
FAKE_RET_FROM_EXCPN
255-
256250
; If syscall tracing ongoing, invoke pre-post-hooks
257251
GET_CURR_THR_INFO_FLAGS r10
258252
btst r10, TIF_SYSCALL_TRACE

arch/arm/boot/dts/motorola-cpcap-mapphone.dtsi

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,10 @@
1313
#interrupt-cells = <2>;
1414
#address-cells = <1>;
1515
#size-cells = <0>;
16-
spi-max-frequency = <3000000>;
16+
spi-max-frequency = <9600000>;
1717
spi-cs-high;
18+
spi-cpol;
19+
spi-cpha;
1820

1921
cpcap_adc: adc {
2022
compatible = "motorola,mapphone-cpcap-adc";

arch/arm/mach-imx/pm-imx6.c

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -493,14 +493,14 @@ static int __init imx6q_suspend_init(const struct imx6_pm_socdata *socdata)
493493
if (!ocram_pool) {
494494
pr_warn("%s: ocram pool unavailable!\n", __func__);
495495
ret = -ENODEV;
496-
goto put_node;
496+
goto put_device;
497497
}
498498

499499
ocram_base = gen_pool_alloc(ocram_pool, MX6Q_SUSPEND_OCRAM_SIZE);
500500
if (!ocram_base) {
501501
pr_warn("%s: unable to alloc ocram!\n", __func__);
502502
ret = -ENOMEM;
503-
goto put_node;
503+
goto put_device;
504504
}
505505

506506
ocram_pbase = gen_pool_virt_to_phys(ocram_pool, ocram_base);
@@ -523,7 +523,7 @@ static int __init imx6q_suspend_init(const struct imx6_pm_socdata *socdata)
523523
ret = imx6_pm_get_base(&pm_info->mmdc_base, socdata->mmdc_compat);
524524
if (ret) {
525525
pr_warn("%s: failed to get mmdc base %d!\n", __func__, ret);
526-
goto put_node;
526+
goto put_device;
527527
}
528528

529529
ret = imx6_pm_get_base(&pm_info->src_base, socdata->src_compat);
@@ -570,7 +570,7 @@ static int __init imx6q_suspend_init(const struct imx6_pm_socdata *socdata)
570570
&imx6_suspend,
571571
MX6Q_SUSPEND_OCRAM_SIZE - sizeof(*pm_info));
572572

573-
goto put_node;
573+
goto put_device;
574574

575575
pl310_cache_map_failed:
576576
iounmap(pm_info->gpc_base.vbase);
@@ -580,6 +580,8 @@ static int __init imx6q_suspend_init(const struct imx6_pm_socdata *socdata)
580580
iounmap(pm_info->src_base.vbase);
581581
src_map_failed:
582582
iounmap(pm_info->mmdc_base.vbase);
583+
put_device:
584+
put_device(&pdev->dev);
583585
put_node:
584586
of_node_put(node);
585587

arch/arm64/include/asm/arch_gicv3.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ static inline u32 gic_read_pmr(void)
109109
return read_sysreg_s(SYS_ICC_PMR_EL1);
110110
}
111111

112-
static inline void gic_write_pmr(u32 val)
112+
static __always_inline void gic_write_pmr(u32 val)
113113
{
114114
write_sysreg_s(val, SYS_ICC_PMR_EL1);
115115
}

arch/arm64/include/asm/arch_timer.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ struct arch_timer_erratum_workaround {
5858
u64 (*read_cntvct_el0)(void);
5959
int (*set_next_event_phys)(unsigned long, struct clock_event_device *);
6060
int (*set_next_event_virt)(unsigned long, struct clock_event_device *);
61+
bool disable_compat_vdso;
6162
};
6263

6364
DECLARE_PER_CPU(const struct arch_timer_erratum_workaround *,

arch/arm64/include/asm/cpufeature.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -668,7 +668,7 @@ static inline bool system_supports_generic_auth(void)
668668
cpus_have_const_cap(ARM64_HAS_GENERIC_AUTH);
669669
}
670670

671-
static inline bool system_uses_irq_prio_masking(void)
671+
static __always_inline bool system_uses_irq_prio_masking(void)
672672
{
673673
return IS_ENABLED(CONFIG_ARM64_PSEUDO_NMI) &&
674674
cpus_have_const_cap(ARM64_HAS_IRQ_PRIO_MASKING);

arch/arm64/include/asm/pgtable-prot.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ extern bool arm64_use_ng_mappings;
5656
#define PAGE_HYP __pgprot(_HYP_PAGE_DEFAULT | PTE_HYP | PTE_HYP_XN)
5757
#define PAGE_HYP_EXEC __pgprot(_HYP_PAGE_DEFAULT | PTE_HYP | PTE_RDONLY)
5858
#define PAGE_HYP_RO __pgprot(_HYP_PAGE_DEFAULT | PTE_HYP | PTE_RDONLY | PTE_HYP_XN)
59-
#define PAGE_HYP_DEVICE __pgprot(PROT_DEVICE_nGnRE | PTE_HYP)
59+
#define PAGE_HYP_DEVICE __pgprot(_PROT_DEFAULT | PTE_ATTRINDX(MT_DEVICE_nGnRE) | PTE_HYP | PTE_HYP_XN)
6060

6161
#define PAGE_S2_MEMATTR(attr) \
6262
({ \

arch/arm64/include/asm/vdso/clocksource.h

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,10 @@
22
#ifndef __ASM_VDSOCLOCKSOURCE_H
33
#define __ASM_VDSOCLOCKSOURCE_H
44

5-
#define VDSO_ARCH_CLOCKMODES \
6-
VDSO_CLOCKMODE_ARCHTIMER
5+
#define VDSO_ARCH_CLOCKMODES \
6+
/* vdso clocksource for both 32 and 64bit tasks */ \
7+
VDSO_CLOCKMODE_ARCHTIMER, \
8+
/* vdso clocksource for 64bit tasks only */ \
9+
VDSO_CLOCKMODE_ARCHTIMER_NOCOMPAT
710

811
#endif

0 commit comments

Comments
 (0)