Skip to contentSkip to conversation

crypto/octeontx2: increase metabuf pool

PATCH Applied Anoob Joseph 2 participants 3 messages Jun 11, 2021 – Jun 29, 2021 Crypto API

lore
Share & tools
lore
#0 lore raw

PATCH 1/2 crypto/octeontx2: increase metabuf pool

When used with crypto adapter, metabuf pool would be shared across cores. Account for the same in pool size.

---
 drivers/crypto/octeontx2/otx2_cryptodev_ops.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)
drivers/crypto/octeontx2/otx2_cryptodev_ops.c +5 -3
index 0cf8e80..12a2747 100644
@@ -45,12 +45,12 @@ qp_memzone_name_get(char *name, int size, int dev_id, int qp_id)
 static int
 otx2_cpt_metabuf_mempool_create(const struct rte_cryptodev *dev,
 				struct otx2_cpt_qp *qp, uint8_t qp_id,
-				int nb_elements)
+				unsigned int nb_elements)
 {
 	char mempool_name[RTE_MEMPOOL_NAMESIZE];
 	struct cpt_qp_meta_info *meta_info;
+	int ret, max_mlen, mb_pool_sz;
 	struct rte_mempool *pool;
-	int ret, max_mlen;
 	int asym_mlen = 0;
 	int lb_mlen = 0;
 	int sg_mlen = 0;
@@ -87,7 +87,9 @@ otx2_cpt_metabuf_mempool_create(const struct rte_cryptodev *dev,
 	snprintf(mempool_name, RTE_MEMPOOL_NAMESIZE, "otx2_cpt_mb_%u:%u",
 		 dev->data->dev_id, qp_id);
 
-	pool = rte_mempool_create_empty(mempool_name, nb_elements, max_mlen,
+	mb_pool_sz = RTE_MAX(nb_elements, (METABUF_POOL_CACHE_SIZE * rte_lcore_count()));
+
+	pool = rte_mempool_create_empty(mempool_name, mb_pool_sz, max_mlen,
 					METABUF_POOL_CACHE_SIZE, 0,
 					rte_socket_id(), 0);
 
Signature · 1 line
2.7.4
#1 lore raw

PATCH 2/2 crypto/octeontx: increase metabuf pool

When used with crypto adapter, metabuf pool would be shared across cores. Account for the same in pool size.

---
 drivers/crypto/octeontx/otx_cryptodev_hw_access.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
drivers/crypto/octeontx/otx_cryptodev_hw_access.c +5 -2
index 5229e7c..ab335c6 100644
@@ -409,7 +409,7 @@ otx_cpt_deinit_device(void *dev)
 static int
 otx_cpt_metabuf_mempool_create(const struct rte_cryptodev *dev,
 			       struct cpt_instance *instance, uint8_t qp_id,
-			       int nb_elements)
+			       unsigned int nb_elements)
 {
 	char mempool_name[RTE_MEMPOOL_NAMESIZE];
 	struct cpt_qp_meta_info *meta_info;
@@ -417,6 +417,7 @@ otx_cpt_metabuf_mempool_create(const struct rte_cryptodev *dev,
 	int max_mlen = 0;
 	int sg_mlen = 0;
 	int lb_mlen = 0;
+	int mb_pool_sz;
 	int ret;
 
 	/*
@@ -453,7 +454,9 @@ otx_cpt_metabuf_mempool_create(const struct rte_cryptodev *dev,
 	snprintf(mempool_name, RTE_MEMPOOL_NAMESIZE, "otx_cpt_mb_%u:%u",
 		 dev->data->dev_id, qp_id);
 
-	pool = rte_mempool_create_empty(mempool_name, nb_elements, max_mlen,
+	mb_pool_sz = RTE_MAX(nb_elements, (METABUF_POOL_CACHE_SIZE * rte_lcore_count()));
+
+	pool = rte_mempool_create_empty(mempool_name, mb_pool_sz, max_mlen,
 					METABUF_POOL_CACHE_SIZE, 0,
 					rte_socket_id(), 0);
 
Signature · 1 line
2.7.4