[for-next][PATCH 02/14] rtla: Add trace_instance_stop

From: Steven Rostedt
Date: Fri Jan 24 2025 - 13:48:58 EST


From: Tomas Glozar <tglozar@xxxxxxxxxx>

Support not only turning trace on for the timerlat tracer, but also
turning it off.

This will be used in subsequent patches to stop the timerlat tracer
without also wiping the trace buffer.

Cc: stable@xxxxxxxxxxxxxxx
Cc: John Kacur <jkacur@xxxxxxxxxx>
Cc: Luis Goncalves <lgoncalv@xxxxxxxxxx>
Cc: Gabriele Monaco <gmonaco@xxxxxxxxxx>
Link: https://lore.kernel.org/20250116144931.649593-2-tglozar@xxxxxxxxxx
Signed-off-by: Tomas Glozar <tglozar@xxxxxxxxxx>
Signed-off-by: Steven Rostedt (Google) <rostedt@xxxxxxxxxxx>
---
tools/tracing/rtla/src/trace.c | 8 ++++++++
tools/tracing/rtla/src/trace.h | 1 +
2 files changed, 9 insertions(+)

diff --git a/tools/tracing/rtla/src/trace.c b/tools/tracing/rtla/src/trace.c
index 170a706248ab..440323a997c6 100644
--- a/tools/tracing/rtla/src/trace.c
+++ b/tools/tracing/rtla/src/trace.c
@@ -196,6 +196,14 @@ int trace_instance_start(struct trace_instance *trace)
return tracefs_trace_on(trace->inst);
}

+/*
+ * trace_instance_stop - stop tracing a given rtla instance
+ */
+int trace_instance_stop(struct trace_instance *trace)
+{
+ return tracefs_trace_off(trace->inst);
+}
+
/*
* trace_events_free - free a list of trace events
*/
diff --git a/tools/tracing/rtla/src/trace.h b/tools/tracing/rtla/src/trace.h
index c7c92dc9a18a..76e1b77291ba 100644
--- a/tools/tracing/rtla/src/trace.h
+++ b/tools/tracing/rtla/src/trace.h
@@ -21,6 +21,7 @@ struct trace_instance {

int trace_instance_init(struct trace_instance *trace, char *tool_name);
int trace_instance_start(struct trace_instance *trace);
+int trace_instance_stop(struct trace_instance *trace);
void trace_instance_destroy(struct trace_instance *trace);

struct trace_seq *get_trace_seq(void);
--
2.45.2