Skip to content

Commit 44308d3

Browse files
committed
Merge branch 'mainline-5.10' into sbc-5.10.y
2 parents 0d5bb58 + 387078f commit 44308d3

File tree

276 files changed

+2373
-1142
lines changed

Some content is hidden

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

276 files changed

+2373
-1142
lines changed

Documentation/filesystems/vfs.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1188,7 +1188,7 @@ defined:
11881188
return
11891189
-ECHILD and it will be called again in ref-walk mode.
11901190

1191-
``_weak_revalidate``
1191+
``d_weak_revalidate``
11921192
called when the VFS needs to revalidate a "jumped" dentry. This
11931193
is called when a path-walk ends at dentry that was not acquired
11941194
by doing a lookup in the parent directory. This includes "/",

Documentation/trace/ftrace.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2923,7 +2923,7 @@ Produces::
29232923
bash-1994 [000] .... 4342.324898: ima_get_action <-process_measurement
29242924
bash-1994 [000] .... 4342.324898: ima_match_policy <-ima_get_action
29252925
bash-1994 [000] .... 4342.324899: do_truncate <-do_last
2926-
bash-1994 [000] .... 4342.324899: should_remove_suid <-do_truncate
2926+
bash-1994 [000] .... 4342.324899: setattr_should_drop_suidgid <-do_truncate
29272927
bash-1994 [000] .... 4342.324899: notify_change <-do_truncate
29282928
bash-1994 [000] .... 4342.324900: current_fs_time <-notify_change
29292929
bash-1994 [000] .... 4342.324900: current_kernel_time <-current_fs_time

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 = 10
4-
SUBLEVEL = 175
4+
SUBLEVEL = 177
55
EXTRAVERSION =
66
NAME = Dare mighty things
77

arch/arm/boot/dts/e60k02.dtsi

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -296,6 +296,7 @@
296296

297297
&usbotg1 {
298298
pinctrl-names = "default";
299+
pinctrl-0 = <&pinctrl_usbotg1>;
299300
disable-over-current;
300301
srp-disable;
301302
hnp-disable;

arch/arm/boot/dts/imx6sl-tolino-shine2hd.dts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -580,6 +580,7 @@
580580

581581
&usbotg1 {
582582
pinctrl-names = "default";
583+
pinctrl-0 = <&pinctrl_usbotg1>;
583584
disable-over-current;
584585
srp-disable;
585586
hnp-disable;

arch/m68k/kernel/traps.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
#include <linux/init.h>
3131
#include <linux/ptrace.h>
3232
#include <linux/kallsyms.h>
33+
#include <linux/extable.h>
3334

3435
#include <asm/setup.h>
3536
#include <asm/fpu.h>
@@ -549,7 +550,8 @@ static inline void bus_error030 (struct frame *fp)
549550
errorcode |= 2;
550551

551552
if (mmusr & (MMU_I | MMU_WP)) {
552-
if (ssw & 4) {
553+
/* We might have an exception table for this PC */
554+
if (ssw & 4 && !search_exception_tables(fp->ptregs.pc)) {
553555
pr_err("Data %s fault at %#010lx in %s (pc=%#lx)\n",
554556
ssw & RW ? "read" : "write",
555557
fp->un.fmtb.daddr,

arch/mips/bmips/dma.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,8 @@ phys_addr_t dma_to_phys(struct device *dev, dma_addr_t dma_addr)
6464
return dma_addr;
6565
}
6666

67+
bool bmips_rac_flush_disable;
68+
6769
void arch_sync_dma_for_cpu_all(void)
6870
{
6971
void __iomem *cbr = BMIPS_GET_CBR();
@@ -74,6 +76,9 @@ void arch_sync_dma_for_cpu_all(void)
7476
boot_cpu_type() != CPU_BMIPS4380)
7577
return;
7678

79+
if (unlikely(bmips_rac_flush_disable))
80+
return;
81+
7782
/* Flush stale data out of the readahead cache */
7883
cfg = __raw_readl(cbr + BMIPS_RAC_CONFIG);
7984
__raw_writel(cfg | 0x100, cbr + BMIPS_RAC_CONFIG);

arch/mips/bmips/setup.c

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@
3434
#define REG_BCM6328_OTP ((void __iomem *)CKSEG1ADDR(0x1000062c))
3535
#define BCM6328_TP1_DISABLED BIT(9)
3636

37+
extern bool bmips_rac_flush_disable;
38+
3739
static const unsigned long kbase = VMLINUX_LOAD_ADDRESS & 0xfff00000;
3840

3941
struct bmips_quirk {
@@ -103,6 +105,12 @@ static void bcm6358_quirks(void)
103105
* disable SMP for now
104106
*/
105107
bmips_smp_enabled = 0;
108+
109+
/*
110+
* RAC flush causes kernel panics on BCM6358 when booting from TP1
111+
* because the bootloader is not initializing it properly.
112+
*/
113+
bmips_rac_flush_disable = !!(read_c0_brcm_cmt_local() & (1 << 31));
106114
}
107115

108116
static void bcm6368_quirks(void)

arch/powerpc/kernel/ptrace/ptrace-view.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -298,13 +298,19 @@ static int gpr_set(struct task_struct *target, const struct user_regset *regset,
298298
static int ppr_get(struct task_struct *target, const struct user_regset *regset,
299299
struct membuf to)
300300
{
301+
if (!target->thread.regs)
302+
return -EINVAL;
303+
301304
return membuf_write(&to, &target->thread.regs->ppr, sizeof(u64));
302305
}
303306

304307
static int ppr_set(struct task_struct *target, const struct user_regset *regset,
305308
unsigned int pos, unsigned int count, const void *kbuf,
306309
const void __user *ubuf)
307310
{
311+
if (!target->thread.regs)
312+
return -EINVAL;
313+
308314
return user_regset_copyin(&pos, &count, &kbuf, &ubuf,
309315
&target->thread.regs->ppr, 0, sizeof(u64));
310316
}

arch/s390/boot/ipl_report.c

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,19 @@ static unsigned long find_bootdata_space(struct ipl_rb_components *comps,
5757
if (IS_ENABLED(CONFIG_BLK_DEV_INITRD) && INITRD_START && INITRD_SIZE &&
5858
intersects(INITRD_START, INITRD_SIZE, safe_addr, size))
5959
safe_addr = INITRD_START + INITRD_SIZE;
60+
if (intersects(safe_addr, size, (unsigned long)comps, comps->len)) {
61+
safe_addr = (unsigned long)comps + comps->len;
62+
goto repeat;
63+
}
6064
for_each_rb_entry(comp, comps)
6165
if (intersects(safe_addr, size, comp->addr, comp->len)) {
6266
safe_addr = comp->addr + comp->len;
6367
goto repeat;
6468
}
69+
if (intersects(safe_addr, size, (unsigned long)certs, certs->len)) {
70+
safe_addr = (unsigned long)certs + certs->len;
71+
goto repeat;
72+
}
6573
for_each_rb_entry(cert, certs)
6674
if (intersects(safe_addr, size, cert->addr, cert->len)) {
6775
safe_addr = cert->addr + cert->len;

0 commit comments

Comments
 (0)