[PATCH] app/compress-perf: fix cyclecount enqueue ops allocation

Raja Zidane rzidane at nvidia.com
Wed Feb 23 14:32:17 CET 2022


In cyclecount main_loop function, each iteration it tries to enqueue X ops,
in case Y<X ops were enqueued, the rest of the X-Y ops are moved to the
beginning of the ops array, to preserve ops order, and next Y ops are
allocated for the next enqueue action, the allocation of the ops occures on
the first Y entries in the array, when it should have skipped the first X-Y
array entries and allocate the following Y entries.

Fix the allocation by adding the correct offset.

Fixes: 2695db95a147 ("test/compress: add cycle-count mode to perf tool")
Cc: stable at dpdk.org

Signed-off-by: Raja Zidane <rzidane at nvidia.com>
---
Acked-by: Matan Azrad matan at nvidia.com
 app/test-compress-perf/comp_perf_test_cyclecount.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app/test-compress-perf/comp_perf_test_cyclecount.c b/app/test-compress-perf/comp_perf_test_cyclecount.c
index 1d8e5fe6c2..c215547291 100644
--- a/app/test-compress-perf/comp_perf_test_cyclecount.c
+++ b/app/test-compress-perf/comp_perf_test_cyclecount.c
@@ -273,7 +273,7 @@ main_loop(struct cperf_cyclecount_ctx *ctx, enum rte_comp_xform_type type)
 			/* Allocate compression operations */
 			if (ops_needed && rte_mempool_get_bulk(
 						mem->op_pool,
-						(void **)ops,
+						(void **)&ops[ops_unused],
 						ops_needed) != 0) {
 				RTE_LOG(ERR, USER1,
 				      "Could not allocate enough operations\n");
-- 
2.21.0



More information about the stable mailing list