From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id DC4682BD8 for ; Fri, 26 Feb 2016 08:05:27 +0100 (CET) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga103.jf.intel.com with ESMTP; 25 Feb 2016 23:05:27 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.22,498,1449561600"; d="scan'208";a="921541401" Received: from dpdk06.sh.intel.com ([10.239.128.225]) by orsmga002.jf.intel.com with ESMTP; 25 Feb 2016 23:05:25 -0800 From: Jianfeng Tan To: dev@dpdk.org Date: Fri, 26 Feb 2016 08:04:35 +0800 Message-Id: <1456445087-147096-1-git-send-email-jianfeng.tan@intel.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1451544799-70776-1-git-send-email-jianfeng.tan@intel.com> References: <1451544799-70776-1-git-send-email-jianfeng.tan@intel.com> Subject: [dpdk-dev] [PATCH v4 00/12] Add API to get packet type info 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: , X-List-Received-Date: Fri, 26 Feb 2016 07:05:28 -0000 To achieve this, a new function pointer, dev_ptype_info_get, is added into struct eth_dev_ops. For those devices who do not implement it, it means it will not provide any ptype info. v4: - Change how to use this API: to previously agreement reached in mail. v3: - Change how to use this API: api to allocate mem for storing ptype array; and caller to free the mem. - Change how to return back ptypes from PMDs: return a pointer to corresponding static const array of supported ptypes, terminated by RTE_PTYPE_UNKNOWN. - Fix l3fwd parse_packet_type() when EXACT_MATCH is enabled. - Fix l3fwd memory leak when calling the API. v2: - Move ptype_mask filter function from each PMDs into ether layer. - Add ixgbe vPMD's ptype info. - Fix code style issues. Signed-off-by: Jianfeng Tan Jianfeng Tan (12): ethdev: add API to query packet type filling info pmd/cxgbe: add dev_ptype_info_get implementation pmd/e1000: add dev_ptype_info_get implementation pmd/enic: add dev_ptype_info_get implementation pmd/fm10k: add dev_ptype_info_get implementation pmd/i40e: add dev_ptype_info_get implementation pmd/ixgbe: add dev_ptype_info_get implementation pmd/mlx4: add dev_ptype_info_get implementation pmd/mlx5: add dev_ptype_info_get implementation pmd/nfp: add dev_ptype_info_get implementation pmd/vmxnet3: add dev_ptype_info_get implementation examples/l3fwd: add option to parse ptype doc/guides/sample_app_ug/l3_forward.rst | 6 +- drivers/net/cxgbe/cxgbe_ethdev.c | 14 ++++ drivers/net/e1000/igb_ethdev.c | 30 ++++++++ drivers/net/enic/enic_ethdev.c | 17 +++++ drivers/net/fm10k/fm10k_ethdev.c | 50 +++++++++++++ drivers/net/fm10k/fm10k_rxtx.c | 3 + drivers/net/fm10k/fm10k_rxtx_vec.c | 3 + drivers/net/i40e/i40e_ethdev.c | 1 + drivers/net/i40e/i40e_ethdev_vf.c | 1 + drivers/net/i40e/i40e_rxtx.c | 46 +++++++++++- drivers/net/i40e/i40e_rxtx.h | 1 + drivers/net/ixgbe/ixgbe_ethdev.c | 38 ++++++++++ drivers/net/ixgbe/ixgbe_ethdev.h | 2 + drivers/net/ixgbe/ixgbe_rxtx.c | 4 +- drivers/net/mlx4/mlx4.c | 21 ++++++ drivers/net/mlx5/mlx5.c | 1 + drivers/net/mlx5/mlx5.h | 1 + drivers/net/mlx5/mlx5_ethdev.c | 20 +++++ drivers/net/mlx5/mlx5_rxtx.c | 2 + drivers/net/nfp/nfp_net.c | 19 +++++ drivers/net/vmxnet3/vmxnet3_ethdev.c | 16 ++++ examples/l3fwd/main.c | 128 ++++++++++++++++++++++++++++++++ lib/librte_ether/rte_ethdev.c | 26 +++++++ lib/librte_ether/rte_ethdev.h | 26 +++++++ 24 files changed, 473 insertions(+), 3 deletions(-) -- 2.1.4