/haiku/headers/private/graphics/common/ |
H A D | benaphore.h | 16 sem_id sem; member in struct:__anon761 21 #define INIT_BEN(x, prefix) ( (x).ben = 0, (x).sem = create_sem(0, #prefix " benaphore"), (x).sem ) 22 #define ACQUIRE_BEN(x) if((atomic_add(&(x.ben), 1)) >= 1) acquire_sem(x.sem); 23 #define RELEASE_BEN(x) if((atomic_add(&(x.ben), -1)) > 1) release_sem(x.sem); 24 #define DELETE_BEN(x) delete_sem(x.sem);
|
/haiku/src/tests/system/libroot/posix/ |
H A D | realtime_sem_test1.cpp | 42 dump_sem(const char* name, sem_t* sem) 44 printf("%s, %p: ", name, sem); 46 printf("%02x", ((char*)sem)[i]); 64 sem_t* sem = sem_open(kSemName1, O_CREAT, S_IRUSR | S_IWUSR, 1); local 65 assert_posix_bool_success(sem != SEM_FAILED); 69 assert_posix_success(sem_close(sem)); 73 sem = sem_open(kSemName1, O_CREAT, S_IRUSR | S_IWUSR, 1); 74 assert_posix_bool_success(sem != SEM_FAILED); 78 assert_posix_success(sem_close(sem)); 82 sem 148 sem_t sem; local 185 sem_t* sem = sem_open(kSemName1, O_CREAT, S_IRUSR | S_IWUSR, 1); local 231 sem_t sem; local 265 sem_t* sem = sem_open(kSemName1, O_CREAT, S_IRUSR | S_IWUSR, 1); local 414 sem_t* sem = &_sem; local 550 sem_t* sem = sem_open(kSemName1, O_CREAT, S_IRUSR | S_IWUSR, 0); local 676 sem_t* sem = sem_open(kSemName1, O_CREAT, S_IRUSR | S_IWUSR, 0); local 810 sem_t* sem = &_sem; local 891 sem_t* sem = (sem_t*)address; local [all...] |
H A D | init_rld_after_fork_test.cpp | 18 printf(" %9ld %s\n", semInfo.sem, semInfo.name);
|
/haiku/headers/private/graphics/radeon_hd/ |
H A D | lock.h | 16 sem_id sem; member in struct:lock 24 lock->sem = create_sem(0, name); 27 return lock->sem < B_OK ? lock->sem : B_OK; 34 delete_sem(lock->sem); 42 return acquire_sem(lock->sem); 52 return release_sem(lock->sem);
|
/haiku/headers/private/graphics/intel_extreme/ |
H A D | lock.h | 16 sem_id sem; member in struct:lock 24 lock->sem = create_sem(0, name); 27 return lock->sem < B_OK ? lock->sem : B_OK; 34 delete_sem(lock->sem); 42 return acquire_sem(lock->sem); 52 return release_sem(lock->sem);
|
/haiku/headers/private/graphics/intel_810/ |
H A D | DriverInterface.h | 27 sem_id sem; member in struct:Benaphore 33 sem = create_sem(0, name); 34 return sem < 0 ? sem : B_OK; 40 return acquire_sem(sem); 47 return release_sem(sem); 51 void Delete() { delete_sem(sem); }
|
/haiku/src/system/kernel/ |
H A D | sem.cpp | 14 #include <sem.h> 153 "sem"); 156 struct sem_entry* sem = &sSems[i]; local 157 if (sem->id < 0 158 || (last != -1 && sem->u.used.last_acquirer != last) 159 || (name != NULL && strstr(sem->u.used.name, name) == NULL) 160 || (owner != -1 && sem->u.used.owner != owner)) 165 " %s\n", sem, sem->id, sem 176 dump_sem(struct sem_entry* sem) argument 280 struct sem_entry *sem = sSems + slot; local 297 notify_sem_select_events(struct sem_entry* sem, uint16 events) argument 308 fill_sem_info(struct sem_entry* sem, sem_info* info, size_t size) argument 324 uninit_sem_locked(struct sem_entry& sem, char** _name, SpinLocker& locker) argument 471 struct sem_entry* sem = NULL; local 603 remove_thread_from_sem(queued_thread *entry, struct sem_entry *sem) argument 657 sem_entry* sem = (sem_entry*)list_remove_head_item(&team->sem_list); local 1057 sem_entry* sem = (sem_entry*)list_get_first_item(&team->sem_list); local [all...] |
/haiku/src/tools/fs_shell/ |
H A D | lock.cpp | 43 lock->sem = fssh_create_sem(1, name); 44 if (lock->sem < FSSH_B_OK) 62 fssh_delete_sem(lock->sem); 63 lock->sem = -1; 73 fssh_status_t status = fssh_acquire_sem(lock->sem); 90 fssh_status_t status = fssh_acquire_sem_etc(lock->sem, 1, 110 fssh_release_sem(lock->sem); 140 m->sem = fssh_create_sem(1, name); 141 if (m->sem < FSSH_B_OK) 159 if (mutex->sem > [all...] |
/haiku/headers/private/graphics/3dfx/ |
H A D | DriverInterface.h | 28 sem_id sem; member in struct:Benaphore 34 sem = create_sem(0, name); 35 return sem < 0 ? sem : B_OK; 41 return acquire_sem(sem); 48 return release_sem(sem); 52 void Delete() { delete_sem(sem); }
|
/haiku/headers/private/graphics/et6x00/ |
H A D | DriverInterface.h | 26 sem_id sem; member in struct:__anon772 30 #define INIT_BEN(x) x.sem = create_sem(0, "ET6000 "#x" benaphore"); x.ben = 0; 31 #define AQUIRE_BEN(x) if((atomic_add(&(x.ben), 1)) >= 1) acquire_sem(x.sem); 32 #define RELEASE_BEN(x) if((atomic_add(&(x.ben), -1)) > 1) release_sem(x.sem); 33 #define DELETE_BEN(x) delete_sem(x.sem);
|
/haiku/src/system/kernel/posix/ |
H A D | realtime_sem.cpp | 187 mutex_init(&fLock, "global named sem table"); 205 NamedSem* sem = fNamedSemaphores.Lookup(name); local 206 if (sem != NULL) { 210 if (!sem->HasPermissions()) 213 sem->AcquireReference(); 214 _sem = sem; 226 sem = new(std::nothrow) NamedSem; 227 if (sem == NULL) 230 status_t error = sem->Init(name, mode, semCount); 232 delete sem; 256 NamedSem* sem = fNamedSemaphores.Lookup(name); local 315 SemInfo* sem = fSemaphore->Clone(); local 436 NamedSem* sem = NULL; local 494 TeamSemInfo* sem = fSemaphores.Lookup(id); local 513 TeamSemInfo* sem = fSemaphores.Lookup(id); local 529 TeamSemInfo* sem = fSemaphores.Lookup(id); local 545 TeamSemInfo* sem = fSemaphores.Lookup(id); local [all...] |
/haiku/src/build/libroot/ |
H A D | sem.cpp | 36 semaphore &sem = sSemaphores[i];
local 37 if (!sem.inUse) {
38 sem.name = strdup(name ? name : "unnamed sem");
39 if (!sem.name)
42 sem.inUse = true;
43 sem.count = count;
83 semaphore &sem = sSemaphores[id];
84 if (sem.count >= count) {
85 sem [all...] |
/haiku/src/system/libroot/os/ |
H A D | sem.c | 71 get_sem_count(sem_id sem, int32 *count) argument 73 return _kern_get_sem_count(sem, count); 78 set_sem_owner(sem_id sem, team_id team) argument 80 return _kern_set_sem_owner(sem, team); 85 _get_sem_info(sem_id sem, sem_info *info, size_t size) argument 87 return _kern_get_sem_info(sem, info, size);
|
/haiku/headers/private/kernel/ |
H A D | user_mutex.h | 26 status_t _user_mutex_sem_acquire(int32* sem, const char* name, uint32 flags, 28 status_t _user_mutex_sem_release(int32* sem, uint32 flags);
|
/haiku/headers/private/graphics/s3/ |
H A D | DriverInterface.h | 27 sem_id sem; member in struct:Benaphore 33 sem = create_sem(0, name); 34 return sem < 0 ? sem : B_OK; 40 return acquire_sem(sem); 47 return release_sem(sem); 51 void Delete() { delete_sem(sem); }
|
/haiku/src/add-ons/kernel/file_systems/nfs/ |
H A D | RPCPendingCalls.c | 37 SemaphorePoolPut (&calls->fPool,calls->fFirst->sem); 54 call->sem=SemaphorePoolGet(&calls->fPool); 135 sem_id sem; local 143 sem=create_sem (0,"pending_call"); 149 return sem; 152 sem=pool->fPool[pool->fPoolCount-1]; 159 return sem; 163 SemaphorePoolPut(struct SemaphorePool *pool, sem_id sem) argument 175 pool->fPool[pool->fPoolCount]=sem;
|
H A D | RPCPendingCalls.h | 21 void SemaphorePoolPut (struct SemaphorePool *pool, sem_id sem); 27 sem_id sem; member in struct:PendingCall
|
/haiku/src/system/libroot/posix/ |
H A D | semaphore.cpp | 70 sem_t* sem = (sem_t*)malloc(sizeof(sem_t)); local 71 if (sem == NULL) { 76 sem->type = SEM_TYPE_NAMED; 77 MemoryDeleter semDeleter(sem); 82 sem, &usedSem); 88 if (usedSem == sem) 137 int32* sem = (int32*)&semaphore->u.unnamed_sem; local 138 int32 oldValue = atomic_add_if_greater(sem, 1, -1); 146 return _kern_mutex_sem_release(sem, flags); 153 int32* sem local 166 int32* sem = (int32*)&semaphore->u.unnamed_sem; local [all...] |
/haiku/headers/private/graphics/ati/ |
H A D | DriverInterface.h | 28 sem_id sem; member in struct:Benaphore 34 sem = create_sem(0, name); 35 return sem < 0 ? sem : B_OK; 41 return acquire_sem(sem); 48 return release_sem(sem); 52 void Delete() { delete_sem(sem); }
|
/haiku/src/add-ons/kernel/drivers/dvb/cx23882/ |
H A D | i2c_core.c | 52 sem_id sem; member in struct:_i2c_bus 69 bus->sem = create_sem(1, "i2c bus access"); 70 if (bus->sem < 0) { 97 delete_sem(bus->sem); 348 acquire_sem(bus->sem); 350 release_sem(bus->sem); 359 acquire_sem(bus->sem); 361 release_sem(bus->sem); 373 acquire_sem(bus->sem); 378 release_sem(bus->sem); [all...] |
/haiku/src/add-ons/kernel/drivers/timer/ |
H A D | hpet.cpp | 41 sem_id sem; member in struct:hpet_timer_cookie 143 release_sem_etc(hpetCookie->sem, 1, B_DO_NOT_RESCHEDULE); 441 snprintf(semName, B_OS_NAME_LENGTH, "hpet_timer %d sem", timerNumber); 442 sem_id sem = create_sem(0, semName); local 443 if (sem < 0) { 445 return sem; 450 delete_sem(sem); 457 hpetCookie->sem = sem; 458 set_sem_owner(hpetCookie->sem, B_SYSTEM_TEA [all...] |
/haiku/headers/private/kernel/posix/ |
H A D | xsi_semaphore.h | 8 #include <sys/sem.h>
|
/haiku/src/add-ons/kernel/bus_managers/ps2/ |
H A D | ps2_alps.h | 20 sem_id sem; member in struct:__anon11
|
/haiku/headers/private/graphics/matrox/ |
H A D | DriverInterface.h | 31 sem_id sem; member in struct:__anon782 35 #define INIT_BEN(x) x.sem = create_sem(0, "G400 "#x" benaphore"); x.ben = 0; 36 #define AQUIRE_BEN(x) if((atomic_add(&(x.ben), 1)) >= 1) acquire_sem(x.sem); 37 #define RELEASE_BEN(x) if((atomic_add(&(x.ben), -1)) > 1) release_sem(x.sem); 38 #define DELETE_BEN(x) delete_sem(x.sem);
|
/haiku/headers/private/graphics/neomagic/ |
H A D | DriverInterface.h | 28 sem_id sem; member in struct:__anon796 32 #define INIT_BEN(x) x.sem = create_sem(0, "NM "#x" benaphore"); x.ben = 0; 33 #define AQUIRE_BEN(x) if((atomic_add(&(x.ben), 1)) >= 1) acquire_sem(x.sem); 34 #define RELEASE_BEN(x) if((atomic_add(&(x.ben), -1)) > 1) release_sem(x.sem); 35 #define DELETE_BEN(x) delete_sem(x.sem);
|