[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <SJ1PR11MB61792EA18F7F2BFD1E70916489889@SJ1PR11MB6179.namprd11.prod.outlook.com>
Date: Tue, 28 Mar 2023 01:28:01 +0000
From: "Zhuo, Qiuxu" <qiuxu.zhuo@...el.com>
To: Steven Rostedt <rostedt@...dmis.org>,
Uladzislau Rezki <urezki@...il.com>
CC: "Paul E . McKenney" <paulmck@...nel.org>,
RCU <rcu@...r.kernel.org>,
"quic_neeraju@...cinc.com" <quic_neeraju@...cinc.com>,
Boqun Feng <boqun.feng@...il.com>,
Joel Fernandes <joel@...lfernandes.org>,
LKML <linux-kernel@...r.kernel.org>,
Oleksiy Avramchenko <oleksiy.avramchenko@...y.com>,
Frederic Weisbecker <frederic@...nel.org>
Subject: RE: [PATCH 1/1] Reduce synchronize_rcu() waiting time
> From: Steven Rostedt <rostedt@...dmis.org>
> Sent: Tuesday, March 28, 2023 5:51 AM
> [...]
> Subject: Re: [PATCH 1/1] Reduce synchronize_rcu() waiting time
>
> On Mon, 27 Mar 2023 17:48:44 -0400
> Steven Rostedt <rostedt@...dmis.org> 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 ;-)
Thank you Steven for sharing the libtracecmd-based and libtraceevent-based
methods for trace parsing. Good to know this. This should simplify the code
to parse trace logs. Pretty useful for me/us ;-)
- Qiuxu
>
> -- Steve
Powered by blists - more mailing lists