mbox series

[v3,00/10] net/sfc: add support for tunnel offload

Message ID 20211013002415.24453-1-ivan.malov@oktetlabs.ru (mailing list archive)
Headers
Series net/sfc: add support for tunnel offload |

Message

Ivan Malov Oct. 13, 2021, 12:24 a.m. UTC
  The first 6 patches comprise the fundamental part of the series.
They are trying to be future-proof with respect to the planned
HW/FW changes. 4 more patches form the adaptation part of some
sort to make the offload work on the currently available HW/FW.

This patch series should be applied on top of another patch
series named "A means to negotiate delivery of Rx meta data":
https://patches.dpdk.org/project/dpdk/list/?series=19373

Changes in v2:
* Rebase on top of v4 of the above mentioned patch series

Changes in v3:
* Rebase as per request by Ferruh Yigit

Ivan Malov (10):
  net/sfc: fence off 8 bits in Rx mark for tunnel offload
  common/sfc_efx/base: add API to set RECIRC ID in outer rules
  net/sfc: support JUMP flows in tunnel offload
  common/sfc_efx/base: add RECIRC ID match in action rules API
  net/sfc: support GROUP flows in tunnel offload
  net/sfc: implement control path operations in tunnel offload
  net/sfc: override match on ETH in tunnel offload JUMP rules
  net/sfc: use action rules in tunnel offload JUMP rules
  net/sfc: support counters in tunnel offload JUMP rules
  net/sfc: refine pattern of GROUP flows in tunnel offload

 drivers/common/sfc_efx/base/efx.h      |  22 ++
 drivers/common/sfc_efx/base/efx_impl.h |   1 +
 drivers/common/sfc_efx/base/efx_mae.c  |  60 +++-
 drivers/common/sfc_efx/version.map     |   2 +
 drivers/net/sfc/meson.build            |   1 +
 drivers/net/sfc/sfc.h                  |   3 +
 drivers/net/sfc/sfc_dp.c               |  47 +++
 drivers/net/sfc/sfc_dp.h               |   9 +
 drivers/net/sfc/sfc_dp_rx.h            |   3 +
 drivers/net/sfc/sfc_ef100_rx.c         |  26 +-
 drivers/net/sfc/sfc_ethdev.c           |   4 +
 drivers/net/sfc/sfc_flow.c             |  53 ++-
 drivers/net/sfc/sfc_flow.h             |  14 +
 drivers/net/sfc/sfc_flow_tunnel.c      | 480 +++++++++++++++++++++++++
 drivers/net/sfc/sfc_flow_tunnel.h      | 117 ++++++
 drivers/net/sfc/sfc_mae.c              | 472 +++++++++++++++++++++---
 drivers/net/sfc/sfc_mae.h              |  12 +
 drivers/net/sfc/sfc_mae_counter.c      |  41 ++-
 drivers/net/sfc/sfc_mae_counter.h      |   3 +
 drivers/net/sfc/sfc_rx.c               |  10 +-
 20 files changed, 1310 insertions(+), 70 deletions(-)
 create mode 100644 drivers/net/sfc/sfc_flow_tunnel.c
 create mode 100644 drivers/net/sfc/sfc_flow_tunnel.h
  

Comments

Ferruh Yigit Oct. 13, 2021, 10:42 a.m. UTC | #1
On 10/13/2021 1:24 AM, Ivan Malov wrote:
> The first 6 patches comprise the fundamental part of the series.
> They are trying to be future-proof with respect to the planned
> HW/FW changes. 4 more patches form the adaptation part of some
> sort to make the offload work on the currently available HW/FW.
> 
> This patch series should be applied on top of another patch
> series named "A means to negotiate delivery of Rx meta data":
> https://patches.dpdk.org/project/dpdk/list/?series=19373
> 
> Changes in v2:
> * Rebase on top of v4 of the above mentioned patch series
> 
> Changes in v3:
> * Rebase as per request by Ferruh Yigit
> 
> Ivan Malov (10):
>    net/sfc: fence off 8 bits in Rx mark for tunnel offload
>    common/sfc_efx/base: add API to set RECIRC ID in outer rules
>    net/sfc: support JUMP flows in tunnel offload
>    common/sfc_efx/base: add RECIRC ID match in action rules API
>    net/sfc: support GROUP flows in tunnel offload
>    net/sfc: implement control path operations in tunnel offload
>    net/sfc: override match on ETH in tunnel offload JUMP rules
>    net/sfc: use action rules in tunnel offload JUMP rules
>    net/sfc: support counters in tunnel offload JUMP rules
>    net/sfc: refine pattern of GROUP flows in tunnel offload
> 

Hi Ivan,

Two check scripts are failing, can you please check them:

1.
$ ./devtools/check-doc-vs-code.sh
rte_flow doc out of sync for sfc
         item mark
         action jump


2.
$ ./devtools/check-meson.py
Error: Incorrect indent at drivers/net/sfc/meson.build:93
  
Ferruh Yigit Oct. 13, 2021, 10:45 a.m. UTC | #2
On 10/13/2021 1:24 AM, Ivan Malov wrote:
> The first 6 patches comprise the fundamental part of the series.
> They are trying to be future-proof with respect to the planned
> HW/FW changes. 4 more patches form the adaptation part of some
> sort to make the offload work on the currently available HW/FW.
> 
> This patch series should be applied on top of another patch
> series named "A means to negotiate delivery of Rx meta data":
> https://patches.dpdk.org/project/dpdk/list/?series=19373
> 
> Changes in v2:
> * Rebase on top of v4 of the above mentioned patch series
> 
> Changes in v3:
> * Rebase as per request by Ferruh Yigit
> 
> Ivan Malov (10):
>    net/sfc: fence off 8 bits in Rx mark for tunnel offload
>    common/sfc_efx/base: add API to set RECIRC ID in outer rules
>    net/sfc: support JUMP flows in tunnel offload
>    common/sfc_efx/base: add RECIRC ID match in action rules API
>    net/sfc: support GROUP flows in tunnel offload
>    net/sfc: implement control path operations in tunnel offload
>    net/sfc: override match on ETH in tunnel offload JUMP rules
>    net/sfc: use action rules in tunnel offload JUMP rules
>    net/sfc: support counters in tunnel offload JUMP rules
>    net/sfc: refine pattern of GROUP flows in tunnel offload
> 

The flow API action/pattern names are uppercase in the patch title,
but I remember Thomas is converting them to lowercase in the main repo.

@Thomas, @Ori, what is the preferred syntax in the patch title?
  
Thomas Monjalon Oct. 13, 2021, 10:55 a.m. UTC | #3
13/10/2021 12:45, Ferruh Yigit:
> On 10/13/2021 1:24 AM, Ivan Malov wrote:
> > The first 6 patches comprise the fundamental part of the series.
> > They are trying to be future-proof with respect to the planned
> > HW/FW changes. 4 more patches form the adaptation part of some
> > sort to make the offload work on the currently available HW/FW.
> > 
> > This patch series should be applied on top of another patch
> > series named "A means to negotiate delivery of Rx meta data":
> > https://patches.dpdk.org/project/dpdk/list/?series=19373
> > 
> > Changes in v2:
> > * Rebase on top of v4 of the above mentioned patch series
> > 
> > Changes in v3:
> > * Rebase as per request by Ferruh Yigit
> > 
> > Ivan Malov (10):
> >    net/sfc: fence off 8 bits in Rx mark for tunnel offload
> >    common/sfc_efx/base: add API to set RECIRC ID in outer rules
> >    net/sfc: support JUMP flows in tunnel offload
> >    common/sfc_efx/base: add RECIRC ID match in action rules API
> >    net/sfc: support GROUP flows in tunnel offload
> >    net/sfc: implement control path operations in tunnel offload
> >    net/sfc: override match on ETH in tunnel offload JUMP rules
> >    net/sfc: use action rules in tunnel offload JUMP rules
> >    net/sfc: support counters in tunnel offload JUMP rules
> >    net/sfc: refine pattern of GROUP flows in tunnel offload
> > 
> 
> The flow API action/pattern names are uppercase in the patch title,
> but I remember Thomas is converting them to lowercase in the main repo.
> 
> @Thomas, @Ori, what is the preferred syntax in the patch title?

Why is it uppercase? I think uppercase is for acronyms.