Searched refs:sem (Results 1 – 9 of 9) sorted by relevance
| /third_party/ulib/musl/pthread/ |
| A D | sem_timedwait.c | 8 int sem_timedwait(sem_t* restrict sem, const struct timespec* restrict at) { in sem_timedwait() argument 9 if (!sem_trywait(sem)) in sem_timedwait() 13 while (spins-- && atomic_load(&sem->_s_value) <= 0 && !atomic_load(&sem->_s_waiters)) in sem_timedwait() 16 while (sem_trywait(sem)) { in sem_timedwait() 17 atomic_fetch_add(&sem->_s_waiters, 1); in sem_timedwait() 18 a_cas_shim(&sem->_s_value, 0, -1); in sem_timedwait() 19 int r = __timedwait(&sem->_s_value, -1, CLOCK_REALTIME, at); in sem_timedwait()
|
| A D | sem_post.c | 5 int sem_post(sem_t* sem) { in sem_post() argument 8 val = atomic_load(&sem->_s_value); in sem_post() 9 waiters = atomic_load(&sem->_s_waiters); in sem_post() 14 } while (a_cas_shim(&sem->_s_value, val, val + 1 + (val < 0)) != val); in sem_post() 16 _zx_futex_wake(&sem->_s_value, 1); in sem_post()
|
| A D | sem_trywait.c | 4 int sem_trywait(sem_t* sem) { in sem_trywait() argument 6 while ((val = atomic_load(&sem->_s_value)) > 0) { in sem_trywait() 7 int new = val - 1 - (val == 1 && atomic_load(&sem->_s_waiters)); in sem_trywait() 8 if (a_cas_shim(&sem->_s_value, val, new) == val) in sem_trywait()
|
| A D | sem_init.c | 6 int sem_init(sem_t* sem, int pshared, unsigned value) { in sem_init() argument 15 atomic_store(&sem->_s_value, value); in sem_init() 16 atomic_store(&sem->_s_waiters, 0); in sem_init()
|
| A D | sem_wait.c | 3 int sem_wait(sem_t* sem) { in sem_wait() argument 4 return sem_timedwait(sem, 0); in sem_wait()
|
| A D | sem_getvalue.c | 5 int sem_getvalue(sem_t* restrict sem, int* restrict valp) { in sem_getvalue() argument 6 int val = atomic_load(&sem->_s_value); in sem_getvalue()
|
| A D | sem_destroy.c | 3 int sem_destroy(sem_t* sem) { in sem_destroy() argument
|
| A D | sem_open.c | 10 int sem_close(sem_t* sem) { in sem_close() argument
|
| /third_party/lib/acpica/source/os_specific/service_layers/ |
| A D | osfuchsia.cpp | 635 sem_t* sem = (sem_t*)malloc(sizeof(sem_t)); in AcpiOsCreateSemaphore() local 636 if (!sem) { in AcpiOsCreateSemaphore() 639 if (sem_init(sem, 0, InitialUnits) < 0) { in AcpiOsCreateSemaphore() 640 free(sem); in AcpiOsCreateSemaphore() 643 *OutHandle = sem; in AcpiOsCreateSemaphore()
|
Completed in 11 milliseconds