X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=kernel%2Finclude%2Fasm-generic%2Ffutex.h;fp=kernel%2Finclude%2Fasm-generic%2Ffutex.h;h=bf2d34c9d804334cd0c634bf4d8ed921c08cfd7a;hb=52f993b8e89487ec9ee15a7fb4979e0f09a45b27;hp=e56272c919b5a688e1739cdefaa08c121e26f5a8;hpb=c189ccac5702322ed843fe17057035b7222a59b6;p=kvmfornfv.git diff --git a/kernel/include/asm-generic/futex.h b/kernel/include/asm-generic/futex.h index e56272c91..bf2d34c9d 100644 --- a/kernel/include/asm-generic/futex.h +++ b/kernel/include/asm-generic/futex.h @@ -108,11 +108,15 @@ futex_atomic_cmpxchg_inatomic(u32 *uval, u32 __user *uaddr, u32 val; preempt_disable(); - if (unlikely(get_user(val, uaddr) != 0)) + if (unlikely(get_user(val, uaddr) != 0)) { + preempt_enable(); return -EFAULT; + } - if (val == oldval && unlikely(put_user(newval, uaddr) != 0)) + if (val == oldval && unlikely(put_user(newval, uaddr) != 0)) { + preempt_enable(); return -EFAULT; + } *uval = val; preempt_enable();