> -----Original Message----- > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Piotr Azarewicz > Sent: Tuesday, October 11, 2016 12:07 PM > To: Trahe, Fiona <fiona.trahe at intel.com> > Cc: dev at dpdk.org > Subject: [dpdk-dev] [PATCH v2] app/test: fix crypto mbuf pool size > > This patch fix that created pool for crypto mbufs may be too big in some > environments. > To avoid the issue, mbuf pool is reverted to its previous size. > Moreover, here is added additional small pool with one large mbuf, what > is needed in large data test scenarios. > > Fixes: ffbe3be0d4b5 ("app/test: add libcrypto") > > Signed-off-by: Piotr Azarewicz <piotrx.t.azarewicz at intel.com> > --- > > v2 change: > - changed check if aad.len > MBUF_SIZE > - added assertion check for rte_pktmbuf_alloc > > app/test/test_cryptodev.c | 32 +++++++++++++++++++++++++++++--- > 1 file changed, 29 insertions(+), 3 deletions(-) > > diff --git a/app/test/test_cryptodev.c b/app/test/test_cryptodev.c > index 2917454..7d03899 100644 > --- a/app/test/test_cryptodev.c > +++ b/app/test/test_cryptodev.c > @@ -60,6 +60,7 @@ static enum rte_cryptodev_type gbl_cryptodev_type; > > struct crypto_testsuite_params { > struct rte_mempool *mbuf_pool; > + struct rte_mempool *large_mbuf_pool; > struct rte_mempool *op_mpool; > struct rte_cryptodev_config conf; > struct rte_cryptodev_qp_conf qp_conf; > @@ -169,7 +170,7 @@ testsuite_setup(void) > /* Not already created so create */ > ts_params->mbuf_pool = rte_pktmbuf_pool_create( > "CRYPTO_MBUFPOOL", > - NUM_MBUFS, MBUF_CACHE_SIZE, 0, > UINT16_MAX, > + NUM_MBUFS, MBUF_CACHE_SIZE, 0, > MBUF_SIZE, > rte_socket_id()); > if (ts_params->mbuf_pool == NULL) { > RTE_LOG(ERR, USER1, "Can't create > CRYPTO_MBUFPOOL\n"); > @@ -177,6 +178,21 @@ testsuite_setup(void) > } > } > > + ts_params->large_mbuf_pool = rte_mempool_lookup( > + "CRYPTO_LARGE_MBUFPOOL"); > + if (ts_params->large_mbuf_pool == NULL) { > + /* Not already created so create */ > + ts_params->large_mbuf_pool = rte_pktmbuf_pool_create( > + "CRYPTO_LARGE_MBUFPOOL", > + 1, 0, 0, UINT16_MAX, > + rte_socket_id()); > + if (ts_params->large_mbuf_pool == NULL) { > + RTE_LOG(ERR, USER1, > + "Can't create > CRYPTO_LARGE_MBUFPOOL\n"); > + return TEST_FAILED; > + } > + } > + > ts_params->op_mpool = rte_crypto_op_pool_create( > "MBUF_CRYPTO_SYM_OP_POOL", > RTE_CRYPTO_OP_TYPE_SYMMETRIC, > @@ -5149,7 +5165,12 @@ test_AES_GMAC_authentication(const struct > gmac_test_data *tdata) > if (retval < 0) > return retval; > > - ut_params->ibuf = rte_pktmbuf_alloc(ts_params->mbuf_pool); > + if (tdata->aad.len > MBUF_SIZE) > + ut_params->ibuf = rte_pktmbuf_alloc(ts_params- > >large_mbuf_pool); > + else > + ut_params->ibuf = rte_pktmbuf_alloc(ts_params- > >mbuf_pool); > + TEST_ASSERT_NOT_NULL(ut_params->ibuf, > + "Failed to allocate input buffer in mempool"); > > memset(rte_pktmbuf_mtod(ut_params->ibuf, uint8_t *), 0, > rte_pktmbuf_tailroom(ut_params->ibuf)); > @@ -5233,7 +5254,12 @@ test_AES_GMAC_authentication_verify(const > struct gmac_test_data *tdata) > if (retval < 0) > return retval; > > - ut_params->ibuf = rte_pktmbuf_alloc(ts_params->mbuf_pool); > + if (tdata->aad.len > MBUF_SIZE) > + ut_params->ibuf = rte_pktmbuf_alloc(ts_params- > >large_mbuf_pool); > + else > + ut_params->ibuf = rte_pktmbuf_alloc(ts_params- > >mbuf_pool); > + TEST_ASSERT_NOT_NULL(ut_params->ibuf, > + "Failed to allocate input buffer in mempool"); > > memset(rte_pktmbuf_mtod(ut_params->ibuf, uint8_t *), 0, > rte_pktmbuf_tailroom(ut_params->ibuf)); > -- > 1.7.9.5
Acked-by: Michal Jastrzebski <michalx.k.jastrzebski at intel.com>