diff options
author | Vasily Gorbik <gor@linux.ibm.com> | 2019-11-22 17:53:30 +0300 |
---|---|---|
committer | Vasily Gorbik <gor@linux.ibm.com> | 2019-11-30 12:52:45 +0300 |
commit | 67f5593419878798bb306632cdca0698a2dd3cbd (patch) | |
tree | 826f37ffccd07833374d5f17d6befc2aff05ebb4 /arch/s390/kernel/unwind_bc.c | |
parent | 7bcaad1f9fac889f5fcd1a383acf7e00d006da41 (diff) | |
download | linux-67f5593419878798bb306632cdca0698a2dd3cbd.tar.xz |
s390/unwind: report an error if pt_regs are not on stack
If unwinder is looking at pt_regs which is not on stack then something
went wrong and an error has to be reported rather than successful
unwinding termination.
Reviewed-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Diffstat (limited to 'arch/s390/kernel/unwind_bc.c')
-rw-r--r-- | arch/s390/kernel/unwind_bc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/s390/kernel/unwind_bc.c b/arch/s390/kernel/unwind_bc.c index fa111d3d378f..fd90b6e21663 100644 --- a/arch/s390/kernel/unwind_bc.c +++ b/arch/s390/kernel/unwind_bc.c @@ -76,7 +76,7 @@ bool unwind_next_frame(struct unwind_state *state) /* No back-chain, look for a pt_regs structure */ sp = state->sp + STACK_FRAME_OVERHEAD; if (!on_stack(info, sp, sizeof(struct pt_regs))) - goto out_stop; + goto out_err; regs = (struct pt_regs *) sp; if (READ_ONCE_NOCHECK(regs->psw.mask) & PSW_MASK_PSTATE) goto out_stop; |