Loading arch/s390/include/asm/stacktrace.h +1 −0 Original line number Diff line number Diff line Loading @@ -12,6 +12,7 @@ enum stack_type { STACK_TYPE_IRQ, STACK_TYPE_NODAT, STACK_TYPE_RESTART, STACK_TYPE_MCCK, }; struct stack_info { Loading arch/s390/kernel/dumpstack.c +11 −1 Original line number Diff line number Diff line Loading @@ -79,6 +79,15 @@ static bool in_nodat_stack(unsigned long sp, struct stack_info *info) return in_stack(sp, info, STACK_TYPE_NODAT, top - THREAD_SIZE, top); } static bool in_mcck_stack(unsigned long sp, struct stack_info *info) { unsigned long frame_size, top; frame_size = STACK_FRAME_OVERHEAD + sizeof(struct pt_regs); top = S390_lowcore.mcck_stack + frame_size; return in_stack(sp, info, STACK_TYPE_MCCK, top - THREAD_SIZE, top); } static bool in_restart_stack(unsigned long sp, struct stack_info *info) { unsigned long frame_size, top; Loading Loading @@ -108,7 +117,8 @@ int get_stack_info(unsigned long sp, struct task_struct *task, /* Check per-cpu stacks */ if (!in_irq_stack(sp, info) && !in_nodat_stack(sp, info) && !in_restart_stack(sp, info)) !in_restart_stack(sp, info) && !in_mcck_stack(sp, info)) goto unknown; recursion_check: Loading Loading
arch/s390/include/asm/stacktrace.h +1 −0 Original line number Diff line number Diff line Loading @@ -12,6 +12,7 @@ enum stack_type { STACK_TYPE_IRQ, STACK_TYPE_NODAT, STACK_TYPE_RESTART, STACK_TYPE_MCCK, }; struct stack_info { Loading
arch/s390/kernel/dumpstack.c +11 −1 Original line number Diff line number Diff line Loading @@ -79,6 +79,15 @@ static bool in_nodat_stack(unsigned long sp, struct stack_info *info) return in_stack(sp, info, STACK_TYPE_NODAT, top - THREAD_SIZE, top); } static bool in_mcck_stack(unsigned long sp, struct stack_info *info) { unsigned long frame_size, top; frame_size = STACK_FRAME_OVERHEAD + sizeof(struct pt_regs); top = S390_lowcore.mcck_stack + frame_size; return in_stack(sp, info, STACK_TYPE_MCCK, top - THREAD_SIZE, top); } static bool in_restart_stack(unsigned long sp, struct stack_info *info) { unsigned long frame_size, top; Loading Loading @@ -108,7 +117,8 @@ int get_stack_info(unsigned long sp, struct task_struct *task, /* Check per-cpu stacks */ if (!in_irq_stack(sp, info) && !in_nodat_stack(sp, info) && !in_restart_stack(sp, info)) !in_restart_stack(sp, info) && !in_mcck_stack(sp, info)) goto unknown; recursion_check: Loading