mbox series

[v6,0/2] support for VFIO-PCI VF token interface

Message ID 20200414032103.35507-1-haiyue.wang@intel.com (mailing list archive)
Headers
Series support for VFIO-PCI VF token interface |

Message

Wang, Haiyue April 14, 2020, 3:21 a.m. UTC
  v6: Drop the Fixes tag in uuid, since the file has been
    moved to another place, not suitable to apply on stable.
    And this is not a bug, just some kind of enhancement.

v5: 1. Add the VF token parse error handling.
    2. Split into two patches for different logic module.
    3. Add more comments into the code for explaining the design.
    4. Drop the ABI change workaround, this patch set focuses on code review.
    https://patchwork.dpdk.org/cover/68364/

v4: 1. Ignore rte_vfio_setup_device ABI check since it is
       for Linux driver use.
    https://patchwork.dpdk.org/patch/68255/

v3: Fix the Travis build failed:
           (1). rte_uuid.h:97:55: error: unknown type name ‘size_t’
           (2). rte_uuid.h:58:2: error: implicit declaration of function ‘memcpy’
    https://patchwork.dpdk.org/patch/68254/

v2: Fix the FreeBSD build error.
         https://patchwork.dpdk.org/patch/68240/

v1: Update the commit message.
        https://patchwork.dpdk.org/patch/68237/

RFC v2: https://patchwork.dpdk.org/patch/68114/ 
         Based on Vamsi's RFC v1, and Alex's patch for Qemu
        [https://lore.kernel.org/lkml/20200204161737.34696b91@w520.home/]: 
       Use the devarg to pass-down the VF token.

RFC v1: https://patchwork.dpdk.org/patch/66281/ by Vamsi.

Haiyue Wang (2):
  eal: add uuid dependent header files explicitly
  eal: support for VFIO-PCI VF token

 drivers/bus/pci/linux/pci_vfio.c  | 74 ++++++++++++++++++++++++++++++-
 lib/librte_eal/freebsd/eal.c      |  3 +-
 lib/librte_eal/include/rte_uuid.h |  2 +
 lib/librte_eal/include/rte_vfio.h | 21 ++++++++-
 lib/librte_eal/linux/eal_vfio.c   | 20 +++++++--
 5 files changed, 113 insertions(+), 7 deletions(-)
  

Comments

Vamsi Krishna Attunuru April 14, 2020, 1:18 p.m. UTC | #1
> -----Original Message-----
> From: Haiyue Wang <haiyue.wang@intel.com>
> Sent: Tuesday, April 14, 2020 8:51 AM
> To: dev@dpdk.org; thomas@monjalon.net; Vamsi Krishna Attunuru
> <vattunuru@marvell.com>; Jerin Jacob Kollanukkaran <jerinj@marvell.com>;
> alex.williamson@redhat.com; david.marchand@redhat.com
> Cc: Haiyue Wang <haiyue.wang@intel.com>
> Subject: [EXT] [PATCH v6 0/2] support for VFIO-PCI VF token interface
> 
> External Email
> 
> ----------------------------------------------------------------------
> v6: Drop the Fixes tag in uuid, since the file has been
>     moved to another place, not suitable to apply on stable.
>     And this is not a bug, just some kind of enhancement.
> 
> v5: 1. Add the VF token parse error handling.
>     2. Split into two patches for different logic module.
>     3. Add more comments into the code for explaining the design.
>     4. Drop the ABI change workaround, this patch set focuses on code review.
>     https://urldefense.proofpoint.com/v2/url?u=https-
> 3A__patchwork.dpdk.org_cover_68364_&d=DwIDaQ&c=nKjWec2b6R0mOyP
> az7xtfQ&r=WllrYaumVkxaWjgKto6E_rtDQshhIhik2jkvzFyRhW8&m=SxW07R9
> V0iyd_fAAZm4bU3jimkCD0khdQeabCt9pESg&s=mAkB5KtaFDGFdmqfNZV4dy
> w1A8Xy61tm22TNM8kGSrQ&e=
> 
> v4: 1. Ignore rte_vfio_setup_device ABI check since it is
>        for Linux driver use.
>     https://urldefense.proofpoint.com/v2/url?u=https-
> 3A__patchwork.dpdk.org_patch_68255_&d=DwIDaQ&c=nKjWec2b6R0mOyP
> az7xtfQ&r=WllrYaumVkxaWjgKto6E_rtDQshhIhik2jkvzFyRhW8&m=SxW07R9
> V0iyd_fAAZm4bU3jimkCD0khdQeabCt9pESg&s=Qv5ArXmk_WeQn1bTnM6JS
> XpNp3NEhuenHP1VsjUPzGE&e=
> 
> v3: Fix the Travis build failed:
>            (1). rte_uuid.h:97:55: error: unknown type name ‘size_t’
>            (2). rte_uuid.h:58:2: error: implicit declaration of function ‘memcpy’
>     https://urldefense.proofpoint.com/v2/url?u=https-
> 3A__patchwork.dpdk.org_patch_68254_&d=DwIDaQ&c=nKjWec2b6R0mOyP
> az7xtfQ&r=WllrYaumVkxaWjgKto6E_rtDQshhIhik2jkvzFyRhW8&m=SxW07R9
> V0iyd_fAAZm4bU3jimkCD0khdQeabCt9pESg&s=8U5HwQ-j-
> dkzQPk3E99wJauItTQLH0f48qay37pnTZ8&e=
> 
> v2: Fix the FreeBSD build error.
>          https://urldefense.proofpoint.com/v2/url?u=https-
> 3A__patchwork.dpdk.org_patch_68240_&d=DwIDaQ&c=nKjWec2b6R0mOyP
> az7xtfQ&r=WllrYaumVkxaWjgKto6E_rtDQshhIhik2jkvzFyRhW8&m=SxW07R9
> V0iyd_fAAZm4bU3jimkCD0khdQeabCt9pESg&s=7gq0iGeXay4YQ4ydHRdCZ9_
> oWDRQFtGOxGu3chq0z_s&e=
> 
> v1: Update the commit message.
>         https://urldefense.proofpoint.com/v2/url?u=https-
> 3A__patchwork.dpdk.org_patch_68237_&d=DwIDaQ&c=nKjWec2b6R0mOyP
> az7xtfQ&r=WllrYaumVkxaWjgKto6E_rtDQshhIhik2jkvzFyRhW8&m=SxW07R9
> V0iyd_fAAZm4bU3jimkCD0khdQeabCt9pESg&s=ibSeCUMMleRvQRH9WvJDYV
> TfBAt-Fi4lgfdTBOZ5xwc&e=
> 
> RFC v2: https://urldefense.proofpoint.com/v2/url?u=https-
> 3A__patchwork.dpdk.org_patch_68114_&d=DwIDaQ&c=nKjWec2b6R0mOyP
> az7xtfQ&r=WllrYaumVkxaWjgKto6E_rtDQshhIhik2jkvzFyRhW8&m=SxW07R9
> V0iyd_fAAZm4bU3jimkCD0khdQeabCt9pESg&s=JmSNjqCLE3Xh0_VymptqrViX
> VlRgpFN_PZMvM6C2X2s&e=
>          Based on Vamsi's RFC v1, and Alex's patch for Qemu
>         [https://urldefense.proofpoint.com/v2/url?u=https-
> 3A__lore.kernel.org_lkml_20200204161737.34696b91-
> 40w520.home_&d=DwIDaQ&c=nKjWec2b6R0mOyPaz7xtfQ&r=WllrYaumVkx
> aWjgKto6E_rtDQshhIhik2jkvzFyRhW8&m=SxW07R9V0iyd_fAAZm4bU3jimkCD
> 0khdQeabCt9pESg&s=7tRxVtn0y5xpxqC38hgAB7Bjz7kHR8mbD-
> pIFgP1E7o&e= ]:
>        Use the devarg to pass-down the VF token.
> 
> RFC v1: https://urldefense.proofpoint.com/v2/url?u=https-
> 3A__patchwork.dpdk.org_patch_66281_&d=DwIDaQ&c=nKjWec2b6R0mOyP
> az7xtfQ&r=WllrYaumVkxaWjgKto6E_rtDQshhIhik2jkvzFyRhW8&m=SxW07R9
> V0iyd_fAAZm4bU3jimkCD0khdQeabCt9pESg&s=riYbXycUMPQxA30y75nRzs08
> f2wM-uAGcQEnK9ENR7w&e=  by Vamsi.
> 
> Haiyue Wang (2):
>   eal: add uuid dependent header files explicitly
>   eal: support for VFIO-PCI VF token
> 
>  drivers/bus/pci/linux/pci_vfio.c  | 74 ++++++++++++++++++++++++++++++-
>  lib/librte_eal/freebsd/eal.c      |  3 +-
>  lib/librte_eal/include/rte_uuid.h |  2 +  lib/librte_eal/include/rte_vfio.h | 21
> ++++++++-
>  lib/librte_eal/linux/eal_vfio.c   | 20 +++++++--
>  5 files changed, 113 insertions(+), 7 deletions(-)
> 
> --
> 2.26.0

Tested following combinations:
* Both PF & VFs are with DPDK (Single process & multi process)
* PF is with DPDK & VFs are with Kernel driver
* PF is with kernel driver & VFs are with DPDK

Tested-by: Vamsi Attunuru <vattunuru@marvell.com>
  
David Marchand April 18, 2020, 9:22 a.m. UTC | #2
Thanks a lot for working on this.

I can see the support on the kernel side has been pulled in what will be 5.7.
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2fb732b33b0f4d73f391066c0a970b942c600dab

I'd like to get the dpdk support in 20.05, but for this, can I have a
summary of the kernel discussions?
Is there anything missing/still wip in the kernel?


On the series itself, I did not look in detail, but there is no
documentation on how to use the feature.
We are missing a release note update.
And a small comment on the last changes:

On Tue, Apr 14, 2020 at 5:26 AM Haiyue Wang <haiyue.wang@intel.com> wrote:
>
> v6: Drop the Fixes tag in uuid, since the file has been
>     moved to another place, not suitable to apply on stable.

This is *not* a reason to drop the Fixes: tag.
Hopefully, we still fix bugs once files have been moved.

>     And this is not a bug, just some kind of enhancement.

But on this point, I suppose this is ok not to backport.
  
Wang, Haiyue April 18, 2020, 9:38 a.m. UTC | #3
Hi David,

> -----Original Message-----
> From: David Marchand <david.marchand@redhat.com>
> Sent: Saturday, April 18, 2020 17:22
> To: Wang, Haiyue <haiyue.wang@intel.com>; Vamsi Attunuru <vattunuru@marvell.com>;
> alex.williamson@redhat.com
> Cc: dev <dev@dpdk.org>; Thomas Monjalon <thomas@monjalon.net>; Jerin Jacob Kollanukkaran
> <jerinj@marvell.com>
> Subject: Re: [PATCH v6 0/2] support for VFIO-PCI VF token interface
> 
> Thanks a lot for working on this.
> 
> I can see the support on the kernel side has been pulled in what will be 5.7.
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2fb732b33b0f4d73f391066c
> 0a970b942c600dab
> 
> I'd like to get the dpdk support in 20.05, but for this, can I have a
> summary of the kernel discussions?
> Is there anything missing/still wip in the kernel?
> 
> 
> On the series itself, I did not look in detail, but there is no
> documentation on how to use the feature.
> We are missing a release note update.

If needed in 20.05, I can add it in release note. And about how to,
I just added it in commit message, and some comments in the API
' rte_vfio_setup_device '.

Not sure which document part is reasonable for adding this, any good
suggestion ?


> And a small comment on the last changes:
> 
> On Tue, Apr 14, 2020 at 5:26 AM Haiyue Wang <haiyue.wang@intel.com> wrote:
> >
> > v6: Drop the Fixes tag in uuid, since the file has been
> >     moved to another place, not suitable to apply on stable.
> 
> This is *not* a reason to drop the Fixes: tag.
> Hopefully, we still fix bugs once files have been moved.
> 

OK, will add the tag later.

> >     And this is not a bug, just some kind of enhancement.
> 
> But on this point, I suppose this is ok not to backport.
> 
> 
> --
> David Marchand
  
Thomas Monjalon April 18, 2020, 9:50 a.m. UTC | #4
18/04/2020 11:38, Wang, Haiyue:
> From: David Marchand <david.marchand@redhat.com>
> > On the series itself, I did not look in detail, but there is no
> > documentation on how to use the feature.
> > We are missing a release note update.
> 
> If needed in 20.05, I can add it in release note. And about how to,
> I just added it in commit message, and some comments in the API
> ' rte_vfio_setup_device '.
> 
> Not sure which document part is reasonable for adding this, any good
> suggestion ?

Here: http://doc.dpdk.org/guides/linux_gsg/linux_drivers.html#vfio
  
Wang, Haiyue April 18, 2020, 9:58 a.m. UTC | #5
> -----Original Message-----
> From: Thomas Monjalon <thomas@monjalon.net>
> Sent: Saturday, April 18, 2020 17:50
> To: David Marchand <david.marchand@redhat.com>; Vamsi Attunuru <vattunuru@marvell.com>;
> alex.williamson@redhat.com; Wang, Haiyue <haiyue.wang@intel.com>
> Cc: dev <dev@dpdk.org>; Jerin Jacob Kollanukkaran <jerinj@marvell.com>
> Subject: Re: [PATCH v6 0/2] support for VFIO-PCI VF token interface
> 
> 18/04/2020 11:38, Wang, Haiyue:
> > From: David Marchand <david.marchand@redhat.com>
> > > On the series itself, I did not look in detail, but there is no
> > > documentation on how to use the feature.
> > > We are missing a release note update.
> >
> > If needed in 20.05, I can add it in release note. And about how to,
> > I just added it in commit message, and some comments in the API
> > ' rte_vfio_setup_device '.
> >
> > Not sure which document part is reasonable for adding this, any good
> > suggestion ?
> 
> Here: http://doc.dpdk.org/guides/linux_gsg/linux_drivers.html#vfio
> 
>

OK.