minor locking optimizations
[musl] / src / thread / pthread_rwlock_trywrlock.c
index c029b87..202e256 100644 (file)
@@ -2,12 +2,12 @@
 
 int pthread_rwlock_trywrlock(pthread_rwlock_t *rw)
 {
-       if (a_xchg(&rw->__wrlock, 1))
-               return EAGAIN;
-       if (rw->__readers) {
-               a_store(&rw->__wrlock, 0);
-               return EAGAIN;
+       if (a_xchg(&rw->_rw_wrlock, 1))
+               return EBUSY;
+       if (rw->_rw_readers) {
+               a_store(&rw->_rw_wrlock, 0);
+               return EBUSY;
        }
-       rw->__owner = pthread_self()->tid;
+       rw->_rw_owner = pthread_self()->tid;
        return 0;
 }