]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
6.6-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 3 Feb 2024 00:53:06 +0000 (16:53 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 3 Feb 2024 00:53:06 +0000 (16:53 -0800)
added patches:
arm64-irq-set-the-correct-node-for-shadow-call-stack.patch

queue-6.6/arm64-irq-set-the-correct-node-for-shadow-call-stack.patch [new file with mode: 0644]
queue-6.6/series

diff --git a/queue-6.6/arm64-irq-set-the-correct-node-for-shadow-call-stack.patch b/queue-6.6/arm64-irq-set-the-correct-node-for-shadow-call-stack.patch
new file mode 100644 (file)
index 0000000..9208a8a
--- /dev/null
@@ -0,0 +1,38 @@
+From 7b1a09e44dc64f4f5930659b6d14a27183c00705 Mon Sep 17 00:00:00 2001
+From: Huang Shijie <shijie@os.amperecomputing.com>
+Date: Wed, 13 Dec 2023 09:20:46 +0800
+Subject: arm64: irq: set the correct node for shadow call stack
+
+From: Huang Shijie <shijie@os.amperecomputing.com>
+
+commit 7b1a09e44dc64f4f5930659b6d14a27183c00705 upstream.
+
+The init_irq_stacks() has been changed to use the correct node:
+https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git/commit/?id=75b5e0bf90bf
+
+The init_irq_scs() has the same issue with init_irq_stacks():
+       cpu_to_node() is not initialized yet, it does not work.
+
+This patch uses early_cpu_to_node() to set the init_irq_scs()
+with the correct node.
+
+Signed-off-by: Huang Shijie <shijie@os.amperecomputing.com>
+Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
+Link: https://lore.kernel.org/r/20231213012046.12014-1-shijie@os.amperecomputing.com
+Signed-off-by: Will Deacon <will@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ arch/arm64/kernel/irq.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/arch/arm64/kernel/irq.c
++++ b/arch/arm64/kernel/irq.c
+@@ -48,7 +48,7 @@ static void init_irq_scs(void)
+       for_each_possible_cpu(cpu)
+               per_cpu(irq_shadow_call_stack_ptr, cpu) =
+-                      scs_alloc(cpu_to_node(cpu));
++                      scs_alloc(early_cpu_to_node(cpu));
+ }
+ #ifdef CONFIG_VMAP_STACK
index 75641ef9bdf5c8079d864d8f432174c2a23b2902..10a6135a7389c701e0aadfc854913cb235c8ab1a 100644 (file)
@@ -316,3 +316,4 @@ selftests-team-add-missing-config-options.patch
 selftests-bonding-check-initial-state.patch
 selftests-net-add-missing-config-for-nf_target_ttl.patch
 selftests-net-enable-some-more-knobs.patch
+arm64-irq-set-the-correct-node-for-shadow-call-stack.patch