Lines Matching refs:ifq

5156 	ipftq_t *ifq;  local
5162 for (ifq = *parent; ifq != NULL; ifq = ifq->ifq_next) {
5163 if (ifq->ifq_ttl == period) {
5168 MUTEX_ENTER(&ifq->ifq_lock);
5169 ifq->ifq_flags &= ~IFQF_DELETE;
5170 ifq->ifq_ref++;
5171 MUTEX_EXIT(&ifq->ifq_lock);
5174 return ifq;
5178 KMALLOC(ifq, ipftq_t *);
5179 if (ifq != NULL) {
5180 ifq->ifq_ttl = period;
5181 ifq->ifq_head = NULL;
5182 ifq->ifq_tail = &ifq->ifq_head;
5183 ifq->ifq_next = *parent;
5184 ifq->ifq_pnext = parent;
5185 ifq->ifq_ref = 1;
5186 ifq->ifq_flags = IFQF_USER;
5187 *parent = ifq;
5189 MUTEX_NUKE(&ifq->ifq_lock);
5190 MUTEX_INIT(&ifq->ifq_lock, "ipftq mutex");
5193 return ifq;
5212 int fr_deletetimeoutqueue(ifq) in fr_deletetimeoutqueue() argument
5213 ipftq_t *ifq; in fr_deletetimeoutqueue()
5216 ifq->ifq_ref--;
5217 if ((ifq->ifq_ref == 0) && ((ifq->ifq_flags & IFQF_USER) != 0)) {
5218 ifq->ifq_flags |= IFQF_DELETE;
5221 return ifq->ifq_ref;
5238 void fr_freetimeoutqueue(ifq, ifs) in fr_freetimeoutqueue() argument
5239 ipftq_t *ifq; in fr_freetimeoutqueue()
5244 if (((ifq->ifq_flags & IFQF_DELETE) == 0) || (ifq->ifq_ref != 0) ||
5245 ((ifq->ifq_flags & IFQF_USER) == 0)) {
5247 (u_long)ifq, ifq->ifq_flags, ifq->ifq_ttl,
5248 ifq->ifq_ref);
5255 *ifq->ifq_pnext = ifq->ifq_next;
5256 if (ifq->ifq_next != NULL)
5257 ifq->ifq_next->ifq_pnext = ifq->ifq_pnext;
5259 MUTEX_DESTROY(&ifq->ifq_lock);
5261 KFREE(ifq);
5279 ipftq_t *ifq; local
5281 ifq = tqe->tqe_ifq;
5282 if (ifq == NULL)
5285 MUTEX_ENTER(&ifq->ifq_lock);
5292 ifq->ifq_tail = tqe->tqe_pnext;
5298 (void) fr_deletetimeoutqueue(ifq);
5300 MUTEX_EXIT(&ifq->ifq_lock);
5314 ipftq_t *ifq; local
5316 ifq = tqe->tqe_ifq;
5317 if (ifq == NULL)
5320 MUTEX_ENTER(&ifq->ifq_lock);
5321 if (ifq->ifq_head != tqe) {
5326 ifq->ifq_tail = tqe->tqe_pnext;
5328 tqe->tqe_next = ifq->ifq_head;
5329 ifq->ifq_head->tqe_pnext = &tqe->tqe_next;
5330 ifq->ifq_head = tqe;
5331 tqe->tqe_pnext = &ifq->ifq_head;
5333 MUTEX_EXIT(&ifq->ifq_lock);
5348 ipftq_t *ifq; local
5350 ifq = tqe->tqe_ifq;
5351 if (ifq == NULL)
5353 tqe->tqe_die = ifs->ifs_fr_ticks + ifq->ifq_ttl;
5355 MUTEX_ENTER(&ifq->ifq_lock);
5357 MUTEX_EXIT(&ifq->ifq_lock);
5371 tqe->tqe_pnext = ifq->ifq_tail;
5372 *ifq->ifq_tail = tqe;
5373 ifq->ifq_tail = &tqe->tqe_next;
5374 MUTEX_EXIT(&ifq->ifq_lock);
5387 void fr_queueappend(tqe, ifq, parent, ifs) in fr_queueappend() argument
5389 ipftq_t *ifq;
5394 MUTEX_ENTER(&ifq->ifq_lock);
5396 tqe->tqe_pnext = ifq->ifq_tail;
5397 *ifq->ifq_tail = tqe;
5398 ifq->ifq_tail = &tqe->tqe_next;
5400 tqe->tqe_ifq = ifq;
5401 tqe->tqe_die = ifs->ifs_fr_ticks + ifq->ifq_ttl;
5402 ifq->ifq_ref++;
5403 MUTEX_EXIT(&ifq->ifq_lock);
7512 int ipf_earlydrop(flushtype, ifq, idletime, ifs) in ipf_earlydrop() argument
7514 ipftq_t *ifq;
7523 if (ifq == NULL)
7535 tqn = ifq->ifq_head;
7575 ipftq_t *ifq, *ifqn; local
7588 while ((ifq = ifqn) != NULL) {
7589 ifqn = ifq->ifq_next;
7590 dropped += ipf_earlydrop(flushtype, ifq, (int)0, ifs);
7597 while ((ifq = ifqn) != NULL) {
7598 ifqn = ifq->ifq_next;
7599 tqn = ifq->ifq_head;
7649 ipftq_t *ifq, *ifqn; local
7713 while ((ifq = ifqn) != NULL) {
7714 ifqn = ifq->ifq_next;
7715 removed += ipf_earlydrop(flushtype, ifq, idletime, ifs);