|
@@ -548,9 +548,9 @@ static int setup_rt_frame32(int sig, struct k_sigaction *ka, siginfo_t *info,
|
|
|
/* Set up to return from userspace. If provided, use a stub
|
|
|
already in userspace. */
|
|
|
if (ka->sa.sa_flags & SA_RESTORER) {
|
|
|
- regs->gprs[14] = (__u64) ka->sa.sa_restorer;
|
|
|
+ regs->gprs[14] = (__u64) ka->sa.sa_restorer | PSW32_ADDR_AMODE;
|
|
|
} else {
|
|
|
- regs->gprs[14] = (__u64) frame->retcode;
|
|
|
+ regs->gprs[14] = (__u64) frame->retcode | PSW32_ADDR_AMODE;
|
|
|
err |= __put_user(S390_SYSCALL_OPCODE | __NR_rt_sigreturn,
|
|
|
(u16 __force __user *)(frame->retcode));
|
|
|
}
|