[v14,0/3] net/af_xdp: fix multi interface support for K8s

Message ID 20240408130924.232154-1-mtahhan@redhat.com (mailing list archive)
Headers
Series net/af_xdp: fix multi interface support for K8s |

Message

Maryam Tahhan April 8, 2024, 1:09 p.m. UTC
  The original `use_cni` implementation was limited to
supporting only a single netdev in a DPDK pod. This patchset
aims to fix this limitation transparently to the end user.
It will also enable compatibility with the latest AF_XDP
Device Plugin.

Signed-off-by: Maryam Tahhan <mtahhan@redhat.com>
---
v14:
* Fixup bpf_map_update_elem() in compat.h to use xsk fd as the
  third argument.

v13:
* Fixup checkpatch issues.

v12:
* Ensure backwards compability with libbpf versions that don't support
  xsk_socket__update_xskmap().

v11:
* Fixed up typos picked up by checkpatch.

v10:
* Add UDS acronym
* Update `use_cni` in docs with ``use_cni``
* Remove reference to limitations and simply document behaviour
  before and after DPDK 23.11.

v9:
* Fixup checkpatch issues.

v8:
* Go back to using `use_cni` vdev argument
* Introduce `use_map_pinning` vdev param.
* Rename `uds_path` to `dp_path` so that it can be used
  with map pinning as well as `use_cni`.
* Set `dp_path` internally in the AF_XDP PMD if it's
  not configured by the user.
* Clean up the original `use_cni` documentation separately
  to coding changes.

v7:
* Give a more descriptive commit msg headline.
* Fixup typos in documentation.

v6:
* Add link to PR 81 in commit message
* Add release notes changes to this patchset

v5:
* Fix alignment for ETH_AF_XDP_USE_DP_UDS_PATH_ARG
* Remove use_cni references in af_xdp.rst

v4:
* Rename af_xdp_cni.rst to af_xdp_dp.rst
* Removed all incorrect references to CNI throughout af_xdp
  PMD file.
* Fixed Typos in af_xdp_dp.rst

v3:
* Remove `use_cni` vdev argument as it's no longer needed.
* Update incorrect CNI references for the AF_XDP DP in the
  documentation.
* Update the documentation to run a simple example with the
  AF_XDP DP plugin in K8s.

v2:
* Rename sock_path to uds_path.
* Update documentation to reflect when CAP_BPF is needed.
* Fix testpmd arguments in the provided example for Pods.
* Use AF_XDP API to update the xskmap entry.
---

Maryam Tahhan (3):
  docs: AF_XDP Device Plugin
  net/af_xdp: fix multi interface support for K8s
  net/af_xdp: support AF_XDP DP pinned maps

 doc/guides/howto/af_xdp_cni.rst        | 253 ------------------
 doc/guides/howto/af_xdp_dp.rst         | 340 +++++++++++++++++++++++++
 doc/guides/howto/index.rst             |   2 +-
 doc/guides/nics/af_xdp.rst             |  44 +++-
 doc/guides/rel_notes/release_24_07.rst |  17 ++
 drivers/net/af_xdp/compat.h            |  15 ++
 drivers/net/af_xdp/meson.build         |   4 +
 drivers/net/af_xdp/rte_eth_af_xdp.c    | 170 +++++++++----
 8 files changed, 543 insertions(+), 302 deletions(-)
 delete mode 100644 doc/guides/howto/af_xdp_cni.rst
 create mode 100644 doc/guides/howto/af_xdp_dp.rst

--
2.41.0
  

Comments

Loftus, Ciara April 8, 2024, 1:19 p.m. UTC | #1
> 
> The original `use_cni` implementation was limited to
> supporting only a single netdev in a DPDK pod. This patchset
> aims to fix this limitation transparently to the end user.
> It will also enable compatibility with the latest AF_XDP
> Device Plugin.
> 
> Signed-off-by: Maryam Tahhan <mtahhan@redhat.com>

Thanks Maryam.

For the series,
Acked-by: Ciara Loftus <ciara.loftus@intel.com>

> ---
> v14:
> * Fixup bpf_map_update_elem() in compat.h to use xsk fd as the
>   third argument.
> 
> v13:
> * Fixup checkpatch issues.
> 
> v12:
> * Ensure backwards compability with libbpf versions that don't support
>   xsk_socket__update_xskmap().
> 
> v11:
> * Fixed up typos picked up by checkpatch.
> 
> v10:
> * Add UDS acronym
> * Update `use_cni` in docs with ``use_cni``
> * Remove reference to limitations and simply document behaviour
>   before and after DPDK 23.11.
> 
> v9:
> * Fixup checkpatch issues.
> 
> v8:
> * Go back to using `use_cni` vdev argument
> * Introduce `use_map_pinning` vdev param.
> * Rename `uds_path` to `dp_path` so that it can be used
>   with map pinning as well as `use_cni`.
> * Set `dp_path` internally in the AF_XDP PMD if it's
>   not configured by the user.
> * Clean up the original `use_cni` documentation separately
>   to coding changes.
> 
> v7:
> * Give a more descriptive commit msg headline.
> * Fixup typos in documentation.
> 
> v6:
> * Add link to PR 81 in commit message
> * Add release notes changes to this patchset
> 
> v5:
> * Fix alignment for ETH_AF_XDP_USE_DP_UDS_PATH_ARG
> * Remove use_cni references in af_xdp.rst
> 
> v4:
> * Rename af_xdp_cni.rst to af_xdp_dp.rst
> * Removed all incorrect references to CNI throughout af_xdp
>   PMD file.
> * Fixed Typos in af_xdp_dp.rst
> 
> v3:
> * Remove `use_cni` vdev argument as it's no longer needed.
> * Update incorrect CNI references for the AF_XDP DP in the
>   documentation.
> * Update the documentation to run a simple example with the
>   AF_XDP DP plugin in K8s.
> 
> v2:
> * Rename sock_path to uds_path.
> * Update documentation to reflect when CAP_BPF is needed.
> * Fix testpmd arguments in the provided example for Pods.
> * Use AF_XDP API to update the xskmap entry.
> ---
> 
> Maryam Tahhan (3):
>   docs: AF_XDP Device Plugin
>   net/af_xdp: fix multi interface support for K8s
>   net/af_xdp: support AF_XDP DP pinned maps
> 
>  doc/guides/howto/af_xdp_cni.rst        | 253 ------------------
>  doc/guides/howto/af_xdp_dp.rst         | 340 +++++++++++++++++++++++++
>  doc/guides/howto/index.rst             |   2 +-
>  doc/guides/nics/af_xdp.rst             |  44 +++-
>  doc/guides/rel_notes/release_24_07.rst |  17 ++
>  drivers/net/af_xdp/compat.h            |  15 ++
>  drivers/net/af_xdp/meson.build         |   4 +
>  drivers/net/af_xdp/rte_eth_af_xdp.c    | 170 +++++++++----
>  8 files changed, 543 insertions(+), 302 deletions(-)
>  delete mode 100644 doc/guides/howto/af_xdp_cni.rst
>  create mode 100644 doc/guides/howto/af_xdp_dp.rst
> 
> --
> 2.41.0
  
Ferruh Yigit April 18, 2024, 9:52 p.m. UTC | #2
Recheck-request: iol-unit-arm64-testing

On 4/8/2024 2:09 PM, Maryam Tahhan wrote:
> The original `use_cni` implementation was limited to
> supporting only a single netdev in a DPDK pod. This patchset
> aims to fix this limitation transparently to the end user.
> It will also enable compatibility with the latest AF_XDP
> Device Plugin.
> 
> Signed-off-by: Maryam Tahhan <mtahhan@redhat.com>
  
Ferruh Yigit April 19, 2024, 11 a.m. UTC | #3
On 4/8/2024 2:19 PM, Loftus, Ciara wrote:
>> The original `use_cni` implementation was limited to
>> supporting only a single netdev in a DPDK pod. This patchset
>> aims to fix this limitation transparently to the end user.
>> It will also enable compatibility with the latest AF_XDP
>> Device Plugin.
>>
>> Signed-off-by: Maryam Tahhan <mtahhan@redhat.com>
> Thanks Maryam.
> 
> For the series,
> Acked-by: Ciara Loftus <ciara.loftus@intel.com>
>

Series applied to dpdk-next-net/main, thanks.