summaryrefslogtreecommitdiffstats
path: root/arch/ia64/include/asm/mutex.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/ia64/include/asm/mutex.h')
-rw-r--r--arch/ia64/include/asm/mutex.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/ia64/include/asm/mutex.h b/arch/ia64/include/asm/mutex.h
index f41e66d65e31..28cb819e0ff9 100644
--- a/arch/ia64/include/asm/mutex.h
+++ b/arch/ia64/include/asm/mutex.h
@@ -82,7 +82,7 @@ __mutex_fastpath_unlock(atomic_t *count, void (*fail_fn)(atomic_t *))
static inline int
__mutex_fastpath_trylock(atomic_t *count, int (*fail_fn)(atomic_t *))
{
- if (cmpxchg_acq(count, 1, 0) == 1)
+ if (atomic_read(count) == 1 && cmpxchg_acq(count, 1, 0) == 1)
return 1;
return 0;
}