[dpdk-dev] [PATCH v6 00/11] Add API to get packet type info

Jianfeng Tan jianfeng.tan at intel.com
Mon Feb 29 21:30:17 CET 2016


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 does not provide any ptype info.

v6:
  - Remove extern in function declaration.
  - Update rte_ether_version.map.

v5:
  - Exclude l3fwd change from this series, as a separated one.
  - Fix malposition of mlx4 code in mlx5 commit introduced in v4.

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 at intel.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev at intel.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil at 6wind.com>

Jianfeng Tan (11):
  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

 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 +++++++++++
 lib/librte_ether/rte_ethdev.c          | 26 ++++++++++++++++++
 lib/librte_ether/rte_ethdev.h          | 24 ++++++++++++++++
 lib/librte_ether/rte_ether_version.map |  7 +++++
 23 files changed, 345 insertions(+), 2 deletions(-)

-- 
2.1.4



More information about the dev mailing list