From: Jerin Jacob <jer...@marvell.com> Add following alarm related trace points.
- rte_trace_lib_eal_alarm_set() - rte_trace_lib_eal_alarm_cancel() Signed-off-by: Jerin Jacob <jer...@marvell.com> --- .../common/eal_common_trace_points.c | 9 ++++++++ lib/librte_eal/freebsd/eal_alarm.c | 3 +++ lib/librte_eal/include/rte_eal_trace.h | 21 +++++++++++++++++++ lib/librte_eal/linux/eal_alarm.c | 4 ++++ lib/librte_eal/rte_eal_version.map | 2 ++ 5 files changed, 39 insertions(+) diff --git a/lib/librte_eal/common/eal_common_trace_points.c b/lib/librte_eal/common/eal_common_trace_points.c index d37289f81..ba9c8e407 100644 --- a/lib/librte_eal/common/eal_common_trace_points.c +++ b/lib/librte_eal/common/eal_common_trace_points.c @@ -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,10 @@ 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); + } diff --git a/lib/librte_eal/freebsd/eal_alarm.c b/lib/librte_eal/freebsd/eal_alarm.c index 51ea4b8c0..c38b2e04f 100644 --- a/lib/librte_eal/freebsd/eal_alarm.c +++ b/lib/librte_eal/freebsd/eal_alarm.c @@ -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; } diff --git a/lib/librte_eal/include/rte_eal_trace.h b/lib/librte_eal/include/rte_eal_trace.h index fe9776d80..5de8ce856 100644 --- a/lib/librte_eal/include/rte_eal_trace.h +++ b/lib/librte_eal/include/rte_eal_trace.h @@ -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_TRACE_LIB_EAL_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 diff --git a/lib/librte_eal/linux/eal_alarm.c b/lib/librte_eal/linux/eal_alarm.c index 0924c9205..3252c6fa5 100644 --- a/lib/librte_eal/linux/eal_alarm.c +++ b/lib/librte_eal/linux/eal_alarm.c @@ -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; } diff --git a/lib/librte_eal/rte_eal_version.map b/lib/librte_eal/rte_eal_version.map index c333ac900..4cba9a55d 100644 --- a/lib/librte_eal/rte_eal_version.map +++ b/lib/librte_eal/rte_eal_version.map @@ -357,6 +357,8 @@ EXPERIMENTAL { rte_trace_regexp; rte_trace_save; + __rte_trace_lib_eal_alarm_cancel; + __rte_trace_lib_eal_alarm_set; __rte_trace_lib_eal_generic_double; __rte_trace_lib_eal_generic_float; __rte_trace_lib_eal_generic_func; -- 2.25.1