Shorten u_queue names
[mesa.git] / src / gallium / auxiliary / util / u_ringbuffer.c
index 648b105b137524b3851b1dc3710e8333a79d2dc3..f6bb910671ef2e6e2f966f627df617ec97cfda86 100644 (file)
@@ -16,18 +16,18 @@ struct util_ringbuffer
     */
    unsigned head;
    unsigned tail;
-   pipe_condvar change;
-   pipe_mutex mutex;
+   cnd_t change;
+   mtx_t mutex;
 };
 
 
 struct util_ringbuffer *util_ringbuffer_create( unsigned dwords )
 {
    struct util_ringbuffer *ring = CALLOC_STRUCT(util_ringbuffer);
-   if (ring == NULL)
+   if (!ring)
       return NULL;
 
-   assert(util_is_power_of_two(dwords));
+   assert(util_is_power_of_two_or_zero(dwords));
    
    ring->buf = MALLOC( dwords * sizeof(unsigned) );
    if (ring->buf == NULL)
@@ -35,8 +35,8 @@ struct util_ringbuffer *util_ringbuffer_create( unsigned dwords )
 
    ring->mask = dwords - 1;
 
-   pipe_condvar_init(ring->change);
-   pipe_mutex_init(ring->mutex);
+   cnd_init(&ring->change);
+   (void) mtx_init(&ring->mutex, mtx_plain);
    return ring;
 
 fail:
@@ -47,8 +47,8 @@ fail:
 
 void util_ringbuffer_destroy( struct util_ringbuffer *ring )
 {
-   pipe_condvar_destroy(ring->change);
-   pipe_mutex_destroy(ring->mutex);
+   cnd_destroy(&ring->change);
+   mtx_destroy(&ring->mutex);
    FREE(ring->buf);
    FREE(ring);
 }
@@ -56,7 +56,7 @@ void util_ringbuffer_destroy( struct util_ringbuffer *ring )
 /**
  * Return number of free entries in the ring
  */
-static INLINE unsigned util_ringbuffer_space( const struct util_ringbuffer *ring )
+static inline unsigned util_ringbuffer_space( const struct util_ringbuffer *ring )
 {
    return (ring->tail - (ring->head + 1)) & ring->mask;
 }
@@ -64,7 +64,7 @@ static INLINE unsigned util_ringbuffer_space( const struct util_ringbuffer *ring
 /**
  * Is the ring buffer empty?
  */
-static INLINE boolean util_ringbuffer_empty( const struct util_ringbuffer *ring )
+static inline boolean util_ringbuffer_empty( const struct util_ringbuffer *ring )
 {
    return util_ringbuffer_space(ring) == ring->mask;
 }
@@ -76,7 +76,7 @@ void util_ringbuffer_enqueue( struct util_ringbuffer *ring,
 
    /* XXX: over-reliance on mutexes, etc:
     */
-   pipe_mutex_lock(ring->mutex);
+   mtx_lock(&ring->mutex);
 
    /* make sure we don't request an impossible amount of space
     */
@@ -85,7 +85,7 @@ void util_ringbuffer_enqueue( struct util_ringbuffer *ring,
    /* Wait for free space:
     */
    while (util_ringbuffer_space(ring) < packet->dwords)
-      pipe_condvar_wait(ring->change, ring->mutex);
+      cnd_wait(&ring->change, &ring->mutex);
 
    /* Copy data to ring:
     */
@@ -102,8 +102,8 @@ void util_ringbuffer_enqueue( struct util_ringbuffer *ring,
 
    /* Signal change:
     */
-   pipe_condvar_signal(ring->change);
-   pipe_mutex_unlock(ring->mutex);
+   cnd_signal(&ring->change);
+   mtx_unlock(&ring->mutex);
 }
 
 enum pipe_error util_ringbuffer_dequeue( struct util_ringbuffer *ring,
@@ -117,13 +117,13 @@ enum pipe_error util_ringbuffer_dequeue( struct util_ringbuffer *ring,
 
    /* XXX: over-reliance on mutexes, etc:
     */
-   pipe_mutex_lock(ring->mutex);
+   mtx_lock(&ring->mutex);
 
    /* Get next ring entry:
     */
    if (wait) {
       while (util_ringbuffer_empty(ring))
-         pipe_condvar_wait(ring->change, ring->mutex);
+         cnd_wait(&ring->change, &ring->mutex);
    }
    else {
       if (util_ringbuffer_empty(ring)) {
@@ -154,7 +154,7 @@ enum pipe_error util_ringbuffer_dequeue( struct util_ringbuffer *ring,
 out:
    /* Signal change:
     */
-   pipe_condvar_signal(ring->change);
-   pipe_mutex_unlock(ring->mutex);
+   cnd_signal(&ring->change);
+   mtx_unlock(&ring->mutex);
    return ret;
 }