summaryrefslogtreecommitdiff
path: root/arch/s390/kernel/compat_signal.c
diff options
context:
space:
mode:
authorMark Brown <broonie@linaro.org>2013-12-30 12:38:53 +0000
committerMark Brown <broonie@linaro.org>2013-12-30 12:38:53 +0000
commit34f653345018c42cedea89b7f6a4aba3783ebd7b (patch)
tree663f490f3e16571516dbcce7a2cb2f2545f79dee /arch/s390/kernel/compat_signal.c
parent3b58ee13da7510115b66f71c67c9e87b47e9c4aa (diff)
parent319e2e3f63c348a9b66db4667efa73178e18b17d (diff)
Merge tag 'v3.13-rc4' into regmap-core
Needed as a subsequent patch is built on some of the fixes. Linux 3.13-rc4
Diffstat (limited to 'arch/s390/kernel/compat_signal.c')
-rw-r--r--arch/s390/kernel/compat_signal.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/s390/kernel/compat_signal.c b/arch/s390/kernel/compat_signal.c
index 6e2442978409..95e7ba0fbb7e 100644
--- a/arch/s390/kernel/compat_signal.c
+++ b/arch/s390/kernel/compat_signal.c
@@ -194,7 +194,7 @@ static int restore_sigregs32(struct pt_regs *regs,_sigregs32 __user *sregs)
return -EINVAL;
/* Use regs->psw.mask instead of PSW_USER_BITS to preserve PER bit. */
- regs->psw.mask = (regs->psw.mask & ~PSW_MASK_USER) |
+ regs->psw.mask = (regs->psw.mask & ~(PSW_MASK_USER | PSW_MASK_RI)) |
(__u64)(user_sregs.regs.psw.mask & PSW32_MASK_USER) << 32 |
(__u64)(user_sregs.regs.psw.mask & PSW32_MASK_RI) << 32 |
(__u64)(user_sregs.regs.psw.addr & PSW32_ADDR_AMODE);