Lines Matching refs:V_ipq

83 #define	V_ipq		VNET(ipq)  macro
89 #define IPQ_LOCK(i) mtx_lock(&V_ipq[i].lock)
90 #define IPQ_TRYLOCK(i) mtx_trylock(&V_ipq[i].lock)
91 #define IPQ_UNLOCK(i) mtx_unlock(&V_ipq[i].lock)
92 #define IPQ_LOCK_ASSERT(i) mtx_assert(&V_ipq[i].lock, MA_OWNED)
291 head = &V_ipq[hash].head; in ip_reass()
311 if (V_ipq[hash].count < V_ipreass_maxbucketsize) in ip_reass()
326 V_ipq[hash].count++; in ip_reass()
341 callout_reset_sbt(&V_ipq[hash].timer, in ip_reass()
343 &V_ipq[hash], 0); in ip_reass()
345 MPASS(callout_active(&V_ipq[hash].timer)); in ip_reass()
459 ipq_drop(&V_ipq[hash], fp); in ip_reass()
467 ipq_drop(&V_ipq[hash], fp); in ip_reass()
478 ipq_drop(&V_ipq[hash], fp); in ip_reass()
522 V_ipq[hash].count--; in ip_reass()
533 ipreass_reschedule(&V_ipq[hash]); in ip_reass()
639 resched = !TAILQ_EMPTY(&V_ipq[i].head); in ipreass_drain_vnet()
640 while(!TAILQ_EMPTY(&V_ipq[i].head)) { in ipreass_drain_vnet()
641 struct ipq *fp = TAILQ_FIRST(&V_ipq[i].head); in ipreass_drain_vnet()
644 ipq_free(&V_ipq[i], fp); in ipreass_drain_vnet()
647 ipreass_reschedule(&V_ipq[i]); in ipreass_drain_vnet()
648 KASSERT(V_ipq[i].count == 0, in ipreass_drain_vnet()
650 V_ipq[i].count, V_ipq)); in ipreass_drain_vnet()
690 V_ipq = malloc(sizeof(struct ipqbucket) * V_ipq_hashsize, in ipreass_vnet_init()
694 TAILQ_INIT(&V_ipq[i].head); in ipreass_vnet_init()
695 mtx_init(&V_ipq[i].lock, "IP reassembly", NULL, in ipreass_vnet_init()
697 callout_init_mtx(&V_ipq[i].timer, &V_ipq[i].lock, 0); in ipreass_vnet_init()
698 V_ipq[i].count = 0; in ipreass_vnet_init()
700 V_ipq[i].vnet = curvnet; in ipreass_vnet_init()
752 TAILQ_FOREACH_SAFE(fp, &V_ipq[i].head, ipq_list, temp) { in ipreass_cleanup()
777 mtx_destroy(&V_ipq[i].lock); in ipreass_destroy()
778 free(V_ipq, M_IPREASS_HASH); in ipreass_destroy()
800 while (V_ipq[i].count > V_ipreass_maxbucketsize && in ipreass_drain_tomax()
801 (fp = TAILQ_LAST(&V_ipq[i].head, ipqhead)) != NULL) in ipreass_drain_tomax()
802 ipq_timeout(&V_ipq[i], fp); in ipreass_drain_tomax()
803 ipreass_reschedule(&V_ipq[i]); in ipreass_drain_tomax()
817 fp = TAILQ_LAST(&V_ipq[i].head, ipqhead); in ipreass_drain_tomax()
819 ipq_timeout(&V_ipq[i], fp); in ipreass_drain_tomax()
820 ipreass_reschedule(&V_ipq[i]); in ipreass_drain_tomax()
902 fp = TAILQ_LAST(&V_ipq[bucket].head, ipqhead); in ipq_reuse()
913 TAILQ_REMOVE(&V_ipq[bucket].head, fp, ipq_list); in ipq_reuse()
914 V_ipq[bucket].count--; in ipq_reuse()
915 ipreass_reschedule(&V_ipq[bucket]); in ipq_reuse()