Message ID | 1616939297-15627-1-git-send-email-xuemingl@nvidia.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 978CDA034F; Sun, 28 Mar 2021 15:48:50 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 23E7740042; Sun, 28 Mar 2021 15:48:50 +0200 (CEST) Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by mails.dpdk.org (Postfix) with ESMTP id D905D40040 for <dev@dpdk.org>; Sun, 28 Mar 2021 15:48:48 +0200 (CEST) Received: from Internal Mail-Server by MTLPINE1 (envelope-from xuemingl@nvidia.com) with SMTP; 28 Mar 2021 16:48:47 +0300 Received: from nvidia.com (pegasus05.mtr.labs.mlnx [10.210.16.100]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id 12SDmlHi018703; Sun, 28 Mar 2021 16:48:47 +0300 From: Xueming Li <xuemingl@nvidia.com> To: Viacheslav Ovsiienko <viacheslavo@nvidia.com> Cc: dev@dpdk.org, xuemingl@nvidia.com, Asaf Penso <asafp@nvidia.com> Date: Sun, 28 Mar 2021 13:48:06 +0000 Message-Id: <1616939297-15627-1-git-send-email-xuemingl@nvidia.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1608304614-13908-2-git-send-email-xuemingl@nvidia.com> References: <1608304614-13908-2-git-send-email-xuemingl@nvidia.com> Subject: [dpdk-dev] [PATCH v5 0/9] net/mlx5: support SubFunction representor X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Series |
net/mlx5: support SubFunction representor
|
|
Message
Xueming Li
March 28, 2021, 1:48 p.m. UTC
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(-)
Comments
Hi, > -----Original Message----- > From: dev <dev-bounces@dpdk.org> On Behalf Of Xueming Li > Sent: Sunday, March 28, 2021 4:48 PM > To: Slava Ovsiienko <viacheslavo@nvidia.com> > Cc: dev@dpdk.org; Xueming(Steven) Li <xuemingl@nvidia.com>; Asaf Penso > <asafp@nvidia.com> > Subject: [dpdk-dev] [PATCH v5 0/9] net/mlx5: support SubFunction > representor > > 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: > https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fpatch > work.dpdk.org%2Fproject%2Fdpdk%2Flist%2F%3Fseries%3D14376&dat > a=04%7C01%7Crasland%40nvidia.com%7Ccc705f353dda416b4ba808d8f1f0 > 3a83%7C43083d15727340c1b7db39efd9ccc17a%7C0%7C1%7C63752536137 > 3102759%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV > 2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=1V%2BbE > nDeyTxdKWgtniUBvn7hJJbREo%2Fh6FqKAV7geFA%3D&reserved=0 > > [3] V2: > https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fpatch > work.dpdk.org%2Fproject%2Fdpdk%2Flist%2F%3Fseries%3D14560&dat > a=04%7C01%7Crasland%40nvidia.com%7Ccc705f353dda416b4ba808d8f1f0 > 3a83%7C43083d15727340c1b7db39efd9ccc17a%7C0%7C1%7C63752536137 > 3102759%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV > 2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=DDGSVykr > 2CsyCm5%2BEnQViGKJKWI4b4dQyByr5zDILwc%3D&reserved=0 > > [3] V3: > https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fpatch > work.dpdk.org%2Fproject%2Fdpdk%2Flist%2F%3Fseries%3D14810&dat > a=04%7C01%7Crasland%40nvidia.com%7Ccc705f353dda416b4ba808d8f1f0 > 3a83%7C43083d15727340c1b7db39efd9ccc17a%7C0%7C1%7C63752536137 > 3102759%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV > 2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=tYBHZ0PBI > cdpTSZ3EedX3SpKz7hlbWIxdwCPwEw8nE8%3D&reserved=0 > > [3] V4: > https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fpatch > work.dpdk.org%2Fproject%2Fdpdk%2Flist%2F%3Fseries%3D14836&dat > a=04%7C01%7Crasland%40nvidia.com%7Ccc705f353dda416b4ba808d8f1f0 > 3a83%7C43083d15727340c1b7db39efd9ccc17a%7C0%7C1%7C63752536137 > 3102759%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV > 2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=CneNa%2 > BwMG5dzos%2F98%2BlouEKi7ex1CO5Zb52xTlxy1Dw%3D&reserved=0 > > > 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 Series applied to next-net-mlx, Kindest regards, Raslan Darawsheh
Thanks! >-----Original Message----- >From: Raslan Darawsheh <rasland@nvidia.com> >Sent: Wednesday, March 31, 2021 3:21 PM >To: Xueming(Steven) Li <xuemingl@nvidia.com>; Slava Ovsiienko <viacheslavo@nvidia.com> >Cc: dev@dpdk.org; Xueming(Steven) Li <xuemingl@nvidia.com>; Asaf Penso <asafp@nvidia.com> >Subject: RE: [dpdk-dev] [PATCH v5 0/9] net/mlx5: support SubFunction representor > >Hi, > >> -----Original Message----- >> From: dev <dev-bounces@dpdk.org> On Behalf Of Xueming Li >> Sent: Sunday, March 28, 2021 4:48 PM >> To: Slava Ovsiienko <viacheslavo@nvidia.com> >> Cc: dev@dpdk.org; Xueming(Steven) Li <xuemingl@nvidia.com>; Asaf Penso >> <asafp@nvidia.com> >> Subject: [dpdk-dev] [PATCH v5 0/9] net/mlx5: support SubFunction >> representor >> >> 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: >> https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fpatch >> work.dpdk.org%2Fproject%2Fdpdk%2Flist%2F%3Fseries%3D14376&dat >> a=04%7C01%7Crasland%40nvidia.com%7Ccc705f353dda416b4ba808d8f1f0 >> 3a83%7C43083d15727340c1b7db39efd9ccc17a%7C0%7C1%7C63752536137 >> 3102759%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV >> 2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=1V%2BbE >> nDeyTxdKWgtniUBvn7hJJbREo%2Fh6FqKAV7geFA%3D&reserved=0 >> >> [3] V2: >> https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fpatch >> work.dpdk.org%2Fproject%2Fdpdk%2Flist%2F%3Fseries%3D14560&dat >> a=04%7C01%7Crasland%40nvidia.com%7Ccc705f353dda416b4ba808d8f1f0 >> 3a83%7C43083d15727340c1b7db39efd9ccc17a%7C0%7C1%7C63752536137 >> 3102759%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV >> 2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=DDGSVykr >> 2CsyCm5%2BEnQViGKJKWI4b4dQyByr5zDILwc%3D&reserved=0 >> >> [3] V3: >> https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fpatch >> work.dpdk.org%2Fproject%2Fdpdk%2Flist%2F%3Fseries%3D14810&dat >> a=04%7C01%7Crasland%40nvidia.com%7Ccc705f353dda416b4ba808d8f1f0 >> 3a83%7C43083d15727340c1b7db39efd9ccc17a%7C0%7C1%7C63752536137 >> 3102759%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV >> 2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=tYBHZ0PBI >> cdpTSZ3EedX3SpKz7hlbWIxdwCPwEw8nE8%3D&reserved=0 >> >> [3] V4: >> https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fpatch >> work.dpdk.org%2Fproject%2Fdpdk%2Flist%2F%3Fseries%3D14836&dat >> a=04%7C01%7Crasland%40nvidia.com%7Ccc705f353dda416b4ba808d8f1f0 >> 3a83%7C43083d15727340c1b7db39efd9ccc17a%7C0%7C1%7C63752536137 >> 3102759%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV >> 2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=CneNa%2 >> BwMG5dzos%2F98%2BlouEKi7ex1CO5Zb52xTlxy1Dw%3D&reserved=0 >> >> >> 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 > >Series applied to next-net-mlx, > >Kindest regards, >Raslan Darawsheh