suptr 90 kern/sysv_sem.c struct sem_undo *suptr, *sutmp; suptr 101 kern/sysv_sem.c if ((suptr = pool_get(&semu_pool, 0)) == NULL) { suptr 103 kern/sysv_sem.c SLIST_FOREACH(suptr, &semu_list, un_next) { suptr 104 kern/sysv_sem.c if (suptr->un_proc == p) { suptr 107 kern/sysv_sem.c return (suptr); suptr 110 kern/sysv_sem.c suptr = sutmp; suptr 112 kern/sysv_sem.c suptr->un_cnt = 0; suptr 113 kern/sysv_sem.c suptr->un_proc = p; suptr 114 kern/sysv_sem.c SLIST_INSERT_HEAD(&semu_list, suptr, un_next); suptr 115 kern/sysv_sem.c return (suptr); suptr 125 kern/sysv_sem.c struct sem_undo *suptr; suptr 132 kern/sysv_sem.c suptr = *supptr; suptr 133 kern/sysv_sem.c if (suptr == NULL) { suptr 134 kern/sysv_sem.c SLIST_FOREACH(suptr, &semu_list, un_next) { suptr 135 kern/sysv_sem.c if (suptr->un_proc == p) { suptr 136 kern/sysv_sem.c *supptr = suptr; suptr 140 kern/sysv_sem.c if (suptr == NULL) { suptr 143 kern/sysv_sem.c suptr = semu_alloc(p); suptr 144 kern/sysv_sem.c if (suptr == NULL) suptr 146 kern/sysv_sem.c *supptr = suptr; suptr 154 kern/sysv_sem.c sunptr = &suptr->un_ent[0]; suptr 155 kern/sysv_sem.c for (i = 0; i < suptr->un_cnt; i++, sunptr++) { suptr 165 kern/sysv_sem.c if (--suptr->un_cnt == 0) { suptr 166 kern/sysv_sem.c SLIST_REMOVE(&semu_list, suptr, sem_undo, un_next); suptr 167 kern/sysv_sem.c pool_put(&semu_pool, suptr); suptr 169 kern/sysv_sem.c } else if (i < suptr->un_cnt) suptr 170 kern/sysv_sem.c suptr->un_ent[i] = suptr 171 kern/sysv_sem.c suptr->un_ent[suptr->un_cnt]; suptr 178 kern/sysv_sem.c if (suptr->un_cnt == SEMUME) suptr 181 kern/sysv_sem.c sunptr = &suptr->un_ent[suptr->un_cnt]; suptr 182 kern/sysv_sem.c suptr->un_cnt++; suptr 192 kern/sysv_sem.c struct sem_undo *suptr = SLIST_FIRST(&semu_list); suptr 197 kern/sysv_sem.c while (suptr != SLIST_END(&semu_list)) { suptr 198 kern/sysv_sem.c sunptr = &suptr->un_ent[0]; suptr 199 kern/sysv_sem.c for (i = 0; i < suptr->un_cnt; i++, sunptr++) { suptr 202 kern/sysv_sem.c suptr->un_cnt--; suptr 203 kern/sysv_sem.c if (i < suptr->un_cnt) { suptr 204 kern/sysv_sem.c suptr->un_ent[i] = suptr 205 kern/sysv_sem.c suptr->un_ent[suptr->un_cnt]; suptr 213 kern/sysv_sem.c if (suptr->un_cnt == 0) { suptr 214 kern/sysv_sem.c struct sem_undo *sutmp = suptr; suptr 216 kern/sysv_sem.c if (suptr == SLIST_FIRST(&semu_list)) suptr 220 kern/sysv_sem.c suptr = SLIST_NEXT(suptr, un_next); suptr 224 kern/sysv_sem.c suprev = suptr; suptr 225 kern/sysv_sem.c suptr = SLIST_NEXT(suptr, un_next); suptr 503 kern/sysv_sem.c struct sem_undo *suptr = NULL; suptr 634 kern/sysv_sem.c suptr = NULL; /* sem_undo may have been reallocated */ suptr 683 kern/sysv_sem.c error = semundo_adjust(p, &suptr, semid, suptr 704 kern/sysv_sem.c if (semundo_adjust(p, &suptr, semid, suptr 747 kern/sysv_sem.c struct sem_undo *suptr; suptr 754 kern/sysv_sem.c SLIST_FOREACH_PREVPTR(suptr, supptr, &semu_list, un_next) { suptr 755 kern/sysv_sem.c if (suptr->un_proc == p) suptr 762 kern/sysv_sem.c if (suptr == NULL) suptr 769 kern/sysv_sem.c suptr->un_cnt)); suptr 774 kern/sysv_sem.c if (suptr->un_cnt > 0) { suptr 777 kern/sysv_sem.c for (ix = 0; ix < suptr->un_cnt; ix++) { suptr 778 kern/sysv_sem.c int semid = suptr->un_ent[ix].un_id; suptr 779 kern/sysv_sem.c int semnum = suptr->un_ent[ix].un_num; suptr 780 kern/sysv_sem.c int adjval = suptr->un_ent[ix].un_adjval; suptr 789 kern/sysv_sem.c suptr->un_proc, suptr->un_ent[ix].un_id, suptr 790 kern/sysv_sem.c suptr->un_ent[ix].un_num, suptr 791 kern/sysv_sem.c suptr->un_ent[ix].un_adjval, suptr 809 kern/sysv_sem.c *supptr = SLIST_NEXT(suptr, un_next); suptr 810 kern/sysv_sem.c pool_put(&semu_pool, suptr);