mbox series

[RFC,0/1] net/af_xdp: shared UMEM support

Message ID 20200811095017.2682-1-ciara.loftus@intel.com (mailing list archive)
Headers
Series net/af_xdp: shared UMEM support |

Message

Loftus, Ciara Aug. 11, 2020, 9:50 a.m. UTC
  This RFC integrates shared UMEM support into the AF_XDP PMD. It is based on the
WIP kernel series [1] by Magnus Karlsson.

Detailed information on the shared UMEM feature can be found in the final patch
in the aforementioned series.

Support for the kernel feature can eventually be detected in DPDK by querying
the LINUX_KERNEL_VERSION. As of now the feature is not yet merged upstream, so
for this RFC it is assumed the user is using a patched version of v5.8.

Shared UMEM is only available for zero copy mode.

In order to share UMEM information between PMDs, the ethdevs wishing to share
must be tracked somehow. The method chosen to do so is similar to methods used
in the vHost [2] and vDPA drivers, where pointers to the ethdevs are maintained
in an internal list. Proposals for alternate solutions are welcome.

Performance data to follow with the v1.

[1] https://patchwork.ozlabs.org/project/netdev/cover/1595307848-20719-1-git-send-email-magnus.karlsson@intel.com/
[2] https://git.dpdk.org/dpdk/commit/?id=ee584e9710b9abd60ee9faef664e106dcea10085

Ciara Loftus (1):
  net/af_xdp: shared UMEM support

 doc/guides/nics/af_xdp.rst          |   5 +-
 drivers/net/af_xdp/rte_eth_af_xdp.c | 315 ++++++++++++++++++++++------
 2 files changed, 252 insertions(+), 68 deletions(-)
  

Comments

Ferruh Yigit Aug. 25, 2020, 12:14 p.m. UTC | #1
On 8/11/2020 10:50 AM, Ciara Loftus wrote:
> This RFC integrates shared UMEM support into the AF_XDP PMD. It is based on the
> WIP kernel series [1] by Magnus Karlsson.
> 
> Detailed information on the shared UMEM feature can be found in the final patch
> in the aforementioned series.
> 
> Support for the kernel feature can eventually be detected in DPDK by querying
> the LINUX_KERNEL_VERSION. As of now the feature is not yet merged upstream, so
> for this RFC it is assumed the user is using a patched version of v5.8.

Hi Ciara,

I don't see this feature in kernel in 5.9.0-rc2, is there any update in the
kernel side?

> 
> Shared UMEM is only available for zero copy mode.
> 
> In order to share UMEM information between PMDs, the ethdevs wishing to share
> must be tracked somehow. The method chosen to do so is similar to methods used
> in the vHost [2] and vDPA drivers, where pointers to the ethdevs are maintained
> in an internal list. Proposals for alternate solutions are welcome.
> 
> Performance data to follow with the v1.
> 
> [1] https://patchwork.ozlabs.org/project/netdev/cover/1595307848-20719-1-git-send-email-magnus.karlsson@intel.com/
> [2] https://git.dpdk.org/dpdk/commit/?id=ee584e9710b9abd60ee9faef664e106dcea10085
> 
> Ciara Loftus (1):
>   net/af_xdp: shared UMEM support
> 
>  doc/guides/nics/af_xdp.rst          |   5 +-
>  drivers/net/af_xdp/rte_eth_af_xdp.c | 315 ++++++++++++++++++++++------
>  2 files changed, 252 insertions(+), 68 deletions(-)
>
  
Loftus, Ciara Aug. 26, 2020, 7:45 a.m. UTC | #2
> 
> On 8/11/2020 10:50 AM, Ciara Loftus wrote:
> > This RFC integrates shared UMEM support into the AF_XDP PMD. It is
> based on the
> > WIP kernel series [1] by Magnus Karlsson.
> >
> > Detailed information on the shared UMEM feature can be found in the final
> patch
> > in the aforementioned series.
> >
> > Support for the kernel feature can eventually be detected in DPDK by
> querying
> > the LINUX_KERNEL_VERSION. As of now the feature is not yet merged
> upstream, so
> > for this RFC it is assumed the user is using a patched version of v5.8.
> 
> Hi Ciara,
> 
> I don't see this feature in kernel in 5.9.0-rc2, is there any update in the
> kernel side?

Hi Ferruh,

Some performance quirks have been identified with the latest version of the kernel patch.
Once those are resolved we should expect a new revision, hopefully within the 5.9 window.

Thanks,
Ciara

> 
> >
> > Shared UMEM is only available for zero copy mode.
> >
> > In order to share UMEM information between PMDs, the ethdevs wishing
> to share
> > must be tracked somehow. The method chosen to do so is similar to
> methods used
> > in the vHost [2] and vDPA drivers, where pointers to the ethdevs are
> maintained
> > in an internal list. Proposals for alternate solutions are welcome.
> >
> > Performance data to follow with the v1.
> >
> > [1] https://patchwork.ozlabs.org/project/netdev/cover/1595307848-
> 20719-1-git-send-email-magnus.karlsson@intel.com/
> > [2]
> https://git.dpdk.org/dpdk/commit/?id=ee584e9710b9abd60ee9faef664e106
> dcea10085
> >
> > Ciara Loftus (1):
> >   net/af_xdp: shared UMEM support
> >
> >  doc/guides/nics/af_xdp.rst          |   5 +-
> >  drivers/net/af_xdp/rte_eth_af_xdp.c | 315 ++++++++++++++++++++++--
> ----
> >  2 files changed, 252 insertions(+), 68 deletions(-)
> >