Lines Matching defs:semp
290 struct sem *semp; /* semaphore ptr */
295 semp = &sp->sem_base[op->sem_num];
296 semp->semval -= op->sem_op;
308 struct sem *semp;
328 semp = &sp->sem_base[i];
329 semp->semval = semp->sempid = 0;
330 if (semp->semncnt) {
331 cv_broadcast(&semp->semncnt_cv);
332 semp->semncnt = 0;
334 if (semp->semzcnt) {
335 cv_broadcast(&semp->semzcnt_cv);
336 semp->semzcnt = 0;
628 struct sem *semp = &sp->sem_base[i];
629 int v = (int)semp->semval + adj;
633 semp->semval = (ushort_t)v;
634 if (v == 0 && semp->semzcnt)
635 cv_broadcast(&semp->semzcnt_cv);
636 if (adj > 0 && semp->semncnt)
637 cv_broadcast(&semp->semncnt_cv);
869 struct sem *semp; /* ptr to semaphore */
1022 semp = &sp->sem_base[op->sem_num];
1028 if (op->sem_op + (int)semp->semval > USHRT_MAX ||
1038 semp->semval += op->sem_op;
1043 if (semp->semncnt) {
1045 cv_signal(&semp->semncnt_cv);
1047 cv_broadcast(&semp->semncnt_cv);
1049 if (semp->semzcnt && !semp->semval)
1050 cv_broadcast(&semp->semzcnt_cv);
1058 if (semp->semval >= (unsigned)(-op->sem_op)) {
1066 semp->semval += op->sem_op;
1067 if (semp->semzcnt && !semp->semval)
1068 cv_broadcast(&semp->semzcnt_cv);
1092 semp->semncnt++;
1093 cvres = cv_waituntil_sig(&semp->semncnt_cv, lock,
1098 ASSERT(semp->semncnt != 0);
1099 semp->semncnt--;
1117 if (semp->semval) {
1129 semp->semzcnt++;
1130 cvres = cv_waituntil_sig(&semp->semzcnt_cv, lock,
1135 * Don't touch semp if the semaphores have been removed.
1138 ASSERT(semp->semzcnt != 0);
1139 semp->semzcnt--;