On 2/15/2023 6:25 AM, Rakesh Kudurumalla wrote: > Introduce new flow action to skip congestion management configuration > This feature helps to skip the congestion management processing > based on per flow or the packet color identified by > rte_flow meter object. For example, If one Rx queue configured as > RED congestion and application wants tobypass the RED congestion > processing for all GREEN color packet can be expressed though > RTE_FLOW_ACTION_TYPE_SKIP_CMAN flow action > > Signed-off-by: Rakesh Kudurumalla <rkuduruma...@marvell.com> > Acked-by: Ori Kam <or...@nvidia.com> > Acked-by: Jerin Jacob <jer...@marvell.com> > --- > v9: Distributed doc updates to relevant patches > > doc/guides/nics/features/default.ini | 1 + > doc/guides/prog_guide/rte_flow.rst | 22 ++++++++++++++++++++++ > doc/guides/rel_notes/release_23_03.rst | 6 ++++++ > lib/ethdev/rte_flow.h | 11 +++++++++++ > 4 files changed, 40 insertions(+) > > diff --git a/doc/guides/nics/features/default.ini > b/doc/guides/nics/features/default.ini > index 510cc6679d..b93f053a2b 100644 > --- a/doc/guides/nics/features/default.ini > +++ b/doc/guides/nics/features/default.ini > @@ -198,6 +198,7 @@ set_tag = > set_tp_dst = > set_tp_src = > set_ttl = > +skip_cman = > vf = > vxlan_decap = > vxlan_encap = > diff --git a/doc/guides/prog_guide/rte_flow.rst > b/doc/guides/prog_guide/rte_flow.rst > index 3e6242803d..4efadcc87b 100644 > --- a/doc/guides/prog_guide/rte_flow.rst > +++ b/doc/guides/prog_guide/rte_flow.rst > @@ -1840,6 +1840,28 @@ Drop packets. > | no properties | > +---------------+ > > + > +Action: ``SKIP_CMAN`` > +^^^^^^^^^^^^^^^^^^^^^ > + > +Skip congestion management on received packets > + > +- Using ``rte_eth_cman_config_set()``, application can configure ethdev Rx > + queue's congestion mechanism.Once applied packets congestion configuration > + is bypassed on that particular ethdev Rx queue for all packets directed > + to that receive queue > + > +.. _table_rte_flow_action_skip_cman: > + > +.. table:: SKIP_CMAN > + > + +---------------+ > + | Field | > + +===============+ > + | no properties | > + +---------------+ > + > + > Action: ``COUNT`` > ^^^^^^^^^^^^^^^^^ > > diff --git a/doc/guides/rel_notes/release_23_03.rst > b/doc/guides/rel_notes/release_23_03.rst > index bf90feba68..1dd10e26db 100644 > --- a/doc/guides/rel_notes/release_23_03.rst > +++ b/doc/guides/rel_notes/release_23_03.rst > @@ -60,6 +60,12 @@ New Features > Added lock annotations attributes so that clang can statically analyze lock > correctness. > > +* **Added support to skip congestion management configuration.** > + > + Added a new action ``RTE_FLOW_ACTION_TYPE_SKIP_CMAN`` to skip > + congestion management processing based on per flow or packet color > + identified by rte_flow meter object > +
Can you please rebase on next-net [1], there you will see other flow API entries? [1] https://dpdk.org/git/next/dpdk-next-net > * **Updated AMD axgbe driver.** > > * Added multi-process support. > diff --git a/lib/ethdev/rte_flow.h b/lib/ethdev/rte_flow.h > index b60987db4b..6ab632df9d 100644 > --- a/lib/ethdev/rte_flow.h > +++ b/lib/ethdev/rte_flow.h > @@ -2736,6 +2736,17 @@ enum rte_flow_action_type { > * No associated configuration structure. > */ > RTE_FLOW_ACTION_TYPE_SEND_TO_KERNEL, > + > + /** > + * Skip congestion management configuration > + * > + * Using rte_eth_cman_config_set() API the application > + * can configure ethdev Rx queue's congestion mechanism. > + * Introducing RTE_FLOW_ACTION_TYPE_SKIP_CMAN flow action to skip the > + * congestion configuration applied to the given ethdev Rx queue. > + * > + */ > + RTE_FLOW_ACTION_TYPE_SKIP_CMAN, > }; > > /**