Lines Matching defs:si
84 rr_append(struct rr_queue *q, struct rr_si *si)
90 if (si->head == NULL)
91 si->head = q;
93 si->tail->qnext = q;
94 si->tail = q; /* advance the tail pointer */
95 q->qnext = si->head; /* make it circular */
100 rr_remove_head(struct rr_si *si)
102 if (si->head == NULL)
104 si->head->status = 0;
106 if (si->head == si->tail) {
107 si->head = si->tail = NULL;
111 si->head = si->head->qnext;
112 si->tail->qnext = si->head;
119 remove_queue_q(struct rr_queue *q, struct rr_si *si)
125 if (q == si->head) {
126 rr_remove_head(si);
130 for (prev = si->head; prev; prev = prev->qnext) {
134 if (q == si->tail)
135 si->tail = prev;
142 next_pointer(struct rr_si *si)
144 if (si->head == NULL)
147 si->head = si->head->qnext;
148 si->tail = si->tail->qnext;
154 struct rr_si *si;
165 si = (struct rr_si *)(_si + 1);
172 rr_append(rrq, si);
181 struct rr_si *si = (struct rr_si *)(_si + 1);
185 while ( (rrq = si->head) ) {
189 rr_remove_head(si);
198 next_pointer(si);
226 struct rr_si *si = (struct rr_si *)(_si + 1);
229 si->head = si->tail = NULL;
288 struct rr_si *si = (struct rr_si *)(_q->_si + 1);
289 remove_queue_q(q, si);