summaryrefslogtreecommitdiff
path: root/arch/sparc/kernel/sigutil_64.c
diff options
context:
space:
mode:
authorStefan Agner <stefan.agner@toradex.com>2016-06-29 17:36:47 -0700
committerStefan Agner <stefan.agner@toradex.com>2016-06-29 17:36:47 -0700
commitefe965a5dad66bd14219cdc9474ea75eda783456 (patch)
treec88aa38447747bee19da6e4097334cd4c98b426f /arch/sparc/kernel/sigutil_64.c
parent475764ae387355462c874892b03110298038adef (diff)
parent9ca1d50fa959cda1f04f43275f7930a70f1a631e (diff)
Merge tag 'v4.4.14' into toradex_vf_4.4-nextColibri_VF_LinuxImageV2.6Beta2_20160701
This is the 4.4.14 stable release
Diffstat (limited to 'arch/sparc/kernel/sigutil_64.c')
-rw-r--r--arch/sparc/kernel/sigutil_64.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/arch/sparc/kernel/sigutil_64.c b/arch/sparc/kernel/sigutil_64.c
index 387834a9c56a..36aadcbeac69 100644
--- a/arch/sparc/kernel/sigutil_64.c
+++ b/arch/sparc/kernel/sigutil_64.c
@@ -37,7 +37,10 @@ int restore_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu)
unsigned long fprs;
int err;
- err = __get_user(fprs, &fpu->si_fprs);
+ if (((unsigned long) fpu) & 7)
+ return -EFAULT;
+
+ err = get_user(fprs, &fpu->si_fprs);
fprs_write(0);
regs->tstate &= ~TSTATE_PEF;
if (fprs & FPRS_DL)
@@ -72,7 +75,10 @@ int restore_rwin_state(__siginfo_rwin_t __user *rp)
struct thread_info *t = current_thread_info();
int i, wsaved, err;
- __get_user(wsaved, &rp->wsaved);
+ if (((unsigned long) rp) & 7)
+ return -EFAULT;
+
+ get_user(wsaved, &rp->wsaved);
if (wsaved > NSWINS)
return -EFAULT;