On Mon, 27 Mar 2023 17:48:44 -0400 Steven Rostedt <rostedt@xxxxxxxxxxx> wrote: > struct my_info { > /* store state info here */ > }; > > int main(...) { > struct tracecmd_input *handle; > struct my_info info; > char *file = argv[1]; > > handle = tracecmd_open(file); > > tracecmd_follow_event(handle, "rcu", "rcu_batch_start", > batch_start, &info); > > tracecmd_follow_event(handle, "rcu", "rcu_batch_end", > batch_end, &info); > > tracecmd_follow_event(handle, "rcu", "rcu_invoke_callback", > invoke_callback, &info); > > tracecmd_iterate_events(handle, NULL, 0, NULL, NULL); > > tracecmd_close(handle); > } BTW, none of this code was actually tested, so I may have some syntax errors. I just did this straight from memory, as it's so easy ;-) -- Steve