[PATCH] service: fix getting service lcore attributes
Mattias Rönnblom
hofors at lysator.liu.se
Mon Dec 23 10:50:17 CET 2024
On 2024-12-20 15:29, Piotr Krzewinski wrote:
> Perf test service_perf_autotest was failing after introduction
> of lcore variables. Fixed getting of idle_ and error_ service
> call statistics.
>> Fixes: b24bbaedbba2 ("service: keep per-lcore state in lcore variable")
> Cc: mattias.ronnblom at ericsson.com
> Cc: stable at dpdk.org
>
> Signed-off-by: Piotr Krzewinski <piotr.krzewinski at ericsson.com>
> ---
> lib/eal/common/rte_service.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/lib/eal/common/rte_service.c b/lib/eal/common/rte_service.c
> index dad3150df9..1821746337 100644
> --- a/lib/eal/common/rte_service.c
> +++ b/lib/eal/common/rte_service.c
> @@ -879,7 +879,7 @@ lcore_attr_get_service_calls(uint32_t service_id, unsigned int lcore)
> static uint64_t
> lcore_attr_get_service_idle_calls(uint32_t service_id, unsigned int lcore)
> {
> - struct core_state *cs = &lcore_states[lcore];
> + struct core_state *cs = RTE_LCORE_VAR_LCORE(lcore, lcore_states);
>
> return rte_atomic_load_explicit(&cs->service_stats[service_id].idle_calls,
> rte_memory_order_relaxed);
> @@ -888,7 +888,7 @@ lcore_attr_get_service_idle_calls(uint32_t service_id, unsigned int lcore)
> static uint64_t
> lcore_attr_get_service_error_calls(uint32_t service_id, unsigned int lcore)
> {
> - struct core_state *cs = &lcore_states[lcore];
> + struct core_state *cs = RTE_LCORE_VAR_LCORE(lcore, lcore_states);
>
> return rte_atomic_load_explicit(&cs->service_stats[service_id].error_calls,
> rte_memory_order_relaxed);
Reviewed-by: Mattias Rönnblom <mattias.ronnblom at ericsson.com>
Thanks!
More information about the stable
mailing list