[dpdk-dev] [PATCH] mempool: introduce flag to indicate hw mempool

Hemant Agrawal hemant.agrawal at nxp.com
Mon Apr 3 11:12:09 CEST 2017

Hardware pools need to distinguish between buffers allocated using
software or hardware backed pools.

Some HW NICs may choose to autonomously free the pickets during
transmit if the packet is from HW pool. While they should not do
it for software backed pools.

Such flag would also help when multiple pools are being handled by
a PMD, saving costly compare operations for any internal marker.

Signed-off-by: Hemant Agrawal <hemant.agrawal at nxp.com>
 lib/librte_mempool/rte_mempool.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/lib/librte_mempool/rte_mempool.h b/lib/librte_mempool/rte_mempool.h
index 991feaa..91dbd21 100644
--- a/lib/librte_mempool/rte_mempool.h
+++ b/lib/librte_mempool/rte_mempool.h
@@ -263,6 +263,11 @@ struct rte_mempool {
 #define MEMPOOL_F_SC_GET         0x0008 /**< Default get is "single-consumer".*/
 #define MEMPOOL_F_POOL_CREATED   0x0010 /**< Internal: pool is created. */
 #define MEMPOOL_F_NO_PHYS_CONTIG 0x0020 /**< Don't need physically contiguous objs. */
+#define MEMPOOL_F_HW_POOL        (1 << ((sizeof(int) * 8) - 1)) /**< Internal:
+	* Hardware offloaded pool. This information may be used by the
+	* NIC or other hw. Some NICs autonomously free the HW backed pool packets. */
+/**< Don't need physically contiguous objs. */
  * @internal When debug is enabled, store some statistics.

More information about the dev mailing list