Lines Matching refs:fe

170 get_export_dgram(priv_p priv, fib_export_p fe)  in get_export_dgram()  argument
174 mtx_lock(&fe->export_mtx); in get_export_dgram()
175 if (fe->exp.item != NULL) { in get_export_dgram()
176 item = fe->exp.item; in get_export_dgram()
177 fe->exp.item = NULL; in get_export_dgram()
179 mtx_unlock(&fe->export_mtx); in get_export_dgram()
204 return_export_dgram(priv_p priv, fib_export_p fe, item_p item, int flags) in return_export_dgram() argument
212 mtx_lock(&fe->export_mtx); in return_export_dgram()
213 if (fe->exp.item == NULL) { in return_export_dgram()
214 fe->exp.item = item; in return_export_dgram()
215 mtx_unlock(&fe->export_mtx); in return_export_dgram()
217 mtx_unlock(&fe->export_mtx); in return_export_dgram()
218 export_send(priv, fe, item, flags); in return_export_dgram()
227 expire_flow(priv_p priv, fib_export_p fe, struct flow_entry *fle, int flags) in expire_flow() argument
233 exp.item = get_export_dgram(priv, fe); in expire_flow()
244 export_send(priv, fe, exp.item, flags); in expire_flow()
246 return_export_dgram(priv, fe, exp.item, NG_QUEUE); in expire_flow()
250 exp.item9 = get_export9_dgram(priv, fe, &exp.item9_opt); in expire_flow()
266 export9_send(priv, fe, exp.item9, exp.item9_opt, flags); in expire_flow()
268 return_export9_dgram(priv, fe, exp.item9, in expire_flow()
535 fib_export_p fe = priv_to_fib(priv, fib); in ng_netflow_fib_init() local
539 if (fe != NULL) in ng_netflow_fib_init()
542 if ((fe = malloc(sizeof(struct fib_export), M_NETGRAPH, in ng_netflow_fib_init()
546 mtx_init(&fe->export_mtx, "export dgram lock", NULL, MTX_DEF); in ng_netflow_fib_init()
547 mtx_init(&fe->export9_mtx, "export9 dgram lock", NULL, MTX_DEF); in ng_netflow_fib_init()
548 fe->fib = fib; in ng_netflow_fib_init()
549 fe->domain_id = fib; in ng_netflow_fib_init()
552 (uintptr_t)NULL, (uintptr_t)fe) == 0) { in ng_netflow_fib_init()
555 fib, fe, priv_to_fib(priv, fib)); in ng_netflow_fib_init()
556 mtx_destroy(&fe->export_mtx); in ng_netflow_fib_init()
557 mtx_destroy(&fe->export9_mtx); in ng_netflow_fib_init()
558 free(fe, M_NETGRAPH); in ng_netflow_fib_init()
562 fib, fe, priv_to_fib(priv, fib)); in ng_netflow_fib_init()
576 fib_export_p fe; in ng_netflow_cache_flush() local
589 fe = priv_to_fib(priv, fle->f.r.fib); in ng_netflow_cache_flush()
590 expire_flow(priv, fe, fle, NG_QUEUE); in ng_netflow_cache_flush()
596 fe = priv_to_fib(priv, fle->f.r.fib); in ng_netflow_cache_flush()
597 expire_flow(priv, fe, fle, NG_QUEUE); in ng_netflow_cache_flush()
621 if ((fe = priv_to_fib(priv, i)) == NULL) in ng_netflow_cache_flush()
624 if (fe->exp.item != NULL) in ng_netflow_cache_flush()
625 export_send(priv, fe, fe->exp.item, NG_QUEUE); in ng_netflow_cache_flush()
627 if (fe->exp.item9 != NULL) in ng_netflow_cache_flush()
628 export9_send(priv, fe, fe->exp.item9, in ng_netflow_cache_flush()
629 fe->exp.item9_opt, NG_QUEUE); in ng_netflow_cache_flush()
631 mtx_destroy(&fe->export_mtx); in ng_netflow_cache_flush()
632 mtx_destroy(&fe->export9_mtx); in ng_netflow_cache_flush()
633 free(fe, M_NETGRAPH); in ng_netflow_cache_flush()
653 ng_netflow_flow_add(priv_p priv, fib_export_p fe, struct ip *ip, in ng_netflow_flow_add() argument
678 r.fib = fe->fib; in ng_netflow_flow_add()
780 ng_netflow_flow6_add(priv_p priv, fib_export_p fe, struct ip6_hdr *ip6, in ng_netflow_flow6_add() argument
800 r.fib = fe->fib; in ng_netflow_flow6_add()
1012 export_send(priv_p priv, fib_export_p fe, item_p item, int flags) in export_send() argument
1031 header->engine_id = fe->domain_id; in export_send()
1033 header->flow_seq = htonl(atomic_fetchadd_32(&fe->flow_seq, in export_send()