From: Greg Kroah-Hartman Date: Sun, 10 Nov 2024 05:01:18 +0000 (+0100) Subject: 6.1-stable patches X-Git-Tag: v5.15.172~41 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6c6607b84f9c8e7cc11d17166c95612e9840c7c2;p=thirdparty%2Fkernel%2Fstable-queue.git 6.1-stable patches added patches: riscv-purgatory-align-riscv_kernel_entry.patch --- diff --git a/queue-6.1/riscv-purgatory-align-riscv_kernel_entry.patch b/queue-6.1/riscv-purgatory-align-riscv_kernel_entry.patch new file mode 100644 index 00000000000..88ad0f9374c --- /dev/null +++ b/queue-6.1/riscv-purgatory-align-riscv_kernel_entry.patch @@ -0,0 +1,47 @@ +From fb197c5d2fd24b9af3d4697d0cf778645846d6d5 Mon Sep 17 00:00:00 2001 +From: Daniel Maslowski +Date: Fri, 19 Jul 2024 19:04:37 +0200 +Subject: riscv/purgatory: align riscv_kernel_entry + +From: Daniel Maslowski + +commit fb197c5d2fd24b9af3d4697d0cf778645846d6d5 upstream. + +When alignment handling is delegated to the kernel, everything must be +word-aligned in purgatory, since the trap handler is then set to the +kexec one. Without the alignment, hitting the exception would +ultimately crash. On other occasions, the kernel's handler would take +care of exceptions. +This has been tested on a JH7110 SoC with oreboot and its SBI delegating +unaligned access exceptions and the kernel configured to handle them. + +Fixes: 736e30af583fb ("RISC-V: Add purgatory") +Signed-off-by: Daniel Maslowski +Reviewed-by: Alexandre Ghiti +Link: https://lore.kernel.org/r/20240719170437.247457-1-cyrevolt@gmail.com +Signed-off-by: Palmer Dabbelt +Signed-off-by: Xiangyu Chen +Signed-off-by: Greg Kroah-Hartman +--- + arch/riscv/purgatory/entry.S | 3 +++ + 1 file changed, 3 insertions(+) + +--- a/arch/riscv/purgatory/entry.S ++++ b/arch/riscv/purgatory/entry.S +@@ -11,6 +11,8 @@ + .macro size, sym:req + .size \sym, . - \sym + .endm ++#include ++#include + + .text + +@@ -39,6 +41,7 @@ size purgatory_start + + .data + ++.align LGREG + .globl riscv_kernel_entry + riscv_kernel_entry: + .quad 0 diff --git a/queue-6.1/series b/queue-6.1/series index f76c97b40cb..eda3c4b8401 100644 --- a/queue-6.1/series +++ b/queue-6.1/series @@ -72,3 +72,4 @@ net-vertexcom-mse102x-fix-possible-double-free-of-tx-skb.patch mptcp-use-sock_kfree_s-instead-of-kfree.patch arm64-kconfig-make-sme-depend-on-broken-for-now.patch btrfs-reinitialize-delayed-ref-list-after-deleting-it-from-the-list.patch +riscv-purgatory-align-riscv_kernel_entry.patch