From: surinder Date: Wed, 28 May 2008 08:51:16 +0000 (+0100) Subject: [ARM] 5067/1: _raw_write_can_lock macro bugfix X-Git-Tag: v2.6.26-rc6~94^2~1 X-Git-Url: http://ftp.safe.ca/?a=commitdiff_plain;h=1e5c594607778f551b729577b046ee5d9333cfb5;p=safe%2Fjmp%2Flinux-2.6 [ARM] 5067/1: _raw_write_can_lock macro bugfix The current __raw_write_can_lock macro tests whether the lock can be locked by checking if it is equal to 0x80000000, whereas the lock should be lockable if its value is 0 i.e. unlocked state is represented by 0. Hence the macro should test the value of lock against 0 and not 0x80000000. Signed-off-by: Surinder Pal Singh Signed-off-by: Russell King --- diff --git a/include/asm-arm/spinlock.h b/include/asm-arm/spinlock.h index 800ba52..2b41ebb 100644 --- a/include/asm-arm/spinlock.h +++ b/include/asm-arm/spinlock.h @@ -142,7 +142,7 @@ static inline void __raw_write_unlock(raw_rwlock_t *rw) } /* write_can_lock - would write_trylock() succeed? */ -#define __raw_write_can_lock(x) ((x)->lock == 0x80000000) +#define __raw_write_can_lock(x) ((x)->lock == 0) /* * Read locks are a bit more hairy: