examples/tep_term: fix offload on VXLAN
[dpdk.git] / examples / tep_termination / vxlan.c
index b2a2f53..4bad33d 100644 (file)
@@ -180,8 +180,7 @@ decapsulation(struct rte_mbuf *pkt)
         * (rfc7348) or that the rx offload flag is set (i40e only
         * currently)*/
        if (udp_hdr->dst_port != rte_cpu_to_be_16(DEFAULT_VXLAN_PORT) &&
-                       (pkt->ol_flags & (PKT_RX_TUNNEL_IPV4_HDR |
-                               PKT_RX_TUNNEL_IPV6_HDR)) == 0)
+               (pkt->packet_type & RTE_PTYPE_TUNNEL_MASK) == 0)
                return -1;
        outer_header_len = info.outer_l2_len + info.outer_l3_len
                + sizeof(struct udp_hdr) + sizeof(struct vxlan_hdr);
@@ -238,6 +237,8 @@ encapsulation(struct rte_mbuf *m, uint8_t queue_id)
        m->outer_l2_len = sizeof(struct ether_hdr);
        m->outer_l3_len = sizeof(struct ipv4_hdr);
 
+       ol_flags |= PKT_TX_TUNNEL_VXLAN;
+
        m->ol_flags |= ol_flags;
        m->tso_segsz = tx_offload.tso_segsz;