Messages in this thread | | | Date | Wed, 28 Jan 2009 22:45:10 -0200 | From | Arnaldo Carvalho de Melo <> | Subject | Re: [PATCH] tracer for sys_open() - sreadahead |
| |
Em Wed, Jan 28, 2009 at 02:05:20PM -0800, Kok, Auke escreveu: > Frederic Weisbecker wrote: > > On Tue, Jan 27, 2009 at 06:51:37PM -0200, Arnaldo Carvalho de Melo wrote: > >> Em Tue, Jan 27, 2009 at 12:08:04PM -0800, Kok, Auke escreveu: > >>> This tracer monitors regular file open() syscalls. This is a fast > >>> and low-overhead alternative to strace, and does not allow or > >>> require to be attached to every process. > >>> > >>> The tracer only logs succesfull calls, as those are the only ones we > >>> are currently interested in, and we can determine the absolute path > >>> of these files as we log. > >>> > >>> Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com> > >> <SNIP> > >> > >>> diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h > >>> index 4d3d381..24c17d2 100644 > >>> --- a/kernel/trace/trace.h > >>> +++ b/kernel/trace/trace.h > >>> @@ -30,6 +30,7 @@ enum trace_type { > >>> TRACE_USER_STACK, > >>> TRACE_HW_BRANCHES, > >>> TRACE_POWER, > >>> + TRACE_OPEN, > >> Why not a TRACE_VFS or TRACE_SYSCALL and then multiplex there open, > >> close, etc? trace_assign_type will get humongous in no time this way. > > > > > > That's what I was about to answer too. > > That would be sad to find one tracer for open, one for read, one for write... > > > > > >> TRACE_BLK does multiplexing, as does TRACE_PROCESS that Frank just > >> posted too, and I'm working on a plugin for the patch that Neil > >> submitted for the socket layer that also will need an entry there for > >> its tracepoints. > >> > >> Frederic, it seems that discussion about subtypes has to continue :-) > > > > > > Indeed, that becomes serious :-) > > > > I totally agree - this tracer was purely made quick-and-dirty to get sreadahead to > the next level. The in-kernel syscall trace facility is extremely potent and I > don't doubt that my patch may have been found slightly absurd by some :)
hey, hey, your patch just illustrated that we need a subtype facility.
I'm (as all the other people in some shape or form involved in pushing some sort of common tracing infrastructure into the kernel, I guess) excited about more developers using what is being put in place :-)
> In all it was not productive to write a giant trace facility just to get > sreadahead one tracer type. Now that the code works and the benefit is proven, I'm > happy to see if we can work on making a decent long-term non-specialistic solution.
That is the spirit!
- Arnaldo
| |