From: Ilya Leoshkevich Date: Wed, 2 Oct 2019 10:56:27 +0000 (+0200) Subject: s390/unwind: fix get_stack_pointer(NULL, NULL) X-Git-Tag: v5.5-rc1~188^2~23 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ea3f6dcfa71afb51753ad3729c29570f90d6abbc;p=thirdparty%2Flinux.git s390/unwind: fix get_stack_pointer(NULL, NULL) unwind_for_each_frame(NULL, NULL, 0) does not return any valid frames. The reason is that get_stack_pointer, unlike get_stack_info and show_stack, does not handle NULL argument. Fix by making get_stack_pointer treat NULL as current, like get_stack_info and show_stack do. Reviewed-by: Vasily Gorbik Tested-by: Vasily Gorbik Signed-off-by: Ilya Leoshkevich Signed-off-by: Vasily Gorbik --- diff --git a/arch/s390/include/asm/stacktrace.h b/arch/s390/include/asm/stacktrace.h index 0ae4bbf7779c8..fee40212af11b 100644 --- a/arch/s390/include/asm/stacktrace.h +++ b/arch/s390/include/asm/stacktrace.h @@ -38,7 +38,7 @@ static inline unsigned long get_stack_pointer(struct task_struct *task, { if (regs) return (unsigned long) kernel_stack_pointer(regs); - if (task == current) + if (!task || task == current) return current_stack_pointer(); return (unsigned long) task->thread.ksp; }