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 bd1f16b..be9e30d 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> struct rte_keepalive { /** Core Liveness. */ @@ -139,8 +140,10 @@ 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