mbox

[RFC,0/3] common/mlx5: refactor devargs management

Message ID 20220102065927.2210733-1-michaelba@nvidia.com (mailing list archive)
Headers

Message

Michael Baum Jan. 2, 2022, 6:59 a.m. UTC
  From: Michael Baum <michaelba@nvidia.com>

These patches rearrange the management of the devargs
on two different levels.

The first splits the net driver's devargs into two categories,
device-dependent devargs and port-dependent devargs.
Arguments that depend on the device are updated once in the creation of
the shared device context structure, and do not change even if the user
has sent new devargs in the probe again. In contrast, the arguments that
depend on the port are updated separately for each port.

The second layer deals with the parsing of devargs in the common driver.
The common driver once parses the devargs into a dictionary, and sends
it to all the drivers that will use it during the probe and update
within it which keys they used. The shared driver then receives the
dictionary and reports about unknown devargs to the user.



Michael Baum (3):
  net/mlx5: remove some duplications
  net/mlx5: refactor devargs handling in spawn
  common/mlx5: refactore devargs management

 drivers/common/mlx5/mlx5_common.c     |  313 ++++++-
 drivers/common/mlx5/mlx5_common.h     |   51 +-
 drivers/common/mlx5/mlx5_common_pci.c |   18 +
 drivers/common/mlx5/version.map       |    3 +
 drivers/compress/mlx5/mlx5_compress.c |   38 +-
 drivers/crypto/mlx5/mlx5_crypto.c     |   39 +-
 drivers/net/mlx5/linux/mlx5_os.c      | 1233 +++++++++++++------------
 drivers/net/mlx5/linux/mlx5_verbs.c   |    4 +-
 drivers/net/mlx5/linux/mlx5_vlan_os.c |    3 +-
 drivers/net/mlx5/mlx5.c               |  713 +++++++-------
 drivers/net/mlx5/mlx5.h               |  275 ++++--
 drivers/net/mlx5/mlx5_devx.c          |   12 +-
 drivers/net/mlx5/mlx5_ethdev.c        |   26 +-
 drivers/net/mlx5/mlx5_flow.c          |  103 ++-
 drivers/net/mlx5/mlx5_flow.h          |    2 +-
 drivers/net/mlx5/mlx5_flow_dv.c       |  138 +--
 drivers/net/mlx5/mlx5_flow_flex.c     |    4 +-
 drivers/net/mlx5/mlx5_flow_meter.c    |  126 +--
 drivers/net/mlx5/mlx5_rxmode.c        |    8 +-
 drivers/net/mlx5/mlx5_rxq.c           |   47 +-
 drivers/net/mlx5/mlx5_trigger.c       |   27 +-
 drivers/net/mlx5/mlx5_tx.c            |    2 +-
 drivers/net/mlx5/mlx5_txpp.c          |   14 +-
 drivers/net/mlx5/mlx5_txq.c           |   45 +-
 drivers/net/mlx5/mlx5_vlan.c          |    4 +-
 drivers/net/mlx5/windows/mlx5_os.c    |  524 +++++++----
 drivers/regex/mlx5/mlx5_regex.c       |    3 +-
 drivers/vdpa/mlx5/mlx5_vdpa.c         |   32 +-
 28 files changed, 2250 insertions(+), 1557 deletions(-)