summaryrefslogtreecommitdiff
path: root/arch/arc/include/asm/futex.h
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2020-04-24 09:22:16 +0300
committerTakashi Iwai <tiwai@suse.de>2020-04-24 09:22:55 +0300
commit36dbae9945322e660795e73ffc8ed8ae4f25d13d (patch)
tree9e444e68380061dccfaa453d1f02cf21c5c986ef /arch/arc/include/asm/futex.h
parent14ff6c5546e7d98f8326d9ee7a75b79de9874efb (diff)
parent0d283287a42027e8a618bcdf17b79578041ebabd (diff)
downloadlinux-36dbae9945322e660795e73ffc8ed8ae4f25d13d.tar.xz
Merge branch 'topic/nhlt' into for-next
Merge NHLT init cleanup. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'arch/arc/include/asm/futex.h')
-rw-r--r--arch/arc/include/asm/futex.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/arc/include/asm/futex.h b/arch/arc/include/asm/futex.h
index 9d0d070e6c22..607d1c16d4dd 100644
--- a/arch/arc/include/asm/futex.h
+++ b/arch/arc/include/asm/futex.h
@@ -75,10 +75,12 @@ static inline int arch_futex_atomic_op_inuser(int op, int oparg, int *oval,
{
int oldval = 0, ret;
+ if (!access_ok(uaddr, sizeof(u32)))
+ return -EFAULT;
+
#ifndef CONFIG_ARC_HAS_LLSC
preempt_disable(); /* to guarantee atomic r-m-w of futex op */
#endif
- pagefault_disable();
switch (op) {
case FUTEX_OP_SET:
@@ -101,7 +103,6 @@ static inline int arch_futex_atomic_op_inuser(int op, int oparg, int *oval,
ret = -ENOSYS;
}
- pagefault_enable();
#ifndef CONFIG_ARC_HAS_LLSC
preempt_enable();
#endif