[dpdk-dev] [PATCH v5 0/9] net/mlx5: support SubFunction representor
Xueming Li
xuemingl at nvidia.com
Sun Mar 28 15:48:06 CEST 2021
SubFunction [1] is a portion of the PCI device, a SF netdev has its own
dedicated queues(txq, rxq). A SF netdev supports E-Switch representation
offload similar to existing PF and VF representors. A SF shares PCI
level resources with other SFs and/or with its parent PCI function.
This patch set introduces SubFunction representor support for mlx5
PMD driver.
Version history:
RFC:
initial version [2]
V2:
- support bonding representor probe with new pf#vf# devargs
- adapt EAL api V2 [3] changes
- update document
V3:
- support list of representor PF section for bonding device:
example: representor=pf[0,1]vf[0-3]
- add bonding information to shared PMD data
- fix setting VF MAC through representor
- fix bonding xstats, sum xstats from PF members.
V4:
- combine unexpected patch, thanks Slava
V5:
- support new ethdev ops api to return representor info
- new api to encode and decode representor ID
- new patch to allow BF2 HPF(-1) probe with sf-1
[1] SubFunction in kernel:
https://lore.kernel.org/netdev/20201112192424.2742-1-parav@nvidia.com/
[2] RFC:
http://patchwork.dpdk.org/project/dpdk/list/?series=14376
[3] V2:
http://patchwork.dpdk.org/project/dpdk/list/?series=14560
[3] V3:
http://patchwork.dpdk.org/project/dpdk/list/?series=14810
[3] V4:
http://patchwork.dpdk.org/project/dpdk/list/?series=14836
Xueming Li (9):
common/mlx5: sub-function representor port name parsing
net/mlx5: support representor of sub function
net/mlx5: revert setting bonding representor to first PF
net/mlx5: refactor bonding representor probe
net/mlx5: support list value of representor PF
net/mlx5: save bonding member ports information
net/mlx5: fix setting VF default MAC through representor
net/mlx5: improve xstats of bonding port
net/mlx5: probe host PF representor with SubFunction
doc/guides/nics/mlx5.rst | 62 +++-
drivers/common/mlx5/linux/mlx5_common_os.c | 32 +-
drivers/common/mlx5/linux/mlx5_nl.c | 3 +
drivers/common/mlx5/mlx5_common.h | 2 +
drivers/net/mlx5/linux/mlx5_ethdev_os.c | 136 +++++--
drivers/net/mlx5/linux/mlx5_os.c | 395 ++++++++++++++-------
drivers/net/mlx5/mlx5.c | 24 +-
drivers/net/mlx5/mlx5.h | 35 +-
drivers/net/mlx5/mlx5_defs.h | 4 -
drivers/net/mlx5/mlx5_ethdev.c | 149 ++++++--
drivers/net/mlx5/mlx5_mac.c | 23 +-
11 files changed, 652 insertions(+), 213 deletions(-)
--
2.25.1
More information about the dev
mailing list