This is a note to let you know that I've just added the patch titled parisc: Mark jump_table naturally aligned to the 6.6-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: parisc-mark-jump_table-naturally-aligned.patch and it can be found in the queue-6.6 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From 07eecff8ae78df7f28800484d31337e1f9bfca3a Mon Sep 17 00:00:00 2001 From: Helge Deller <deller@xxxxxx> Date: Mon, 20 Nov 2023 23:14:39 +0100 Subject: parisc: Mark jump_table naturally aligned From: Helge Deller <deller@xxxxxx> commit 07eecff8ae78df7f28800484d31337e1f9bfca3a upstream. The jump_table stores two 32-bit words and one 32- (on 32-bit kernel) or one 64-bit word (on 64-bit kernel). Ensure that the last word is always 64-bit aligned on a 64-bit kernel by aligning the whole structure on sizeof(long). Signed-off-by: Helge Deller <deller@xxxxxx> Cc: stable@xxxxxxxxxxxxxxx # v6.0+ Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- arch/parisc/include/asm/jump_label.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) --- a/arch/parisc/include/asm/jump_label.h +++ b/arch/parisc/include/asm/jump_label.h @@ -15,10 +15,12 @@ static __always_inline bool arch_static_ asm_volatile_goto("1:\n\t" "nop\n\t" ".pushsection __jump_table, \"aw\"\n\t" + ".align %1\n\t" ".word 1b - ., %l[l_yes] - .\n\t" __stringify(ASM_ULONG_INSN) " %c0 - .\n\t" ".popsection\n\t" - : : "i" (&((char *)key)[branch]) : : l_yes); + : : "i" (&((char *)key)[branch]), "i" (sizeof(long)) + : : l_yes); return false; l_yes: @@ -30,10 +32,12 @@ static __always_inline bool arch_static_ asm_volatile_goto("1:\n\t" "b,n %l[l_yes]\n\t" ".pushsection __jump_table, \"aw\"\n\t" + ".align %1\n\t" ".word 1b - ., %l[l_yes] - .\n\t" __stringify(ASM_ULONG_INSN) " %c0 - .\n\t" ".popsection\n\t" - : : "i" (&((char *)key)[branch]) : : l_yes); + : : "i" (&((char *)key)[branch]), "i" (sizeof(long)) + : : l_yes); return false; l_yes: Patches currently in stable-queue which might be from deller@xxxxxx are queue-6.6/parisc-ensure-32-bit-alignment-on-parisc-unwind-section.patch queue-6.6/parisc-mark-jump_table-naturally-aligned.patch queue-6.6/parisc-mark-ex_table-entries-32-bit-aligned-in-uaccess.h.patch queue-6.6/parisc-mark-altinstructions-read-only-and-32-bit-aligned.patch queue-6.6/parisc-mark-ex_table-entries-32-bit-aligned-in-assembly.h.patch queue-6.6/parisc-drop-the-hp-ux-enosym-and-eremoterelease-error-codes.patch queue-6.6/parisc-mark-lock_aligned-variables-16-byte-aligned-on-smp.patch queue-6.6/parisc-use-natural-cpu-alignment-for-bug_table.patch