examples/l3fwd: share queue size variables
[dpdk.git] / drivers / event / cnxk / cnxk_tim_worker.c
index 98ff143..dfcfbdc 100644 (file)
@@ -63,7 +63,7 @@ cnxk_tim_timer_arm_burst(const struct rte_event_timer_adapter *adptr,
        struct cnxk_tim_ring *tim_ring = adptr->data->adapter_priv;
        struct cnxk_tim_ent entry;
        uint16_t index;
-       int ret;
+       int ret = 0;
 
        cnxk_tim_sync_start_cyc(tim_ring);
        for (index = 0; index < nb_timers; index++) {
@@ -86,10 +86,13 @@ cnxk_tim_timer_arm_burst(const struct rte_event_timer_adapter *adptr,
                }
        }
 
+       if (flags & CNXK_TIM_ENA_STATS)
+               __atomic_fetch_add(&tim_ring->arm_cnt, index, __ATOMIC_RELAXED);
+
        return index;
 }
 
-#define FP(_name, _f2, _f1, _flags)                                            \
+#define FP(_name, _f3, _f2, _f1, _flags)                                       \
        uint16_t __rte_noinline cnxk_tim_arm_burst_##_name(                    \
                const struct rte_event_timer_adapter *adptr,                   \
                struct rte_event_timer **tim, const uint16_t nb_timers)        \
@@ -138,10 +141,14 @@ cnxk_tim_timer_arm_tmo_brst(const struct rte_event_timer_adapter *adptr,
                        break;
        }
 
+       if (flags & CNXK_TIM_ENA_STATS)
+               __atomic_fetch_add(&tim_ring->arm_cnt, set_timers,
+                                  __ATOMIC_RELAXED);
+
        return set_timers;
 }
 
-#define FP(_name, _f1, _flags)                                                 \
+#define FP(_name, _f2, _f1, _flags)                                            \
        uint16_t __rte_noinline cnxk_tim_arm_tmo_tick_burst_##_name(           \
                const struct rte_event_timer_adapter *adptr,                   \
                struct rte_event_timer **tim, const uint64_t timeout_tick,     \