Re: [PATCH v9 3.2 0/9] Uprobes patchset with perf probe support

From: Ingo Molnar
Date: Thu Jan 26 2012 - 06:11:19 EST



* Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:

> On Tue, 2012-01-17 at 10:39 +0100, Ingo Molnar wrote:
>
> > I did not suggest anything complex or intrusive: just basically
> > unify the namespace, have a single set of callbacks, and call
> > into the uprobes and perf code from those callbacks - out of the
> > sight of MM code.
> >
> > That unified namespace could be called:
> >
> > event_mmap(...);
> > event_fork(...);
> >
> > etc. - and from event_mmap() you could do a simple:
> >
> > perf_event_mmap(...)
> > uprobes_event_mmap(...)
> >
> > [ Once all this is updated to use tracepoints it would turn into
> > a notification callback chain kind of thing. ]
>
> We keep disagreeing on this. I utterly loathe hiding stuff in
> notifier lists. It makes it completely non-obvious who all
> does what.

My immediate suggestion was not a notifier list but an
open-coded list of function calls done in helper inline
functions - to minimize the impact of the callbacks on mm/.

> Another very good reason to not do what you suggest is that
> perf_event_mmap() is a pure consumer, it doesn't have a return
> value, whereas uprobes_mmap() can actually fail the mmap.

You know that i disagree with that, there is no fundamental
reason why event callbacks couldnt participate in program logic,
as long as the call site explicitly wants such side effects. It
avoids senseless duplication of callbacks.

Anyway, if Andrew is fine with the current callbacks as-is then
it's fine to me as well.

Thanks,

Ingo
--
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/