@@ -235,3 +235,19 @@ int cxl_parse_events(struct tracefs_instance *inst, struct event_ctx *ectx)
tep_free(tep);
return rc;
}
+
+int cxl_event_tracing_enable(struct tracefs_instance *inst, const char *system,
+ const char *event)
+{
+ int rc;
+
+ rc = tracefs_event_enable(inst, system, event);
+ if (rc == -1)
+ return -errno;
+
+ if (tracefs_trace_is_on(inst))
+ return 0;
+
+ tracefs_trace_on(inst);
+ return 0;
+}
@@ -20,5 +20,7 @@ struct event_ctx {
};
int cxl_parse_events(struct tracefs_instance *inst, struct event_ctx *ectx);
+int cxl_event_tracing_enable(struct tracefs_instance *inst, const char *system,
+ const char *event);
#endif
Add a common function for cxl command to enable event tracing for the instance created. The interested "systems" will be enabled for tracing as well. Signed-off-by: Dave Jiang <dave.jiang@intel.com> --- cxl/event_trace.c | 16 ++++++++++++++++ cxl/event_trace.h | 2 ++ 2 files changed, 18 insertions(+)