1
0
Fork 0

[PARISC] More useful readwrite lock helpers

spinlock.c needs _can_lock helpers. Rewrite _is_locked helpers to be
_can_lock helpers.

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
hifive-unleashed-5.1
Kyle McMartin 2006-03-24 21:22:02 -07:00 committed by Kyle McMartin
parent 102c8c76f7
commit bc8846c522
1 changed files with 12 additions and 4 deletions

View File

@ -134,14 +134,22 @@ static __inline__ int __raw_write_trylock(raw_rwlock_t *rw)
return 1;
}
static __inline__ int __raw_is_read_locked(raw_rwlock_t *rw)
/*
* read_can_lock - would read_trylock() succeed?
* @lock: the rwlock in question.
*/
static __inline__ int __raw_read_can_lock(raw_rwlock_t *rw)
{
return rw->counter > 0;
return rw->counter >= 0;
}
static __inline__ int __raw_is_write_locked(raw_rwlock_t *rw)
/*
* write_can_lock - would write_trylock() succeed?
* @lock: the rwlock in question.
*/
static __inline__ int __raw_write_can_lock(raw_rwlock_t *rw)
{
return rw->counter < 0;
return !rw->counter;
}
#endif /* __ASM_SPINLOCK_H */