Lines Matching refs:pkt

21 process_ipsec_get_pkt_type(struct rte_mbuf *pkt, uint8_t **nlp)  in process_ipsec_get_pkt_type()  argument
24 uint32_t ptype = pkt->packet_type; in process_ipsec_get_pkt_type()
26 eth = rte_pktmbuf_mtod(pkt, struct rte_ether_hdr *); in process_ipsec_get_pkt_type()
50 update_mac_addrs(struct rte_mbuf *pkt, uint16_t portid) in update_mac_addrs() argument
54 ethhdr = rte_pktmbuf_mtod(pkt, struct rte_ether_hdr *); in update_mac_addrs()
78 ev_vector_attr_update(struct rte_event_vector *vec, struct rte_mbuf *pkt) in ev_vector_attr_update() argument
81 vec->port = pkt->port; in ev_vector_attr_update()
84 if (vec->attr_valid && (vec->port != pkt->port)) in ev_vector_attr_update()
226 route4_pkt(struct rte_mbuf *pkt, struct rt_ctx *rt_ctx) in route4_pkt() argument
234 dst_ip = *rte_pktmbuf_mtod_offset(pkt, uint32_t *, offset); in route4_pkt()
250 route6_pkt(struct rte_mbuf *pkt, struct rt_ctx *rt_ctx) in route6_pkt() argument
259 ip6_dst = rte_pktmbuf_mtod_offset(pkt, uint8_t *, offset); in route6_pkt()
274 get_route(struct rte_mbuf *pkt, struct route_table *rt, enum pkt_type type) in get_route() argument
277 return route4_pkt(pkt, rt->rt4_ctx); in get_route()
279 return route6_pkt(pkt, rt->rt6_ctx); in get_route()
289 struct rte_mbuf *pkt; in process_ipsec_ev_inbound() local
296 pkt = ev->mbuf; in process_ipsec_ev_inbound()
299 type = process_ipsec_get_pkt_type(pkt, &nlp); in process_ipsec_ev_inbound()
303 if (pkt->ol_flags & RTE_MBUF_F_RX_SEC_OFFLOAD) { in process_ipsec_ev_inbound()
304 if (unlikely(pkt->ol_flags & in process_ipsec_ev_inbound()
310 sa = *(struct ipsec_sa **)rte_security_dynfield(pkt); in process_ipsec_ev_inbound()
321 if (pkt->ol_flags & RTE_MBUF_F_RX_SEC_OFFLOAD) { in process_ipsec_ev_inbound()
322 if (unlikely(pkt->ol_flags & in process_ipsec_ev_inbound()
328 sa = *(struct ipsec_sa **)rte_security_dynfield(pkt); in process_ipsec_ev_inbound()
363 port_id = get_route(pkt, rt, type); in process_ipsec_ev_inbound()
371 update_mac_addrs(pkt, port_id); in process_ipsec_ev_inbound()
374 ipsec_event_pre_forward(pkt, port_id); in process_ipsec_ev_inbound()
379 rte_pktmbuf_free(pkt); in process_ipsec_ev_inbound()
390 struct rte_mbuf *pkt; in process_ipsec_ev_outbound() local
398 pkt = ev->mbuf; in process_ipsec_ev_outbound()
401 type = process_ipsec_get_pkt_type(pkt, &nlp); in process_ipsec_ev_outbound()
429 port_id = get_route(pkt, rt, type); in process_ipsec_ev_outbound()
460 sess->security.ses, pkt, NULL); in process_ipsec_ev_outbound()
463 pkt->ol_flags |= RTE_MBUF_F_TX_SEC_OFFLOAD; in process_ipsec_ev_outbound()
470 pkt->l2_len = RTE_ETHER_HDR_LEN; in process_ipsec_ev_outbound()
473 update_mac_addrs(pkt, port_id); in process_ipsec_ev_outbound()
476 ipsec_event_pre_forward(pkt, port_id); in process_ipsec_ev_outbound()
481 rte_pktmbuf_free(pkt); in process_ipsec_ev_outbound()
493 struct rte_mbuf *pkt; in ipsec_ev_route_pkts() local
498 pkt = t->ip4.pkts[i]; in ipsec_ev_route_pkts()
499 port_id = route4_pkt(pkt, rt->rt4_ctx); in ipsec_ev_route_pkts()
502 update_mac_addrs(pkt, port_id); in ipsec_ev_route_pkts()
504 ipsec_event_pre_forward(pkt, port_id); in ipsec_ev_route_pkts()
505 ev_vector_attr_update(vec, pkt); in ipsec_ev_route_pkts()
506 vec->mbufs[j++] = pkt; in ipsec_ev_route_pkts()
508 free_pkts(&pkt, 1); in ipsec_ev_route_pkts()
513 pkt = t->ip6.pkts[i]; in ipsec_ev_route_pkts()
514 port_id = route6_pkt(pkt, rt->rt6_ctx); in ipsec_ev_route_pkts()
517 update_mac_addrs(pkt, port_id); in ipsec_ev_route_pkts()
519 ipsec_event_pre_forward(pkt, port_id); in ipsec_ev_route_pkts()
520 ev_vector_attr_update(vec, pkt); in ipsec_ev_route_pkts()
521 vec->mbufs[j++] = pkt; in ipsec_ev_route_pkts()
523 free_pkts(&pkt, 1); in ipsec_ev_route_pkts()
530 pkt = t->ipsec.pkts[i]; in ipsec_ev_route_pkts()
532 free_pkts(&pkt, 1); in ipsec_ev_route_pkts()
542 free_pkts(&pkt, 1); in ipsec_ev_route_pkts()
546 sess->security.ses, pkt, NULL); in ipsec_ev_route_pkts()
548 pkt->ol_flags |= RTE_MBUF_F_TX_SEC_OFFLOAD; in ipsec_ev_route_pkts()
550 update_mac_addrs(pkt, port_id); in ipsec_ev_route_pkts()
551 ipsec_event_pre_forward(pkt, port_id); in ipsec_ev_route_pkts()
552 ev_vector_attr_update(vec, pkt); in ipsec_ev_route_pkts()
553 vec->mbufs[j++] = pkt; in ipsec_ev_route_pkts()
561 classify_pkt(struct rte_mbuf *pkt, struct ipsec_traffic *t) in classify_pkt() argument
567 type = process_ipsec_get_pkt_type(pkt, &nlp); in classify_pkt()
572 t->ip4.pkts[(t->ip4.num)++] = pkt; in classify_pkt()
576 t->ip6.pkts[(t->ip6.num)++] = pkt; in classify_pkt()
581 free_pkts(&pkt, 1); in classify_pkt()
591 struct rte_mbuf *pkt; in process_ipsec_ev_inbound_vector() local
600 pkt = vec->mbufs[i]; in process_ipsec_ev_inbound_vector()
602 if (pkt->ol_flags & RTE_MBUF_F_RX_SEC_OFFLOAD) { in process_ipsec_ev_inbound_vector()
603 if (unlikely(pkt->ol_flags & in process_ipsec_ev_inbound_vector()
607 free_pkts(&pkt, 1); in process_ipsec_ev_inbound_vector()
612 classify_pkt(pkt, &t); in process_ipsec_ev_inbound_vector()
626 struct rte_mbuf *pkt; in process_ipsec_ev_outbound_vector() local
635 pkt = vec->mbufs[i]; in process_ipsec_ev_outbound_vector()
637 classify_pkt(pkt, &t); in process_ipsec_ev_outbound_vector()
640 pkt->l2_len = RTE_ETHER_HDR_LEN; in process_ipsec_ev_outbound_vector()
653 struct rte_mbuf *pkt; in process_ipsec_ev_drv_mode_outbound_vector() local
659 pkt = vec->mbufs[i]; in process_ipsec_ev_drv_mode_outbound_vector()
660 port_id = pkt->port; in process_ipsec_ev_drv_mode_outbound_vector()
663 free_pkts(&pkt, 1); in process_ipsec_ev_drv_mode_outbound_vector()
666 ipsec_event_pre_forward(pkt, port_id); in process_ipsec_ev_drv_mode_outbound_vector()
669 data[port_id].sess, pkt, in process_ipsec_ev_drv_mode_outbound_vector()
673 pkt->ol_flags |= RTE_MBUF_F_TX_SEC_OFFLOAD; in process_ipsec_ev_drv_mode_outbound_vector()
676 pkt->l2_len = RTE_ETHER_HDR_LEN; in process_ipsec_ev_drv_mode_outbound_vector()
678 vec->mbufs[j++] = pkt; in process_ipsec_ev_drv_mode_outbound_vector()
690 struct rte_mbuf *pkt; in ipsec_ev_vector_process() local
693 pkt = vec->mbufs[0]; in ipsec_ev_vector_process()
696 if (is_unprotected_port(pkt->port)) in ipsec_ev_vector_process()
719 struct rte_mbuf *pkt; in ipsec_ev_vector_drv_mode_process() local
721 pkt = vec->mbufs[0]; in ipsec_ev_vector_drv_mode_process()
723 if (!is_unprotected_port(pkt->port)) in ipsec_ev_vector_drv_mode_process()
760 struct rte_mbuf *pkt; in ipsec_wrkr_non_burst_int_port_drv_mode() local
825 pkt = ev.mbuf; in ipsec_wrkr_non_burst_int_port_drv_mode()
826 port_id = pkt->port; in ipsec_wrkr_non_burst_int_port_drv_mode()
828 rte_prefetch0(rte_pktmbuf_mtod(pkt, void *)); in ipsec_wrkr_non_burst_int_port_drv_mode()
831 ipsec_event_pre_forward(pkt, port_id); in ipsec_wrkr_non_burst_int_port_drv_mode()
836 rte_pktmbuf_free(pkt); in ipsec_wrkr_non_burst_int_port_drv_mode()
842 data[port_id].sess, pkt, in ipsec_wrkr_non_burst_int_port_drv_mode()
846 pkt->ol_flags |= RTE_MBUF_F_TX_SEC_OFFLOAD; in ipsec_wrkr_non_burst_int_port_drv_mode()
849 pkt->l2_len = RTE_ETHER_HDR_LEN; in ipsec_wrkr_non_burst_int_port_drv_mode()