Re: hybrid mode questions

Jerry Hom <[email protected]>
Newsgroups gmane.linux.kernel.tracing
Message-ID <[email protected]>
Thank you very much!  You are amazingly quick at fixing bugs.  The
process names are correct, however the pids are still '0'.  I tried
looking at the source, but I'm sorry I'm not familiar enough with
LTTng's internals to fix it.

On Fri, 23 Feb 2007, Mathieu Desnoyers wrote:

> Please apply the following fix on top of the previous one : I forgot to
> add a new file into the git tree.
> 
> 
> --- /dev/null
> +++ b/include/ltt/ltt-facility-select-fs.h
> @@ -0,0 +1,31 @@
> +#ifndef _LTT_FACILITY_SELECT_FS_H_
> +#define _LTT_FACILITY_SELECT_FS_H_
> +
> +#ifdef CONFIG_LTT
> +#include <linux/ltt-facilities.h>
> +#include <ltt/ltt-tracer.h>
> +#include <ltt/ltt-facility-id-fs.h>
> +
> +/* ltt_get_index_from_facility
> + *
> + * Get channel index from facility and event id.
> + * 
> + * @fID : facility ID
> + * @eID : event number
> + *
> + * Get the channel index into which events must be written for the given
> + * facility and event number. We get this structure offset as soon as possible
> + * and remember it so we pass through this logic only once per trace call (not
> + * for every trace).
> + */
> +static inline unsigned int ltt_get_index_from_facility_fs(u8 eID)
> +{
> +	switch (eID) {
> +		case event_fs_exec:
> +			return GET_CHANNEL_INDEX(processes);
> +		default:
> +			return GET_CHANNEL_INDEX(cpu);
> +	}
> +}
> +#endif //CONFIG_LTT
> +#endif //_LTT_FACILITY_SELECT_FS_H_
> 
> 
> 
> * Mathieu Desnoyers ([email protected]) wrote:
> > Please try the following patch :
> > 
> > --- a/include/ltt/ltt-facility-select-default.h
> > +++ b/include/ltt/ltt-facility-select-default.h
> > @@ -30,7 +30,6 @@ static inline unsigned int ltt_get_index_from_facility(u8 eID)
> >  #define ltt_get_index_from_facility_kernel_arch ltt_get_index_from_facility
> >  #define ltt_get_index_from_facility_debug ltt_get_index_from_facility
> >  #define ltt_get_index_from_facility_fs_data ltt_get_index_from_facility
> > -#define ltt_get_index_from_facility_fs ltt_get_index_from_facility
> >  #define ltt_get_index_from_facility_ipc ltt_get_index_from_facility
> >  #define ltt_get_index_from_facility_locking ltt_get_index_from_facility
> >  #define ltt_get_index_from_facility_memory ltt_get_index_from_facility
> > diff --git a/include/ltt/ltt-tracer.h b/include/ltt/ltt-tracer.h
> > diff --git a/ltt/probes/ltt-probe-fs.c b/ltt/probes/ltt-probe-fs.c
> > index 5206308..e5a5030 100644
> > --- a/ltt/probes/ltt-probe-fs.c
> > +++ b/ltt/probes/ltt-probe-fs.c
> > @@ -11,6 +11,7 @@
> >  #include <linux/marker.h>
> >  #include <linux/module.h>
> >  #include <ltt/ltt-tracer.h>
> > +#include <ltt/ltt-facility-select-fs.h>
> >  #include <ltt/ltt-facility-select-default.h>
> >  #include <ltt/ltt-facility-fs.h>
> >  #include <ltt/ltt-facility-custom-fs_data.h>
> > 
> > * Mathieu Desnoyers ([email protected]) wrote:
> > > * Jerry Hom ([email protected]) wrote:
> > > > 
> > > > Hi!  I'm revisiting the issue of hybrid mode.  I've been testing
> > > > recently with kernel 2.6.18.3, LTTng 0.6.33, LTTV 0.8.72.  Since I'm
> > > > mainly interested in process info (which currently seems to be in the
> > > > medium rate channel) and don't need the high rate stuff, I tried
> > > > running in hybrid mode and then stopping without dumping the flight
> > > > recorder buffers.  The advantage with keeping only the medium and low
> > > > rate channel is the much smaller log size.
> > > > 
> > > > However, the problem is that a bunch of process names and pids are
> > > > missing.  The processes seem to be those which start after the initial
> > > > kernel statedump, and they become generically named "swapper".  Also,
> > > > their pids become '0'.  Can this be fixed easily?  Could you please
> > > > point me in the direction to help fix this?
> > > > 
> > > 
> > > Oh, I guess I have put the exec and compat_exec events in the high rate
> > > channel right ? Should be in medium rate. Those events stamp the process
> > > names.
> > > 
> > > I will dig into this soon. A patch would be welcome though :)
> > > 
> > > Mathieu
> > > 
> > > > On Thu, 14 Sep 2006, Mathieu Desnoyers wrote:
> > > > 
> > > > > * Jerry Hom ([email protected]) wrote:
> > > > > > 
> > > > > > I'm excited about the new hybrid mode, thanks!  It seems to address
> > > > > > what I've been thinking.  Namely, I'm trying to gather a day long
> > > > > > trace (eg, 8 hours), but the file sizes can reach 10GB+.  I have a
> > > > > > question though about the high rate events in the flight recorder
> > > > > > buffer.  Will that buffer always be dumped when the tracing is
> > > > > > stopped?
> > > > > > 
> > > > > 
> > > > > Only is the lttd daemon for reading (only) the flight recorder buffers is
> > > > > spawned before the trace channel are destroyed. In the lttctl sequence of
> > > > > operation I explained in the email earlier, yes, the flight recorder channels
> > > > > are dumped and only then the trace channels are destroyed.
> > > > > 
> > > > > > Actually, for my purposes, I'm much more interested in the low rate
> > > > > > events such as processes.  Perhaps a nice feature would be a toggle
> > > > > > switch to turn on/off the high/medium/low rate events individually?
> > > > > > 
> > > > > 
> > > > > Yes, and eventually, it would be great to multiplex them on the fly per event or
> > > > > per facility. I guess it will eventually come as an extension to the filter
> > > > > kernel module for dynamic event filtering (it's not implemented at all yet).
> > > > > 
> > > > > I'm glad it suits your needs!
> > > > > 
> > > > > Mathieu
> > > > > 
> > > > > 
> > > > > > -- 
> > > > > > Jerry Hom
> > > > > > 
> > > > > > _______________________________________________
> > > > > > ltt-dev mailing list
> > > > > > [email protected]
> > > > > > http://www.listserv.shafik.org/listserv/listinfo/ltt-dev
> > > > > > 
> > > > > OpenPGP public key:              http://krystal.dyndns.org:8080/key/compudj.gpg
> > > > > Key fingerprint:     8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68 
> > > > > 
> > > > 
> > > > -- 
> > > > Jerry Hom
> > > > 
> > > > _______________________________________________
> > > > Ltt-dev mailing list
> > > > [email protected]
> > > > http://listserv.shafik.org/mailman/listinfo/ltt-dev
> > > > 
> > > 
> > > -- 
> > > Mathieu Desnoyers
> > > Computer Engineering Ph.D. Candidate, Ecole Polytechnique de Montreal
> > > OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68
> > > _______________________________________________
> > > Ltt-dev mailing list
> > > [email protected]
> > > http://listserv.shafik.org/mailman/listinfo/ltt-dev
> > > 
> > 
> > -- 
> > Mathieu Desnoyers
> > Computer Engineering Ph.D. Candidate, Ecole Polytechnique de Montreal
> > OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68
> > _______________________________________________
> > Ltt-dev mailing list
> > [email protected]
> > http://listserv.shafik.org/mailman/listinfo/ltt-dev
> > 
> 
> 

-- 
Jerry Hom
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.