From patchwork Mon Jan 19 03:23:16 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Zhang, Helin" X-Patchwork-Id: 2349 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id E38DE5AA8; Mon, 19 Jan 2015 04:24:21 +0100 (CET) Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id 7F8625A96 for ; Mon, 19 Jan 2015 04:23:53 +0100 (CET) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga103.jf.intel.com with ESMTP; 18 Jan 2015 19:19:59 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.09,424,1418112000"; d="scan'208";a="672026964" Received: from shvmail01.sh.intel.com ([10.239.29.42]) by orsmga002.jf.intel.com with ESMTP; 18 Jan 2015 19:23:51 -0800 Received: from shecgisg004.sh.intel.com (shecgisg004.sh.intel.com [10.239.29.89]) by shvmail01.sh.intel.com with ESMTP id t0J3NneV009226; Mon, 19 Jan 2015 11:23:49 +0800 Received: from shecgisg004.sh.intel.com (localhost [127.0.0.1]) by shecgisg004.sh.intel.com (8.13.6/8.13.6/SuSE Linux 0.8) with ESMTP id t0J3NknV017138; Mon, 19 Jan 2015 11:23:49 +0800 Received: (from hzhan75@localhost) by shecgisg004.sh.intel.com (8.13.6/8.13.6/Submit) id t0J3Nkdf017134; Mon, 19 Jan 2015 11:23:46 +0800 From: Helin Zhang To: dev@dpdk.org Date: Mon, 19 Jan 2015 11:23:16 +0800 Message-Id: <1421637803-17034-11-git-send-email-helin.zhang@intel.com> X-Mailer: git-send-email 1.7.4.1 In-Reply-To: <1421637803-17034-1-git-send-email-helin.zhang@intel.com> References: <1421637803-17034-1-git-send-email-helin.zhang@intel.com> Subject: [dpdk-dev] [RFC 10/17] app/test-pmd: support of unified packet type X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" To unify packet types among all PMDs, bit masks and relevant macros of packet type for ol_flags are replaced by unified packet type and relevant macros. Signed-off-by: Helin Zhang --- app/test-pmd/csumonly.c | 6 +++--- app/test-pmd/rxonly.c | 9 +++------ 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/app/test-pmd/csumonly.c b/app/test-pmd/csumonly.c index 41711fd..5e08272 100644 --- a/app/test-pmd/csumonly.c +++ b/app/test-pmd/csumonly.c @@ -319,7 +319,7 @@ pkt_burst_checksum_forward(struct fwd_stream *fs) uint16_t nb_tx; uint16_t i; uint64_t ol_flags; - uint16_t testpmd_ol_flags; + uint16_t testpmd_ol_flags, packet_type; uint8_t l4_proto, l4_tun_len = 0; uint16_t ethertype = 0, outer_ethertype = 0; uint16_t l2_len = 0, l3_len = 0, l4_len = 0; @@ -362,6 +362,7 @@ pkt_burst_checksum_forward(struct fwd_stream *fs) tunnel = 0; l4_tun_len = 0; m = pkts_burst[i]; + packet_type = m->packet_type; /* Update the L3/L4 checksum error packet statistics */ rx_bad_ip_csum += ((m->ol_flags & PKT_RX_IP_CKSUM_BAD) != 0); @@ -387,8 +388,7 @@ pkt_burst_checksum_forward(struct fwd_stream *fs) /* currently, this flag is set by i40e only if the * packet is vxlan */ - } else if (m->ol_flags & (PKT_RX_TUNNEL_IPV4_HDR | - PKT_RX_TUNNEL_IPV6_HDR)) + } else if (RTE_ETH_IS_TUNNEL_PKT(packet_type)) tunnel = 1; if (tunnel == 1) { 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=", ð_hdr->s_addr); print_ether_addr(" - dst=", ð_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);