[dpdk-dev] service: fix service lcore stop function

Message ID 20170905085333.8301-1-gprathyusha@caviumnetworks.com (mailing list archive)
State Superseded, archived
Delegated to: Thomas Monjalon
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Guduri Prathyusha Sept. 5, 2017, 8:53 a.m. UTC
  lcore_states store the state of the lcore. Fixing the invalid
dereference of lcore_states with service number

Fixes: 21698354c832 ("service: introduce service cores concept")

Signed-off-by: Guduri Prathyusha <gprathyusha@caviumnetworks.com>
---
 lib/librte_eal/common/rte_service.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--
2.14.1
  

Patch

diff --git a/lib/librte_eal/common/rte_service.c b/lib/librte_eal/common/rte_service.c
index 7efb76dc8..2ac77cc2a 100644
--- a/lib/librte_eal/common/rte_service.c
+++ b/lib/librte_eal/common/rte_service.c
@@ -609,7 +609,7 @@  rte_service_lcore_stop(uint32_t lcore)
 	uint32_t i;
 	for (i = 0; i < RTE_SERVICE_NUM_MAX; i++) {
 		int32_t enabled =
-			lcore_states[i].service_mask & (UINT64_C(1) << i);
+			lcore_states[lcore].service_mask & (UINT64_C(1) << i);
 		int32_t service_running = rte_services[i].runstate !=
 						RUNSTATE_STOPPED;
 		int32_t only_core = rte_services[i].num_mapped_cores == 1;