Patch "MIPS: Fix minimum alignment requirement of IRQ stack" has been added to the 4.4-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
MIPS: Fix minimum alignment requirement of IRQ stack
to the 4.4-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:
mips-fix-minimum-alignment-requirement-of-irq-stack.patch
and it can be found in the queue-4.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
5fdc66e046206306bf61ff2d626bfa52ca087f7bMon Sep 17 00:00:00 2001
From: Matt Redfearn <[email protected]>
Date: Mon, 10 Jul 2017 09:43:31 +0100
Subject: MIPS: Fix minimum alignment requirement of IRQ stack
From: Matt Redfearn <[email protected]>
commit 5fdc66e046206306bf61ff2d626bfa52ca087f7b upstream.
Commit db8466c581cc ("MIPS: IRQ Stack: Unwind IRQ stack onto task stack") erroneously set the initial stack pointer of the IRQ stack to a value with a 4 byte alignment. The MIPS32 ABI requires that the minimum stack alignment is 8 byte, and the MIPS64 ABIs(n32/n64) require 16 byte minimum alignment. Fix IRQ_STACK_START such that it leaves space for the dummy stack frame (containing interrupted task kernel stack pointer) while also meeting minimum alignment requirements.
Patchwork: https://patchwork.linux-mips.org/patch/16760/
--- arch/mips/include/asm/irq.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
arch/mips/include/asm/irq.h +1 -1
@@ -18,7 +18,7 @@#include <irq.h> #define IRQ_STACK_SIZE THREAD_SIZE -#define IRQ_STACK_START (IRQ_STACK_SIZE - sizeof(unsigned long)) +#define IRQ_STACK_START (IRQ_STACK_SIZE - 16)extern void *irq_stack[NR_CPUS ];
Patches currently in stable-queue which might be from [email protected] are
queue-4.4/mips-fix-minimum-alignment-requirement-of-irq-stack.patch