[PATCH v2 00/20] mlx5: refactor devargs management
Michael Baum
michaelba at nvidia.com
Mon Feb 14 10:34:51 CET 2022
v2: rebase + fix coverity issue.
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, then sends
it to all the drivers that will use it during the their probing. Each
driver updates within dictionary which keys it has used, then the common
driver checks the updated dictionary and reports about unknown devargs.
Michael Baum (20):
net/mlx5: fix wrong check sibling device config mismatch
net/mlx5: fix ineffective metadata argument adjustment
net/mlx5: fix wrong place of ASO CT object release
net/mlx5: fix inconsistency errno update in SH creation
net/mlx5: remove declaration duplications
net/mlx5: remove checking devargs duplication
net/mlx5: remove HCA attr structure duplication
net/mlx5: remove DevX flag duplication
net/mlx5: remove Verbs query device duplication
common/mlx5: share VF checking function
net/mlx5: share realtime timestamp configure
net/mlx5: share counter config function
net/mlx5: add E-switch mode flag
net/mlx5: rearrange device attribute structure
net/mlx5: concentrate all device configurations
net/mlx5: add share device context config structure
net/mlx5: using function to detect operation by DevX
net/mlx5: separate per port configuration
common/mlx5: add check for common devargs in probing again
common/mlx5: refactor devargs management
drivers/common/mlx5/mlx5_common.c | 345 +++++++--
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_flow_os.c | 3 +-
drivers/net/mlx5/linux/mlx5_os.c | 887 +++++++++---------------
drivers/net/mlx5/linux/mlx5_verbs.c | 9 +-
drivers/net/mlx5/linux/mlx5_vlan_os.c | 3 +-
drivers/net/mlx5/mlx5.c | 872 +++++++++++++++++------
drivers/net/mlx5/mlx5.h | 216 +++---
drivers/net/mlx5/mlx5_devx.c | 19 +-
drivers/net/mlx5/mlx5_ethdev.c | 31 +-
drivers/net/mlx5/mlx5_flow.c | 50 +-
drivers/net/mlx5/mlx5_flow.h | 2 +-
drivers/net/mlx5/mlx5_flow_dv.c | 93 ++-
drivers/net/mlx5/mlx5_flow_flex.c | 4 +-
drivers/net/mlx5/mlx5_flow_meter.c | 14 +-
drivers/net/mlx5/mlx5_rxmode.c | 8 +-
drivers/net/mlx5/mlx5_rxq.c | 49 +-
drivers/net/mlx5/mlx5_trigger.c | 35 +-
drivers/net/mlx5/mlx5_tx.c | 2 +-
drivers/net/mlx5/mlx5_txpp.c | 14 +-
drivers/net/mlx5/mlx5_txq.c | 62 +-
drivers/net/mlx5/mlx5_vlan.c | 4 +-
drivers/net/mlx5/windows/mlx5_flow_os.c | 2 +-
drivers/net/mlx5/windows/mlx5_os.c | 342 +++------
drivers/regex/mlx5/mlx5_regex.c | 3 +-
drivers/vdpa/mlx5/mlx5_vdpa.c | 32 +-
30 files changed, 1842 insertions(+), 1408 deletions(-)
--
2.25.1
More information about the dev
mailing list