powerpc/irq: Use current_stack_pointer in check_stack_overflow()
The purpose of check_stack_overflow() is to verify that the stack has not overflowed. To really know whether the stack pointer is still within boundaries, the check must be done directly on the value of r1. So use current_stack_pointer, which returns the current value of r1, rather than current_stack_frame() which causes a frame to be created and then returns that value. Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20200220115141.2707-3-mpe@ellerman.id.au
This commit is contained in:
parent
0e63f01517
commit
84ab148930
|
@ -602,7 +602,7 @@ static inline void check_stack_overflow(void)
|
|||
#ifdef CONFIG_DEBUG_STACKOVERFLOW
|
||||
long sp;
|
||||
|
||||
sp = current_stack_frame() & (THREAD_SIZE-1);
|
||||
sp = current_stack_pointer & (THREAD_SIZE - 1);
|
||||
|
||||
/* check for stack overflow: is there less than 2KB free? */
|
||||
if (unlikely(sp < 2048)) {
|
||||
|
|
Loading…
Reference in New Issue