* [PATCH] libtracefs: Fix tracefs_instance_reset() of triggers
@ 2024-01-11 22:38 Steven Rostedt
0 siblings, 0 replies; only message in thread
From: Steven Rostedt @ 2024-01-11 22:38 UTC (permalink / raw)
To: Linux Trace Devel
From: "Steven Rostedt (Google)" <rostedt@goodmis.org>
The clearing of triggers may require a few loops as the order of the
clearing is important. Some triggers rely on other triggers to be cleared
before they can be cleared.
The tracefs_instance_reset() will loop over all the triggers, clearing them
one at a time, and restart from the top again if not all the triggers were
cleared. This guarantees that the triggers will have other triggers cleared
first if they depend on them to be cleared.
The "file" string used to clear the trigger wasn't updated to equal the next
file in the list, so it was stale.
Fixes: 93e20af8 ("libtracefs: Fix tracefs_instance_reset to clear synthetic events")
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
---
src/tracefs-instance.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/tracefs-instance.c b/src/tracefs-instance.c
index 0ee0225..9a26708 100644
--- a/src/tracefs-instance.c
+++ b/src/tracefs-instance.c
@@ -1539,6 +1539,7 @@ void tracefs_instance_reset(struct tracefs_instance *instance)
list_size = tracefs_list_size(file_list);
file_list = NULL;
for (i = 0; list[i]; i++) {
+ file = list[i];
ret = clear_trigger(file);
if (ret) {
char **tlist;
--
2.42.0
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2024-01-11 22:37 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-11 22:38 [PATCH] libtracefs: Fix tracefs_instance_reset() of triggers Steven Rostedt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).