[PATCH v2 1/1] app/testpmd: add valid check to verify multi mempool feature

Singh, Aman Deep aman.deep.singh at intel.com
Thu Nov 17 16:00:27 CET 2022



On 11/17/2022 6:25 PM, Hanumanth Pothula wrote:
> Validate ethdev parameter 'max_rx_mempools' to know wheater device
> supports multi-mempool feature or not.

Spell check: whether

> Bugzilla ID: 1128
>
> Signed-off-by: Hanumanth Pothula <hpothula at marvell.com>

Tested-by: Aman Singh <aman.deep.singh at intel.com>

> v2:
>   - Rebased on tip of next-net/main
> ---
>   app/test-pmd/testpmd.c | 8 +++++++-
>   1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c
> index 4e25f77c6a..fd634bd5e6 100644
> --- a/app/test-pmd/testpmd.c
> +++ b/app/test-pmd/testpmd.c
> @@ -2655,16 +2655,22 @@ rx_queue_setup(uint16_t port_id, uint16_t rx_queue_id,
>   	union rte_eth_rxseg rx_useg[MAX_SEGS_BUFFER_SPLIT] = {};
>   	struct rte_mempool *rx_mempool[MAX_MEMPOOL] = {};
>   	struct rte_mempool *mpx;
> +	struct rte_eth_dev_info dev_info;
>   	unsigned int i, mp_n;
>   	uint32_t prev_hdrs = 0;
>   	int ret;
>   
> +	ret = rte_eth_dev_info_get(port_id, &dev_info);
> +	if (ret != 0)
> +		return ret;
> +
>   	/* Verify Rx queue configuration is single pool and segment or
>   	 * multiple pool/segment.
> +	 * @see rte_eth_dev_info::max_rx_mempools
>   	 * @see rte_eth_rxconf::rx_mempools
>   	 * @see rte_eth_rxconf::rx_seg
>   	 */
> -	if (!(mbuf_data_size_n > 1) && !(rx_pkt_nb_segs > 1 ||
> +	if (!(dev_info.max_rx_mempools != 0) && !(rx_pkt_nb_segs > 1 ||

Can we make the check simpler "(dev_info.max_rx_mempools == 0)"

>   	    ((rx_conf->offloads & RTE_ETH_RX_OFFLOAD_BUFFER_SPLIT) != 0))) {
>   		/* Single pool/segment configuration */
>   		rx_conf->rx_seg = NULL;



More information about the dev mailing list