[v2,0/6] add flow shared action API + PMD
mbox series

Message ID 20200708213946.30108-1-andreyv@mellanox.com
Headers show
Series
  • add flow shared action API + PMD
Related show

Message

Andrey Vesnovaty July 8, 2020, 9:39 p.m. UTC
Hi Jerin and Ori.

V2 changes:
- First version of PMD implementation for shared action API.
- Simple example application demonstaration shared action update.
- Changes to shred action API according to discussion of V1.

@Jerin Jacob: please take a look at provided example, hopefully it
will help to converge our API discussion and reach consensus on it.

Thanks,
Andrey

Andrey Vesnovaty (6):
  ethdev: add flow shared action API
  common/mlx5: modify advanced Rx object via DevX
  net/mlx5: modify hash Rx queue objects
  net/mlx5: shared action PMD
  net/mlx5: driver support for shared action
  examples/flow_filtering: utilize shared RSS action

 doc/guides/sample_app_ug/flow_filtering.rst   |  62 +-
 drivers/common/mlx5/mlx5_devx_cmds.c          |  84 +++
 drivers/common/mlx5/mlx5_devx_cmds.h          |  10 +
 drivers/common/mlx5/mlx5_prm.h                |  29 +
 .../common/mlx5/rte_common_mlx5_version.map   |   1 +
 drivers/net/mlx5/mlx5.c                       |   1 +
 drivers/net/mlx5/mlx5.h                       |   2 +
 drivers/net/mlx5/mlx5_defs.h                  |   3 +
 drivers/net/mlx5/mlx5_flow.c                  | 492 ++++++++++++-
 drivers/net/mlx5/mlx5_flow.h                  |  83 +++
 drivers/net/mlx5/mlx5_flow_dv.c               | 671 +++++++++++++++++-
 drivers/net/mlx5/mlx5_rxq.c                   | 300 ++++++--
 drivers/net/mlx5/mlx5_rxtx.h                  |   4 +
 examples/flow_filtering/flow_blocks.c         |  30 +-
 examples/flow_filtering/main.c                |  41 +-
 lib/librte_ethdev/rte_ethdev_version.map      |   6 +
 lib/librte_ethdev/rte_flow.c                  |  81 +++
 lib/librte_ethdev/rte_flow.h                  | 148 +++-
 lib/librte_ethdev/rte_flow_driver.h           |  22 +
 19 files changed, 1924 insertions(+), 146 deletions(-)

Comments

Jerin Jacob July 9, 2020, 4:39 a.m. UTC | #1
On Thu, Jul 9, 2020 at 3:09 AM Andrey Vesnovaty <andreyv@mellanox.com> wrote:
>
> Hi Jerin and Ori.
>
> V2 changes:
> - First version of PMD implementation for shared action API.
> - Simple example application demonstaration shared action update.
> - Changes to shred action API according to discussion of V1.
>
> @Jerin Jacob: please take a look at provided example, hopefully it
> will help to converge our API discussion and reach consensus on it.

I am sorry, Based on my understanding it is not addressing API sequence query[1]


[1]
---
http://mails.dpdk.org/archives/dev/2020-July/173997.html
ie.

Otherway to ask is, Could you have share the API call sequence using
"rte_flow_shared_action_update(uint16_port port, rte_shared_ctx *ctx,
rte_flow_action *action, error)"

to enable support for the following category of HW as I mentioned earlier.
- The HW has "pattern" and "action" mapped to different HW objects and
action can be updated any time without destroying and create.(a,k,a
Does not have shared HW object)


---


>
> Thanks,
> Andrey
>
> Andrey Vesnovaty (6):
>   ethdev: add flow shared action API
>   common/mlx5: modify advanced Rx object via DevX
>   net/mlx5: modify hash Rx queue objects
>   net/mlx5: shared action PMD
>   net/mlx5: driver support for shared action
>   examples/flow_filtering: utilize shared RSS action
>
>  doc/guides/sample_app_ug/flow_filtering.rst   |  62 +-
>  drivers/common/mlx5/mlx5_devx_cmds.c          |  84 +++
>  drivers/common/mlx5/mlx5_devx_cmds.h          |  10 +
>  drivers/common/mlx5/mlx5_prm.h                |  29 +
>  .../common/mlx5/rte_common_mlx5_version.map   |   1 +
>  drivers/net/mlx5/mlx5.c                       |   1 +
>  drivers/net/mlx5/mlx5.h                       |   2 +
>  drivers/net/mlx5/mlx5_defs.h                  |   3 +
>  drivers/net/mlx5/mlx5_flow.c                  | 492 ++++++++++++-
>  drivers/net/mlx5/mlx5_flow.h                  |  83 +++
>  drivers/net/mlx5/mlx5_flow_dv.c               | 671 +++++++++++++++++-
>  drivers/net/mlx5/mlx5_rxq.c                   | 300 ++++++--
>  drivers/net/mlx5/mlx5_rxtx.h                  |   4 +
>  examples/flow_filtering/flow_blocks.c         |  30 +-
>  examples/flow_filtering/main.c                |  41 +-
>  lib/librte_ethdev/rte_ethdev_version.map      |   6 +
>  lib/librte_ethdev/rte_flow.c                  |  81 +++
>  lib/librte_ethdev/rte_flow.h                  | 148 +++-
>  lib/librte_ethdev/rte_flow_driver.h           |  22 +
>  19 files changed, 1924 insertions(+), 146 deletions(-)
>
> --
> 2.26.2
>