Commit ea3f6dcf authored by Ilya Leoshkevich's avatar Ilya Leoshkevich Committed by Vasily Gorbik

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: default avatarVasily Gorbik <gor@linux.ibm.com>
Tested-by: default avatarVasily Gorbik <gor@linux.ibm.com>
Signed-off-by: default avatarIlya Leoshkevich <iii@linux.ibm.com>
Signed-off-by: default avatarVasily Gorbik <gor@linux.ibm.com>
parent d3baaeb5
...@@ -38,7 +38,7 @@ static inline unsigned long get_stack_pointer(struct task_struct *task, ...@@ -38,7 +38,7 @@ static inline unsigned long get_stack_pointer(struct task_struct *task,
{ {
if (regs) if (regs)
return (unsigned long) kernel_stack_pointer(regs); return (unsigned long) kernel_stack_pointer(regs);
if (task == current) if (!task || task == current)
return current_stack_pointer(); return current_stack_pointer();
return (unsigned long) task->thread.ksp; return (unsigned long) task->thread.ksp;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment