On Wed, Jul 30, 2025 at 09:59:52AM +0200, Morten Brørup wrote: > Ethdev driver maintainers (CC: Ethdev API maintainers), > > Your ethdev drivers support RTE_ETH_TX_OFFLOAD_MBUF_FAST_FREE, and probably > call rte_mempool_put_bulk() in the mempool lib when FAST_FREE'ing mbufs, > thereby bypassing the mbuf lib. > The appropriate mbuf lib function is rte_mbuf_raw_free_bulk(), which is a > relatively new [1] inline function. > It's a simple wrapper calling rte_mempool_put_bulk(), with the addition of > performing mbuf sanity checks when the appropriate defines are enabled. > > In this context, "the appropriate defines" should be RTE_LIBRTE_MBUF_DEBUG > (and not also RTE_ENABLE_ASSERT), so I have provided a patch [2] to fix this. > > Similarly, the relatively new [1] inline function rte_mbuf_raw_alloc_bulk() > in the mbuf lib is a wrapper for rte_mempool_get_bulk() in the mempool lib, > with added sanity checks (when the appropriate defines are enabled). > > Request 1: Please consider changing your driver to call > rte_mbuf_raw_free_bulk() instead of rte_mempool_put_bulk() when FAST_FREE'ing > mbufs. > > Request 2: Please consider changing your driver to call > rte_mbuf_raw_alloc_bulk() instead of rte_mempool_get_bulk() when allocating > mbufs. > For Intel drivers: https://patches.dpdk.org/project/dpdk/list/?series=35995
/Bruce