> -----Original Message----- > From: Singh, Aman Deep <aman.deep.si...@intel.com> > Sent: Thursday, November 17, 2022 8:30 PM > To: Hanumanth Reddy Pothula <hpoth...@marvell.com>; Yuying Zhang > <yuying.zh...@intel.com> > Cc: dev@dpdk.org; andrew.rybche...@oktetlabs.ru; > tho...@monjalon.net; -yux.ji...@intel.com; Jerin Jacob Kollanukkaran > <jer...@marvell.com>; Nithin Kumar Dabilpuram > <ndabilpu...@marvell.com> > Subject: [EXT] Re: [PATCH v2 1/1] app/testpmd: add valid check to verify > multi mempool feature > > External Email > > ---------------------------------------------------------------------- > > > 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 <hpoth...@marvell.com> > > Tested-by: Aman Singh <aman.deep.si...@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)" > Sure, will simplify the condition.
> > ((rx_conf->offloads & RTE_ETH_RX_OFFLOAD_BUFFER_SPLIT) != > 0))) { > > /* Single pool/segment configuration */ > > rx_conf->rx_seg = NULL;