s390/unwind: always inline get_stack_pointer
authorVasily Gorbik <gor@linux.ibm.com>
Tue, 26 Nov 2019 16:40:04 +0000 (17:40 +0100)
committerVasily Gorbik <gor@linux.ibm.com>
Sat, 30 Nov 2019 09:52:46 +0000 (10:52 +0100)
Always inline get_stack_pointer() to avoid potential problems
due to compiler inlining decisions, i.e. getting stack pointer of
get_stack_pointer() itself which is later reused.

Reviewed-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
arch/s390/include/asm/stacktrace.h

index 4f3dd1c..4725315 100644 (file)
@@ -33,8 +33,8 @@ static inline bool on_stack(struct stack_info *info,
        return addr >= info->begin && addr + len <= info->end;
 }
 
-static inline unsigned long get_stack_pointer(struct task_struct *task,
-                                             struct pt_regs *regs)
+static __always_inline unsigned long get_stack_pointer(struct task_struct *task,
+                                                      struct pt_regs *regs)
 {
        if (regs)
                return (unsigned long) kernel_stack_pointer(regs);