void sem_init(semaphore_t *sem, int value) { sem->value = value; sem->valid = 1; set_sem_count(sem, 0); wait_queue_init(&(sem->wait_queue)); }
void sem_init_with_address(semaphore_t *sem, uintptr_t addr, int value) { sem->value = value; sem->addr = addr; sem->valid = 1; set_sem_count(sem, 0); wait_queue_init(&(sem->wait_queue)); }
void sem_init(semaphore_t * sem, int value) { sem->value = value; sem->valid = 1; #ifdef UCONFIG_BIONIC_LIBC sem->addr = 0; //-1 : // Not for futex #endif //UCONFIG_BIONIC_LIBC set_sem_count(sem, 0); wait_queue_init(&(sem->wait_queue)); }