[PATCH v2 1/1] ethdev: support congestion management
Thomas Monjalon
thomas at monjalon.net
Tue Sep 27 16:36:18 CEST 2022
19/09/2022 14:15, skori at marvell.com:
> From: Jerin Jacob <jerinj at 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.
>
> This patch adds 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.
[...]
> doc/guides/nics/features.rst | 12 +++
> doc/guides/nics/features/default.ini | 1 +
> lib/eal/include/meson.build | 1 +
> lib/eal/include/rte_cman.h | 55 ++++++++++
> lib/ethdev/ethdev_driver.h | 25 +++++
> lib/ethdev/meson.build | 1 +
> lib/ethdev/rte_cman.c | 101 ++++++++++++++++++
> lib/ethdev/rte_ethdev.h | 151 +++++++++++++++++++++++++++
> lib/ethdev/version.map | 6 ++
I feel EAL is not the right place for CMAN definitions.
After a discussion with Jerin, I understand we could use
the same definitions in other API classes, not only ethdev.
However I think this .h file should be better hosted in
lib/ethdev/ with its own namespace rte_cman.
Then other libs could include this rte_cman.h
without having a strong dependency on ethdev.
Deal?
More information about the dev
mailing list