This patch sets a timestamp on each lcore when it is registered for keepalive. This causes the first values read by the monitor to show time since the core was registered, instead of the delta between 0 and the timestamp counter.
Signed-off-by: Harry van Haaren <harry.van.haaren at intel.com> --- lib/librte_eal/common/rte_keepalive.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/librte_eal/common/rte_keepalive.c b/lib/librte_eal/common/rte_keepalive.c index 736fd0f..5358322 100644 --- a/lib/librte_eal/common/rte_keepalive.c +++ b/lib/librte_eal/common/rte_keepalive.c @@ -38,6 +38,7 @@ #include <rte_log.h> #include <rte_keepalive.h> #include <rte_malloc.h> +#include <rte_cycles.h> static void print_trace(const char *msg, struct rte_keepalive *keepcfg, int idx_core) @@ -108,6 +109,8 @@ rte_keepalive_create(rte_keepalive_failure_callback_t callback, void rte_keepalive_register_core(struct rte_keepalive *keepcfg, const int id_core) { - if (id_core < RTE_KEEPALIVE_MAXCORES) + if (id_core < RTE_KEEPALIVE_MAXCORES) { keepcfg->active_cores[id_core] = 1; + keepcfg->last_alive[id_core] = rte_rdtsc(); + } } -- 2.5.0