Re: Tracing Requirements (was: [RFC/Requirements/Design] h/w errorreporting)

From: Mathieu Desnoyers
Date: Thu Nov 11 2010 - 08:37:46 EST


Hi Ingo,

* Ingo Molnar (mingo@xxxxxxx) wrote:
>
> * Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote:
>
> > On Wed, 10 Nov 2010, Mathieu Desnoyers wrote:
>
> > > I'd like to start with an implementation that skips some of these requirements
> > > initially, but what I really think we need to figure out is how we organize our
> > > ABIs to finally support these requirements.
>
> Note, there is an existing ABI in place, please use that. (It's highly extensible so
> it can support just about any ABI experiment that can even be turned into a smooth
> ABI replacement.)

Is there any way we could proceed without piling up work-arounds over Perf's ABI ?
At this point, the only benefit of growing from the Perf ABI is comparable to
dragging a ball and chain all along. Yes, I agree that a smooth transition
should be the target, but I disagree on the means. I propose to come up with a
new ABI and eventually move the perf tools to this ABI, which is not a split in
the tracing developers community; rather more a unification.

Which do you prefer: a sequence of continuous ABI breakages or a single ABI
switch when the new ABI is ready ? In terms of contributor and user pain, I
think the second option is much better. We'll have to keep the old Perf ABI
around for a while anyway to keep users and tool developers happy. As Linus
pointed out at KS, this ABI is now cast in stone. If we need to break it, the
only thing we can do is create a new one. He said that he will personally revert
any ABI-breaking tracing patch if he ever receives a single complaint from a
user. This is not a context in which we want to start playing games with the
existing ABIs.

Thanks,

Mathieu

--
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com
--
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/