Re: [PATCH 1/2] tracing/mm: don't trace kfree on offline CPUs

2016-02-16 Thread Steven Rostedt
On Tue, 16 Feb 2016 10:01:21 -0500 Steven Rostedt wrote: > > > Does this work for you instead? > > > > Hm, somehow it doesn't work: > > But your patch works? Strange, because my exit condition is done before > the conditional part of the trace event. Thus, if this didn't work, > than you

Re: [PATCH 1/2] tracing/mm: don't trace kfree on offline CPUs

2016-02-16 Thread Steven Rostedt
On Tue, 16 Feb 2016 08:52:24 +0300 Denis Kirjanov wrote: > On 2/15/16, Steven Rostedt wrote: > > On Sun, 14 Feb 2016 23:19:42 +0300 > > Denis Kirjanov wrote: > > > > > >> >> TP_PROTO(unsigned long call_site, const void *ptr), > >> >> > >> >> - TP_ARGS(call_site, ptr) > >> >> +

Re: [PATCH 1/2] tracing/mm: don't trace kfree on offline CPUs

2016-02-16 Thread Paul E. McKenney
On Tue, Feb 16, 2016 at 08:52:24AM +0300, Denis Kirjanov wrote: > On 2/15/16, Steven Rostedt wrote: > > On Sun, 14 Feb 2016 23:19:42 +0300 > > Denis Kirjanov wrote: > > > > > >> >> TP_PROTO(unsigned long call_site, const void *ptr), > >> >> > >> >> - TP_ARGS(call_site, ptr) > >> >>

Re: [PATCH 1/2] tracing/mm: don't trace kfree on offline CPUs

2016-02-15 Thread Denis Kirjanov
On 2/15/16, Steven Rostedt wrote: > On Sun, 14 Feb 2016 23:19:42 +0300 > Denis Kirjanov wrote: > > >> >> TP_PROTO(unsigned long call_site, const void *ptr), >> >> >> >> - TP_ARGS(call_site, ptr) >> >> + TP_ARGS(call_site, ptr), >> >> + >> >> + /* >> >> + * This trace can be potentially called

Re: [PATCH 1/2] tracing/mm: don't trace kfree on offline CPUs

2016-02-15 Thread Steven Rostedt
On Sun, 14 Feb 2016 23:19:42 +0300 Denis Kirjanov wrote: > >>TP_PROTO(unsigned long call_site, const void *ptr), > >> > >> - TP_ARGS(call_site, ptr) > >> + TP_ARGS(call_site, ptr), > >> + > >> + /* > >> + * This trace can be potentially called from an offlined cpu. > >> + * Since trac

Re: [PATCH 1/2] tracing/mm: don't trace kfree on offline CPUs

2016-02-14 Thread Denis Kirjanov
On 2/14/16, Steven Rostedt wrote: > On Sat, 13 Feb 2016 21:22:52 +0300 > Denis Kirjanov wrote: > >> -DEFINE_EVENT(kmem_free, kfree, >> +DEFINE_EVENT_CONDITION(kmem_free, kfree, >> >> TP_PROTO(unsigned long call_site, const void *ptr), >> >> -TP_ARGS(call_site, ptr) >> +TP_ARGS(call_s

Re: [PATCH 1/2] tracing/mm: don't trace kfree on offline CPUs

2016-02-14 Thread Denis Kirjanov
On 2/14/16, Steven Rostedt wrote: > On Sat, 13 Feb 2016 21:22:52 +0300 > Denis Kirjanov wrote: > >> -DEFINE_EVENT(kmem_free, kfree, >> +DEFINE_EVENT_CONDITION(kmem_free, kfree, >> >> TP_PROTO(unsigned long call_site, const void *ptr), >> >> -TP_ARGS(call_site, ptr) >> +TP_ARGS(call_s

Re: [PATCH 1/2] tracing/mm: don't trace kfree on offline CPUs

2016-02-14 Thread Steven Rostedt
On Sat, 13 Feb 2016 21:22:52 +0300 Denis Kirjanov wrote: > -DEFINE_EVENT(kmem_free, kfree, > +DEFINE_EVENT_CONDITION(kmem_free, kfree, > > TP_PROTO(unsigned long call_site, const void *ptr), > > - TP_ARGS(call_site, ptr) > + TP_ARGS(call_site, ptr), > + > + /* > + * Thi

[PATCH 1/2] tracing/mm: don't trace kfree on offline CPUs

2016-02-13 Thread Denis Kirjanov
Tracepoints use RCU for protection and they must not be called on offline CPUS. So make this tracepoint conditional. INFO: suspicious RCU usage. ] [ 99.749382] 4.4.0-6-g0fe53e8-dirty #34 Tainted: G S [ 99.749383] --- [ 99.749385] include/trace/events/kmem.h:14