[dpdk-dev] [PATCH] event/octeontx2: relax memory requirement for event timers

pbhagavatula at marvell.com pbhagavatula at marvell.com
Tue Jan 7 14:17:38 CET 2020


From: Pavan Nikhilesh <pbhagavatula at marvell.com>

Relax memory requirement for event timers when internal mempool used is
octeontx2 mempool.
Add debug log to print the memory used.

Signed-off-by: Pavan Nikhilesh <pbhagavatula at marvell.com>
---
 drivers/event/octeontx2/otx2_tim_evdev.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/drivers/event/octeontx2/otx2_tim_evdev.c b/drivers/event/octeontx2/otx2_tim_evdev.c
index b275c6922..cd0dcde24 100644
--- a/drivers/event/octeontx2/otx2_tim_evdev.c
+++ b/drivers/event/octeontx2/otx2_tim_evdev.c
@@ -327,7 +327,11 @@ otx2_tim_ring_create(struct rte_event_timer_adapter *adptr)
 			tim_optimze_bkt_param(tim_ring);
 	}
 
-	tim_ring->nb_chunks = tim_ring->nb_chunks * tim_ring->nb_bkts;
+	if (tim_ring->disable_npa)
+		tim_ring->nb_chunks = tim_ring->nb_chunks * tim_ring->nb_bkts;
+	else
+		tim_ring->nb_chunks = tim_ring->nb_chunks + tim_ring->nb_bkts;
+
 	/* Create buckets. */
 	tim_ring->bkt = rte_zmalloc("otx2_tim_bucket", (tim_ring->nb_bkts) *
 				    sizeof(struct otx2_tim_bkt),
@@ -376,6 +380,11 @@ otx2_tim_ring_create(struct rte_event_timer_adapter *adptr)
 			 RTE_EVENT_TYPE_TIMER);
 	sso_xae_reconfigure(dev->event_dev);
 
+	otx2_tim_dbg("Total memory used %"PRIu64"MB\n",
+			(uint64_t)(((tim_ring->nb_chunks * tim_ring->chunk_sz)
+			+ (tim_ring->nb_bkts * sizeof(struct otx2_tim_bkt))) /
+			BIT_ULL(20)));
+
 	return rc;
 
 chnk_mem_err:
-- 
2.17.1



More information about the dev mailing list