Since the commit 88ac4396ad29 ("ethdev: add VMDq support"),
VMDq has been imposing a maximum number of mac addresses in the
mac_addr_add/del API.

Nowadays, new Intel drivers do not support the feature and few other
drivers implement this feature.

This series proposes to flag drivers that support the feature, and
remove the limit of number of mac addresses for others.

Next step could be to remove the VMDq pool notion from the generic API.
However I have some concern about this, as changing the quite stable
mac_addr_add/del API now seems a lot of noise for not much benefit.


-- 
David Marchand

Changes since v1:
- dropped incorrect VMDq feature announce for bnxt representors, em,
  i40e representors, ipn3ke representors,
- fixed buffer overflow on mailbox messages during port restart/VF reset,
- fixed duplicate MAC address installation on port start/restart,


David Marchand (5):
  ethdev: skip VMDq pools unless configured
  ethdev: announce VMDq capability
  ethdev: hide VMDq internal sizes
  net/iavf: accept up to 32k unicast MAC addresses
  net/iavf: fix duplicate MAC addresses install

 drivers/net/bnxt/bnxt_ethdev.c         |   3 +-
 drivers/net/cnxk/cnxk_ethdev_ops.c     |   1 -
 drivers/net/intel/e1000/igb_ethdev.c   |   1 +
 drivers/net/intel/fm10k/fm10k_ethdev.c |   1 +
 drivers/net/intel/i40e/i40e_ethdev.c   |   3 +-
 drivers/net/intel/iavf/iavf.h          |   5 +-
 drivers/net/intel/iavf/iavf_ethdev.c   |  41 ++++++---
 drivers/net/intel/iavf/iavf_vchnl.c    | 117 ++++++++++++++++++-------
 drivers/net/intel/ixgbe/ixgbe_ethdev.c |   2 +
 drivers/net/txgbe/txgbe_ethdev.c       |   1 +
 drivers/net/txgbe/txgbe_ethdev_vf.c    |   1 +
 lib/ethdev/ethdev_driver.h             |   8 +-
 lib/ethdev/rte_ethdev.c                |  45 ++++++++--
 lib/ethdev/rte_ethdev.h                |   8 +-
 14 files changed, 172 insertions(+), 65 deletions(-)

-- 
2.53.0

Reply via email to