On 10/7/22 19:08, Thomas Monjalon wrote:
07/10/2022 16:37, Andrew Rybchenko:
@@ -1067,6 +1067,24 @@ struct rte_eth_rxconf {
         */
        union rte_eth_rxseg *rx_seg;
+ /**
+        * Array of mempools to allocate Rx buffers from.
+        *
+        * This provides support for multiple mbuf pools per Rx queue.
+        * The capability is reported in device info via positive
+        * max_rx_mempools.
+        *
+        * It could be useful for more efficient usage of memory when an
+        * application creates different mempools to steer the specific
+        * size of the packet.
+        *
+        * Note that if Rx scatter is enabled, a packet may be delivered using
+        * a chain of mbufs obtained from single mempool or multiple mempools
+        * based on the NIC implementation.
+        */
+       struct rte_mempool **rx_mempools;
+       uint16_t rx_nmempool; /** < Number of Rx mempools */

The commit message suggests a configuration per packet size.
I guess it is not configurable in ethdev API?
If it is hard-configured in the HW or the driver only,
it should be specified here.

See v8


[...]
+       /**
+        * Maximum number of Rx mempools supported per Rx queue.
+        *
+        * Value greater than 0 means that the driver supports Rx queue
+        * mempools specification via rx_conf->rx_mempools.
+        */
+       uint16_t max_rx_mempools;




Reply via email to