[dpdk-dev] [PATCH v8 00/11] Add API to get supported packet types

Jianfeng Tan jianfeng.tan at intel.com
Mon Mar 14 08:42:45 CET 2016


To achieve this, a new function pointer, dev_supported_ptypes_get, is added
into struct eth_dev_ops. For those devices who do not implement it, it
means it does not support any ptypes.

v8:
  - Rebased on dpdk-next-net/rel_16_04 branch.
  - Rename ptypes_info -> supported_ptypes.
  - Abandon info about newly added API in release_16_04.rst.
  - concise -> correct.

v7:
  - 2.2 -> 16.04
  - Add note: this API better invoked after device is already started.
  - Update release_16_04.rst for newly added API.

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 supported packet types
  cxgbe: add dev_supported_ptypes_get implementation
  e1000: add dev_supported_ptypes_get implementation
  enic: add dev_supported_ptypes_get implementation
  fm10k: add dev_supported_ptypes_get implementation
  i40e: add dev_supported_ptypes_get implementation
  ixgbe: add dev_supported_ptypes_get implementation
  mlx4: add dev_supported_ptypes_get implementation
  mlx5: add dev_supported_ptypes_get implementation
  nfp: add dev_supported_ptypes_get implementation
  vmxnet3: add dev_supported_ptypes_get implementation

 drivers/net/cxgbe/cxgbe_ethdev.c       | 15 ++++++++++
 drivers/net/e1000/igb_ethdev.c         | 30 ++++++++++++++++++++
 drivers/net/enic/enic_ethdev.c         | 14 ++++++++++
 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       |  3 ++
 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   | 17 ++++++++++++
 lib/librte_ether/rte_ethdev.c          | 27 ++++++++++++++++++
 lib/librte_ether/rte_ethdev.h          | 27 ++++++++++++++++++
 lib/librte_ether/rte_ether_version.map |  5 ++++
 23 files changed, 347 insertions(+), 2 deletions(-)

-- 
2.1.4



More information about the dev mailing list