lock->wait_states = 0;
lock->num_waiting = 0;
#ifdef AFS_PTHREAD_ENV
- opr_Verify(pthread_mutex_init(&lock->mutex, NULL) == 0);
- opr_Verify(pthread_cond_init(&lock->read_cv, NULL) == 0);
- opr_Verify(pthread_cond_init(&lock->write_cv, NULL) == 0);
+ opr_mutex_init(&lock->mutex);
+ opr_cv_init(&lock->read_cv);
+ opr_cv_init(&lock->write_cv);
#endif /* AFS_PTHREAD_ENV */
}
Lock_Destroy(struct Lock *lock)
{
#ifdef AFS_PTHREAD_ENV
- opr_Verify(pthread_mutex_destroy(&lock->mutex) == 0);
- opr_Verify(pthread_cond_destroy(&lock->read_cv) == 0);
- opr_Verify(pthread_cond_destroy(&lock->write_cv) == 0);
+ opr_mutex_destroy(&lock->mutex);
+ opr_cv_destroy(&lock->read_cv);
+ opr_cv_destroy(&lock->write_cv);
#endif /* AFS_PTHREAD_ENV */
}
do {
lock->wait_states |= READ_LOCK;
#ifdef AFS_PTHREAD_ENV
- opr_Verify(pthread_cond_wait(&lock->read_cv, &lock->mutex) == 0);
+ opr_cv_wait(&lock->read_cv, &lock->mutex);
#else /* AFS_PTHREAD_ENV */
LWP_WaitProcess(&lock->readers_reading);
#endif /* AFS_PTHREAD_ENV */
do {
lock->wait_states |= WRITE_LOCK;
#ifdef AFS_PTHREAD_ENV
- opr_Verify(pthread_cond_wait(&lock->write_cv, &lock->mutex) == 0);
+ opr_cv_wait(&lock->write_cv, &lock->mutex);
#else /* AFS_PTHREAD_ENV */
LWP_WaitProcess(&lock->excl_locked);
#endif /* AFS_PTHREAD_ENV */
do {
lock->wait_states |= SHARED_LOCK;
#ifdef AFS_PTHREAD_ENV
- opr_Verify(pthread_cond_wait(&lock->write_cv, &lock->mutex) == 0);
+ opr_cv_wait(&lock->write_cv, &lock->mutex);
#else /* AFS_PTHREAD_ENV */
LWP_WaitProcess(&lock->excl_locked);
#endif /* AFS_PTHREAD_ENV */
do {
lock->wait_states |= WRITE_LOCK;
#ifdef AFS_PTHREAD_ENV
- opr_Verify(pthread_cond_wait(&lock->write_cv, &lock->mutex) == 0);
+ opr_cv_wait(&lock->write_cv, &lock->mutex);
#else /* AFS_PTHREAD_ENV */
LWP_WaitProcess(&lock->excl_locked);
#endif /* AFS_PTHREAD_ENV */
if (lock->wait_states & READ_LOCK) {
lock->wait_states &= ~READ_LOCK;
#ifdef AFS_PTHREAD_ENV
- opr_Verify(pthread_cond_broadcast(&lock->read_cv) == 0);
+ opr_cv_broadcast(&lock->read_cv);
#else /* AFS_PTHREAD_ENV */
LWP_NoYieldSignal(&lock->readers_reading);
#endif /* AFS_PTHREAD_ENV */
if (lock->wait_states & READ_LOCK) {
lock->wait_states &= ~READ_LOCK;
#ifdef AFS_PTHREAD_ENV
- opr_Verify(pthread_cond_broadcast(&lock->read_cv) == 0);
+ opr_cv_broadcast(&lock->read_cv);
#else /* AFS_PTHREAD_ENV */
LWP_NoYieldSignal(&lock->readers_reading);
#endif /* AFS_PTHREAD_ENV */
} else {
lock->wait_states &= ~EXCL_LOCKS;
#ifdef AFS_PTHREAD_ENV
- opr_Verify(pthread_cond_broadcast(&lock->write_cv) == 0);
+ opr_cv_broadcast(&lock->write_cv);
#else /* AFS_PTHREAD_ENV */
LWP_NoYieldSignal(&lock->excl_locked);
#endif /* AFS_PTHREAD_ENV */
if (lock->wait_states & EXCL_LOCKS) {
lock->wait_states &= ~EXCL_LOCKS;
#ifdef AFS_PTHREAD_ENV
- opr_Verify(pthread_cond_broadcast(&lock->write_cv) == 0);
+ opr_cv_broadcast(&lock->write_cv);
#else /* AFS_PTHREAD_ENV */
LWP_NoYieldSignal(&lock->excl_locked);
#endif /* AFS_PTHREAD_ENV */
} else {
lock->wait_states &= ~READ_LOCK;
#ifdef AFS_PTHREAD_ENV
- opr_Verify(pthread_cond_broadcast(&lock->read_cv) == 0);
+ opr_cv_broadcast(&lock->read_cv);
#else /* AFS_PTHREAD_ENV */
LWP_NoYieldSignal(&lock->readers_reading);
#endif /* AFS_PTHREAD_ENV */