[dpdk-dev,v5] timer: allow timer reset on service cores

Message ID 1504691944-29014-1-git-send-email-pbhagavatula@caviumnetworks.com (mailing list archive)
State Accepted, archived
Delegated to: Thomas Monjalon
Headers

Checks

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

Commit Message

Pavan Nikhilesh Sept. 6, 2017, 9:59 a.m. UTC
  From: Pavan Bhagavatula <pbhagavatula@caviumnetworks.com>

API rte_timer_reset() should be able to register timers on service
lcores as they are EAL threads.

Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
---
 This patch depends on http://dpdk.org/dev/patchwork/patch/27818/
 lib/librte_timer/rte_timer.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

--
2.7.4
  

Patch

diff --git a/lib/librte_timer/rte_timer.c b/lib/librte_timer/rte_timer.c
index 5ee0840..a5a045c 100644
--- a/lib/librte_timer/rte_timer.c
+++ b/lib/librte_timer/rte_timer.c
@@ -432,7 +432,8 @@  rte_timer_reset(struct rte_timer *tim, uint64_t ticks,
 	uint64_t period;

 	if (unlikely((tim_lcore != (unsigned)LCORE_ID_ANY) &&
-			!rte_lcore_is_enabled(tim_lcore)))
+			!(rte_lcore_is_enabled(tim_lcore) ||
+				rte_lcore_is_service_lcore(tim_lcore))))
 		return -1;

 	if (type == PERIODICAL)