Lines Matching refs:reader_count
30 int reader_count; member
43 p->reader_count = 0; in rwlock_init()
52 assert(p->reader_count == 0); in rwlock_destroy()
71 p->reader_count++; in rwlock_rdlock()
72 assert(p->reader_count >= 0); in rwlock_rdlock()
74 assert(p->reader_count == 0 || p->writer_count == 0); in rwlock_rdlock()
85 if (p->reader_count == 0) in rwlock_wrlock()
96 assert(p->reader_count >= 0); in rwlock_wrlock()
98 assert(p->reader_count == 0 || p->writer_count == 0); in rwlock_wrlock()
107 if (p->reader_count > 0) in rwlock_unlock()
109 p->reader_count--; in rwlock_unlock()
117 assert(p->reader_count >= 0); in rwlock_unlock()
119 assert(p->reader_count == 0 || p->writer_count == 0); in rwlock_unlock()