To unify packet types among all PMDs, bit masks of packet type for
'ol_flags' are replaced by unified packet type.

Signed-off-by: Helin Zhang <helin.zhang at intel.com>
Signed-off-by: Jijiang Liu <jijiang.liu at intel.com>
---
 app/test-pmd/csumonly.c | 10 +++++-----
 app/test-pmd/rxonly.c   |  9 +++------
 2 files changed, 8 insertions(+), 11 deletions(-)

v2 changes:
* Used redefined packet types and enlarged packet_type field in mbuf.

diff --git a/app/test-pmd/csumonly.c b/app/test-pmd/csumonly.c
index 0a7af79..ad877c2 100644
--- a/app/test-pmd/csumonly.c
+++ b/app/test-pmd/csumonly.c
@@ -199,8 +199,9 @@ parse_ethernet(struct ether_hdr *eth_hdr, struct 
testpmd_offload_info *info)

 /* Parse a vxlan header */
 static void
-parse_vxlan(struct udp_hdr *udp_hdr, struct testpmd_offload_info *info,
-       uint64_t mbuf_olflags)
+parse_vxlan(struct udp_hdr *udp_hdr,
+           struct testpmd_offload_info *info,
+           uint32_t pkt_type)
 {
        struct ether_hdr *eth_hdr;

@@ -208,8 +209,7 @@ parse_vxlan(struct udp_hdr *udp_hdr, struct 
testpmd_offload_info *info,
         * (rfc7348) or that the rx offload flag is set (i40e only
         * currently) */
        if (udp_hdr->dst_port != _htons(4789) &&
-               (mbuf_olflags & (PKT_RX_TUNNEL_IPV4_HDR |
-                       PKT_RX_TUNNEL_IPV6_HDR)) == 0)
+               RTE_ETH_IS_TUNNEL_PKT(pkt_type) == 0)
                return;

        info->is_tunnel = 1;
@@ -543,7 +543,7 @@ pkt_burst_checksum_forward(struct fwd_stream *fs)
                                struct udp_hdr *udp_hdr;
                                udp_hdr = (struct udp_hdr *)((char *)l3_hdr +
                                        info.l3_len);
-                               parse_vxlan(udp_hdr, &info, m->ol_flags);
+                               parse_vxlan(udp_hdr, &info, m->packet_type);
                        } else if (info.l4_proto == IPPROTO_GRE) {
                                struct simple_gre_hdr *gre_hdr;
                                gre_hdr = (struct simple_gre_hdr *)
diff --git a/app/test-pmd/rxonly.c b/app/test-pmd/rxonly.c
index fdfe990..8eb68c4 100644
--- a/app/test-pmd/rxonly.c
+++ b/app/test-pmd/rxonly.c
@@ -92,7 +92,7 @@ pkt_burst_receive(struct fwd_stream *fs)
        uint64_t ol_flags;
        uint16_t nb_rx;
        uint16_t i, packet_type;
-       uint64_t is_encapsulation;
+       uint16_t is_encapsulation;

 #ifdef RTE_TEST_PMD_RECORD_CORE_CYCLES
        uint64_t start_tsc;
@@ -135,10 +135,7 @@ pkt_burst_receive(struct fwd_stream *fs)
                eth_type = RTE_BE_TO_CPU_16(eth_hdr->ether_type);
                ol_flags = mb->ol_flags;
                packet_type = mb->packet_type;
-
-               is_encapsulation = ol_flags & (PKT_RX_TUNNEL_IPV4_HDR |
-                               PKT_RX_TUNNEL_IPV6_HDR);
-
+               is_encapsulation = RTE_ETH_IS_TUNNEL_PKT(packet_type);
                print_ether_addr("  src=", &eth_hdr->s_addr);
                print_ether_addr(" - dst=", &eth_hdr->d_addr);
                printf(" - type=0x%04x - length=%u - nb_segs=%d",
@@ -174,7 +171,7 @@ pkt_burst_receive(struct fwd_stream *fs)
                        l2_len  = sizeof(struct ether_hdr);

                         /* Do not support ipv4 option field */
-                       if (ol_flags & PKT_RX_TUNNEL_IPV4_HDR) {
+                       if (RTE_ETH_IS_IPV4_HDR(packet_type)) {
                                l3_len = sizeof(struct ipv4_hdr);
                                ipv4_hdr = (struct ipv4_hdr *) 
(rte_pktmbuf_mtod(mb,
                                                unsigned char *) + l2_len);
-- 
1.9.3

Reply via email to