Lines Matching refs:count
40 return (sp->count == 0); in sema_held()
45 sema_init(sema_t *sp, unsigned int count, int type, void *arg __unused) in sema_init() argument
50 (count > _semvaluemax)) in sema_init()
53 sp->count = count; in sema_init()
88 uint_t count; in sema_wait_impl() local
107 if (ssp && lsp->count == 0) { in sema_wait_impl()
109 if (lsp->count == 0) /* still looks like sleep */ in sema_wait_impl()
124 lsp->count != 0) { /* and non-blocking */ in sema_wait_impl()
131 lsp->count--; in sema_wait_impl()
139 while (error == 0 && lsp->count == 0) { in sema_wait_impl()
163 lsp->count--; in sema_wait_impl()
164 if (lsp->count != 0 && lsp->sema_waiters) { in sema_wait_impl()
184 count = lsp->count; in sema_wait_impl()
185 if (ssp->sema_min_count > count) in sema_wait_impl()
186 ssp->sema_min_count = count; in sema_wait_impl()
264 uint_t count; in sema_trywait() local
276 if (lsp->count == 0) in sema_trywait()
279 lsp->count--; in sema_trywait()
287 if (lsp->count == 0) in sema_trywait()
289 else if (--lsp->count != 0 && lsp->sema_waiters) { in sema_trywait()
307 count = lsp->count; in sema_trywait()
308 if (ssp->sema_min_count > count) in sema_trywait()
309 ssp->sema_min_count = count; in sema_trywait()
331 uint_t count; in sema_post() local
343 if (lsp->count >= _semvaluemax) in sema_post()
346 lsp->count++; in sema_post()
354 if (lsp->count >= _semvaluemax) in sema_post()
356 else if (lsp->count++ == 0 && lsp->sema_waiters) { in sema_post()
374 count = lsp->count; in sema_post()
375 if (ssp->sema_max_count < count) in sema_post()
376 ssp->sema_max_count = count; in sema_post()