Re: [ANNOUNCE] New utility: 'trace'

From: Peter Zijlstra
Date: Wed Nov 17 2010 - 08:37:24 EST


On Wed, 2010-11-17 at 14:10 +0100, Ingo Molnar wrote:
> * Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
>
> > On Wed, 2010-11-17 at 13:53 +0100, Frederic Weisbecker wrote:
> > > On Wed, Nov 17, 2010 at 12:35:50PM +0100, Peter Zijlstra wrote:
> > > > On Wed, 2010-11-17 at 09:30 +0100, Ingo Molnar wrote:
> > > > > > For example I'm currently working with dozens of trace_printk() and I would be
> > > > > > very happy to turn some of them off half of the time.
> > > > >
> > > > > I guess we could try such a patch. If you send a prototype i'd be interested in
> > > > > testing it out.
> > > >
> > > > I don't see the point, the kernel shouldn't contain any trace_printk()s
> > > > to begin with..
> > >
> > >
> > > It's oriented toward developers. Those who use dozens of tracepoints in
> > > their tree because they are debugging something or developing a new feature,
> > > they might to deactivate/reactivate some of these independant points.
> > >
> > > This can also apply to dynamic_printk of course.
> > >
> > > Well, the very first and main point is to standardize trace_printk into
> > > a trace event so that it gets usable by perf tools. I have been asked many
> > > times "how to use trace_printk() with perf?".
> >
> > Thing is, since its these dev who add the trace_printk()s to begin with, I don't
> > see the point in splitting them out, if you didn't want them why did you add them
> > to begin with?!
>
> That's a common workflow: lots of printks (trace_printk's) put all around the code -
> and sometimes one set of tracepoints is needed, one time another set.
>
> _If_ we succeed in presenting them like Frederic suggested it, and if we make the
> turning on/off _simpler_ (no kernel modification) and faster (no kernel reboot) via
> the tooling, people like Frederic might start using it.
>
> I dont think we should fight the workflow itself - it makes sense.
>
> The only question is whether we can represent it all in a nicer fashion than 'modify
> the source code and reboot'. If we cannot then there's no point - but i'm not sure
> about it and Frederic seems to be convinced too that he can make such a switch
> on/off facility intuitive. We'll only see if we try it.
>
> Also, i dont see any harm - do you?

Yes, trace_printk() is a pure debug interface, solely meant for the edit
+ reboot cycle.

If you want anything more than that we've got tracepoints. The rule up
until now has been to never merge a trace_printk() user.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/