Skip to content

Commit b0a31e0

Browse files
committed
Merge remote-tracking branch 'stable/linux-6.12.y' into v6.12+
2 parents ec665ef + 61baee2 commit b0a31e0

142 files changed

Lines changed: 1054 additions & 431 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.

Documentation/devicetree/bindings/net/fsl,fec.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -183,6 +183,13 @@ properties:
183183
description:
184184
Register bits of stop mode control, the format is <&gpr req_gpr req_bit>.
185185

186+
fsl,pps-channel:
187+
$ref: /schemas/types.yaml#/definitions/uint32
188+
default: 0
189+
description:
190+
Specifies to which timer instance the PPS signal is routed.
191+
enum: [0, 1, 2, 3]
192+
186193
mdio:
187194
$ref: mdio.yaml#
188195
unevaluatedProperties: false

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 = 6
33
PATCHLEVEL = 12
4-
SUBLEVEL = 3
4+
SUBLEVEL = 4
55
EXTRAVERSION =
66
NAME = Baby Opossum Posse
77

arch/arm/kernel/entry-armv.S

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
#include <asm/tls.h>
2626
#include <asm/system_info.h>
2727
#include <asm/uaccess-asm.h>
28+
#include <asm/kasan_def.h>
2829

2930
#include "entry-header.S"
3031
#include <asm/probes.h>
@@ -561,6 +562,13 @@ ENTRY(__switch_to)
561562
@ entries covering the vmalloc region.
562563
@
563564
ldr r2, [ip]
565+
#ifdef CONFIG_KASAN_VMALLOC
566+
@ Also dummy read from the KASAN shadow memory for the new stack if we
567+
@ are using KASAN
568+
mov_l r2, KASAN_SHADOW_OFFSET
569+
add r2, r2, ip, lsr #KASAN_SHADOW_SCALE_SHIFT
570+
ldr r2, [r2]
571+
#endif
564572
#endif
565573

566574
@ When CONFIG_THREAD_INFO_IN_TASK=n, the update of SP itself is what

arch/arm/mm/ioremap.c

Lines changed: 30 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
*/
2424
#include <linux/module.h>
2525
#include <linux/errno.h>
26+
#include <linux/kasan.h>
2627
#include <linux/mm.h>
2728
#include <linux/vmalloc.h>
2829
#include <linux/io.h>
@@ -115,16 +116,40 @@ int ioremap_page(unsigned long virt, unsigned long phys,
115116
}
116117
EXPORT_SYMBOL(ioremap_page);
117118

119+
#ifdef CONFIG_KASAN
120+
static unsigned long arm_kasan_mem_to_shadow(unsigned long addr)
121+
{
122+
return (unsigned long)kasan_mem_to_shadow((void *)addr);
123+
}
124+
#else
125+
static unsigned long arm_kasan_mem_to_shadow(unsigned long addr)
126+
{
127+
return 0;
128+
}
129+
#endif
130+
131+
static void memcpy_pgd(struct mm_struct *mm, unsigned long start,
132+
unsigned long end)
133+
{
134+
end = ALIGN(end, PGDIR_SIZE);
135+
memcpy(pgd_offset(mm, start), pgd_offset_k(start),
136+
sizeof(pgd_t) * (pgd_index(end) - pgd_index(start)));
137+
}
138+
118139
void __check_vmalloc_seq(struct mm_struct *mm)
119140
{
120141
int seq;
121142

122143
do {
123-
seq = atomic_read(&init_mm.context.vmalloc_seq);
124-
memcpy(pgd_offset(mm, VMALLOC_START),
125-
pgd_offset_k(VMALLOC_START),
126-
sizeof(pgd_t) * (pgd_index(VMALLOC_END) -
127-
pgd_index(VMALLOC_START)));
144+
seq = atomic_read_acquire(&init_mm.context.vmalloc_seq);
145+
memcpy_pgd(mm, VMALLOC_START, VMALLOC_END);
146+
if (IS_ENABLED(CONFIG_KASAN_VMALLOC)) {
147+
unsigned long start =
148+
arm_kasan_mem_to_shadow(VMALLOC_START);
149+
unsigned long end =
150+
arm_kasan_mem_to_shadow(VMALLOC_END);
151+
memcpy_pgd(mm, start, end);
152+
}
128153
/*
129154
* Use a store-release so that other CPUs that observe the
130155
* counter's new value are guaranteed to see the results of the

arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,9 @@
212212
interrupts = <7 5 IRQ_TYPE_EDGE_RISING>; /* PH5 */
213213
vdd-supply = <&reg_dldo1>;
214214
vddio-supply = <&reg_dldo1>;
215+
mount-matrix = "0", "1", "0",
216+
"-1", "0", "0",
217+
"0", "0", "1";
215218
};
216219
};
217220

arch/arm64/boot/dts/freescale/imx8mm-verdin.dtsi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@
162162
regulator-max-microvolt = <3300000>;
163163
regulator-min-microvolt = <3300000>;
164164
regulator-name = "+V3.3_SD";
165-
startup-delay-us = <2000>;
165+
startup-delay-us = <20000>;
166166
};
167167

168168
reserved-memory {

arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@
175175
regulator-max-microvolt = <3300000>;
176176
regulator-min-microvolt = <3300000>;
177177
regulator-name = "+V3.3_SD";
178-
startup-delay-us = <2000>;
178+
startup-delay-us = <20000>;
179179
};
180180

181181
reserved-memory {

arch/arm64/boot/dts/mediatek/mt8186-corsola.dtsi

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -423,7 +423,7 @@
423423
#sound-dai-cells = <0>;
424424
ovdd-supply = <&mt6366_vsim2_reg>;
425425
pwr18-supply = <&pp1800_dpbrdg_dx>;
426-
reset-gpios = <&pio 177 GPIO_ACTIVE_HIGH>;
426+
reset-gpios = <&pio 177 GPIO_ACTIVE_LOW>;
427427

428428
ports {
429429
#address-cells = <1>;
@@ -1336,7 +1336,7 @@
13361336
regulator-allowed-modes = <MT6397_BUCK_MODE_AUTO
13371337
MT6397_BUCK_MODE_FORCE_PWM>;
13381338
regulator-coupled-with = <&mt6366_vsram_gpu_reg>;
1339-
regulator-coupled-max-spread = <10000>;
1339+
regulator-coupled-max-spread = <100000>;
13401340
};
13411341

13421342
mt6366_vproc11_reg: vproc11 {
@@ -1545,7 +1545,7 @@
15451545
regulator-ramp-delay = <6250>;
15461546
regulator-enable-ramp-delay = <240>;
15471547
regulator-coupled-with = <&mt6366_vgpu_reg>;
1548-
regulator-coupled-max-spread = <10000>;
1548+
regulator-coupled-max-spread = <100000>;
15491549
};
15501550

15511551
mt6366_vsram_others_reg: vsram-others {

arch/arm64/boot/dts/ti/k3-am62-verdin.dtsi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@
160160
regulator-max-microvolt = <3300000>;
161161
regulator-min-microvolt = <3300000>;
162162
regulator-name = "+V3.3_SD";
163-
startup-delay-us = <2000>;
163+
startup-delay-us = <20000>;
164164
};
165165

166166
reg_sdhc1_vqmmc: regulator-sdhci1-vqmmc {

arch/powerpc/Kconfig

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -275,8 +275,8 @@ config PPC
275275
select HAVE_RSEQ
276276
select HAVE_SETUP_PER_CPU_AREA if PPC64
277277
select HAVE_SOFTIRQ_ON_OWN_STACK
278-
select HAVE_STACKPROTECTOR if PPC32 && $(cc-option,-mstack-protector-guard=tls -mstack-protector-guard-reg=r2)
279-
select HAVE_STACKPROTECTOR if PPC64 && $(cc-option,-mstack-protector-guard=tls -mstack-protector-guard-reg=r13)
278+
select HAVE_STACKPROTECTOR if PPC32 && $(cc-option,$(m32-flag) -mstack-protector-guard=tls -mstack-protector-guard-reg=r2 -mstack-protector-guard-offset=0)
279+
select HAVE_STACKPROTECTOR if PPC64 && $(cc-option,$(m64-flag) -mstack-protector-guard=tls -mstack-protector-guard-reg=r13 -mstack-protector-guard-offset=0)
280280
select HAVE_STATIC_CALL if PPC32
281281
select HAVE_SYSCALL_TRACEPOINTS
282282
select HAVE_VIRT_CPU_ACCOUNTING

0 commit comments

Comments
 (0)