> -----Original Message-----
> From: Andrew Rybchenko <andrew.rybche...@oktetlabs.ru>
> Sent: Tuesday, October 4, 2022 2:33 PM
> To: Ferruh Yigit <ferruh.yi...@amd.com>; Thomas Monjalon
> <tho...@monjalon.net>; Ray Kinsella <m...@ashroe.eu>
> Cc: dev@dpdk.org; Jerin Jacob Kollanukkaran <jer...@marvell.com>; Sunil
> Kumar Kori <sk...@marvell.com>
> Subject: [EXT] [PATCH v4] ethdev: support congestion management
> 
> External Email
> 
> ----------------------------------------------------------------------
> From: Jerin Jacob <jer...@marvell.com>
> 
> NIC HW controllers often come with congestion management support on
> various HW objects such as Rx queue depth or mempool queue depth.
> 
> Also, it can support various modes of operation such as RED (Random early
> discard), WRED etc on those HW objects.
> 
> Add a framework to express such modes(enum rte_cman_mode) and
> introduce (enum rte_eth_cman_obj) to enumerate the different objects
> where the modes can operate on.
> 
> Add RTE_CMAN_RED mode of operation and
> RTE_ETH_CMAN_OBJ_RX_QUEUE,
> RTE_ETH_CMAN_OBJ_RX_QUEUE_MEMPOOL objects.
> 
> Introduce reserved fields in configuration structure backed by
> rte_eth_cman_config_init() to add new configuration parameters without
> ABI breakage.
> 
> Add rte_eth_cman_info_get() API to get the information such as supported
> modes and objects.
> 
> Add rte_eth_cman_config_init(), rte_eth_cman_config_set() APIs to
> configure congestion management on those object with associated mode.
> 
> Finally, add rte_eth_cman_config_get() API to retrieve the applied
> configuration.
> 
> Signed-off-by: Jerin Jacob <jer...@marvell.com>
> Signed-off-by: Sunil Kumar Kori <sk...@marvell.com>
> Signed-off-by: Andrew Rybchenko <andrew.rybche...@oktetlabs.ru>
> ---
> v3..v4: Andrew Rybchenko
>  - rebase
>  - remove eth_check_err() and use eth_err() instead
>  - minor fixes in description to avoid "This patch" and "Added".
>  - correct position in release notes
> v2..v3:
>  - Rename rte_cman.c to rte_ethdev_cman.c
>  - Move lib/eal/include/rte_cman.h to lib/ethdev/rte_cman.h
>  - Fix review comments (Andrew Rybchenko)
>  - Add release notes
> 
> v1..v2:
>  - Fix review comments (Akhil Goyal)
> 
> rfc..v1:
>  - Added RED specification
> (https://urldefense.proofpoint.com/v2/url?u=http-
> 3A__www.aciri.org_floyd_papers_red_red.html&d=DwIDAg&c=nKjWec2b6R
> 0mOyPaz7xtfQ&r=dXeXaAMkP5COgn1zxHMyaF1_d9IIuq6vHQO6NrIPjaE&m=
> cfAKlvyly-
> kCcVREQz1PWXyTolJrljsQUlj1VPUP5Y3GmvOpjvj66NNuJgv8sAYy&s=Ku1odzug
> BjIDA-mJnbb5p6GViFoSxYlzqBr4RshwYtg&e=  ) link
>  - Fixed doxygen comment issue (Min Hu)
> 
>  doc/guides/nics/features.rst           |  12 ++
>  doc/guides/nics/features/default.ini   |   1 +
>  doc/guides/rel_notes/release_22_11.rst |   6 +
>  lib/ethdev/ethdev_driver.h             |  25 ++++
>  lib/ethdev/ethdev_private.h            |   3 +
>  lib/ethdev/meson.build                 |   2 +
>  lib/ethdev/rte_cman.h                  |  55 +++++++++
>  lib/ethdev/rte_ethdev.c                |   2 +-
>  lib/ethdev/rte_ethdev.h                | 164 +++++++++++++++++++++++++
>  lib/ethdev/rte_ethdev_cman.c           | 101 +++++++++++++++
>  lib/ethdev/version.map                 |   4 +
>  11 files changed, 374 insertions(+), 1 deletion(-)  create mode 100644
> lib/ethdev/rte_cman.h  create mode 100644 lib/ethdev/rte_ethdev_cman.c
> 


[snip]

> 2.30.2

Acked-by: Sunil Kumar Kori <sk...@marvell.com>

Reply via email to