trace: add alarm tracepoints

Add following alarm related trace points.

- rte_eal_trace_alarm_set()
- rte_eal_trace_alarm_cancel()

Signed-off-by: Jerin Jacob <jerinj@marvell.com>
Acked-by: David Marchand <david.marchand@redhat.com>
This commit is contained in:
Jerin Jacob 2020-04-23 00:33:34 +05:30 committed by David Marchand
parent 6c232fc44c
commit 4931010619
5 changed files with 38 additions and 0 deletions

View File

@ -23,6 +23,9 @@ RTE_TRACE_POINT_DEFINE(rte_eal_trace_generic_ptr);
RTE_TRACE_POINT_DEFINE(rte_eal_trace_generic_str);
RTE_TRACE_POINT_DEFINE(rte_eal_trace_generic_func);
RTE_TRACE_POINT_DEFINE(rte_eal_trace_alarm_set);
RTE_TRACE_POINT_DEFINE(rte_eal_trace_alarm_cancel);
RTE_INIT(eal_trace_init)
{
RTE_TRACE_POINT_REGISTER(rte_eal_trace_generic_void,
@ -57,4 +60,9 @@ RTE_INIT(eal_trace_init)
lib.eal.generic.string);
RTE_TRACE_POINT_REGISTER(rte_eal_trace_generic_func,
lib.eal.generic.func);
RTE_TRACE_POINT_REGISTER(rte_eal_trace_alarm_set,
lib.eal.alarm.set);
RTE_TRACE_POINT_REGISTER(rte_eal_trace_alarm_cancel,
lib.eal.alarm.cancel);
}

View File

@ -17,6 +17,7 @@
#include <rte_errno.h>
#include <rte_interrupts.h>
#include <rte_spinlock.h>
#include <rte_eal_trace.h>
#include "eal_private.h"
#include "eal_alarm_private.h"
@ -223,6 +224,7 @@ rte_eal_alarm_set(uint64_t us, rte_eal_alarm_callback cb_fn, void *cb_arg)
rte_spinlock_unlock(&alarm_list_lk);
rte_eal_trace_alarm_set(us, cb_fn, cb_arg, ret);
return ret;
}
@ -310,5 +312,6 @@ rte_eal_alarm_cancel(rte_eal_alarm_callback cb_fn, void *cb_arg)
rte_spinlock_unlock(&alarm_list_lk);
rte_eal_trace_alarm_cancel(cb_fn, cb_arg, count);
return count;
}

View File

@ -15,6 +15,7 @@
extern "C" {
#endif
#include <rte_alarm.h>
#include <rte_trace_point.h>
/* Generic */
@ -115,6 +116,26 @@ RTE_TRACE_POINT(
#define RTE_EAL_TRACE_GENERIC_FUNC rte_eal_trace_generic_func(__func__)
/* Alarm */
RTE_TRACE_POINT(
rte_eal_trace_alarm_set,
RTE_TRACE_POINT_ARGS(uint64_t us, rte_eal_alarm_callback cb_fn,
void *cb_arg, int rc),
rte_trace_point_emit_u64(us);
rte_trace_point_emit_ptr(cb_fn);
rte_trace_point_emit_ptr(cb_arg);
rte_trace_point_emit_int(rc);
)
RTE_TRACE_POINT(
rte_eal_trace_alarm_cancel,
RTE_TRACE_POINT_ARGS(rte_eal_alarm_callback cb_fn, void *cb_arg,
int count),
rte_trace_point_emit_ptr(cb_fn);
rte_trace_point_emit_ptr(cb_arg);
rte_trace_point_emit_int(count);
)
#ifdef __cplusplus
}
#endif

View File

@ -20,6 +20,8 @@
#include <rte_lcore.h>
#include <rte_errno.h>
#include <rte_spinlock.h>
#include <rte_eal_trace.h>
#include <eal_private.h>
#ifndef TFD_NONBLOCK
@ -172,6 +174,7 @@ rte_eal_alarm_set(uint64_t us, rte_eal_alarm_callback cb_fn, void *cb_arg)
}
rte_spinlock_unlock(&alarm_list_lk);
rte_eal_trace_alarm_set(us, cb_fn, cb_arg, ret);
return ret;
}
@ -240,5 +243,6 @@ rte_eal_alarm_cancel(rte_eal_alarm_callback cb_fn, void *cb_arg)
else if (err)
rte_errno = err;
rte_eal_trace_alarm_cancel(cb_fn, cb_arg, count);
return count;
}

View File

@ -337,6 +337,8 @@ EXPERIMENTAL {
rte_thread_is_intr;
# added in 20.05
__rte_eal_trace_alarm_cancel;
__rte_eal_trace_alarm_set;
__rte_eal_trace_generic_double;
__rte_eal_trace_generic_float;
__rte_eal_trace_generic_func;