Messages in this thread | | | Date | Fri, 15 Sep 2006 17:58:52 -0400 | From | Mathieu Desnoyers <> | Subject | Re: [PATCH 0/11] LTTng-core (basic tracing infrastructure) 0.5.108 |
| |
* Ingo Molnar (mingo@elte.hu) wrote: > > * Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca> wrote: > > > * Ingo Molnar (mingo@elte.hu) wrote: > > > sorry, but i disagree. There _is_ a solution that is superior in every > > > aspect: kprobes + SystemTap. (or any other equivalent dynamic tracer) > > > > > > > I am sorry to have to repeat myself, but this is not true for heavy > > loads. > > djprobes? >
I am fully aware of djprobes limitations towards fully preemptible kernel (and around branches instructions ? I don't remember if they solved this one). Oh, yes, and if a trap happen to come at the wrong spot, then the thread gets scheduled out... well, it cannot be applied everywhere, eh ?
> > > > At this point you've been rather uncompromising [...] > > > > > > yes, i'm rather uncompromising when i sense attempts to push inferior > > > concepts into the core kernel _when_ a better concept exists here and > > > today. Especially if the concept being pushed adds more than 350 > > > tracepoints that expose something to user-space that amounts to a > > > complex external API, which tracepoints we have little chance of ever > > > getting rid of under a static tracing concept. > > > > > From an earlier email from Tim bird : > > > > "I still think that this is off-topic for the patch posted. I think > > we should debate the implementation of tracepoints/markers when > > someone posts a patch for some. I think it's rather scurrilous to > > complain about code NOT submitted. Ingo has even mis-characterized > > the not-submitted instrumentation patch, by saying it has 350 > > tracepoints when it has no such thing. I counted 58 for one > > architecture (with only 8 being arch-specific)." > > i missed that (way too many mails in this thread). > > Here is how i counted them: > > $ grep "\<trace_.*(" * | wc -l > 359 >
This count includes the inline trace functions definitions.
> some of those are not true tracepoints, but there's at least this many > of them: > > $ grep "\<trace_.*(" *instrumentation* | wc -l > 235 >
1 - This counts per architecture trace points. It quickly adds up considering that we support ARM, MIPS, i386, powerpc, ppc and x86_64. 2 - It also counts some experimental trace points that I do not want to submit. 3 - Most of these are instrumentation of the traps handlers, which is conceptually only one event.
> when judging kernel maintainance overhead, the sum of all patches > matters. And i considered all the other patches too (the ones that add > actual tracepoints) that will come after the currently offered ones, not > just the ones you submitted to lkml. >
I plan to rework the instrumentation patches before submitting them to LKML, don't worry. I just hasn't been my focus until now. Too bad that you take those as arguments.
Mathieu
OpenPGP public key: http://krystal.dyndns.org:8080/key/compudj.gpg Key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |