RE: [tip:tracing/core] Revert "x86, bts: reenable ptrace branch trace support"

Peter Zijlstra
2009-06-11T08:09:18Z

On Thu, 2009-06-11 at 08:17 +0100, Metzger, Markus T wrote:
> >That would indeed keep the proposed ABI workable, what I'm still not
> >liking is that this buffer is in-kernel, but I guess that might be
> >something for other people to have an opinion on.
>
> The alternative would be to give a user-allocated buffer to the tracing h/w.
>
> We would need to take precautions to prevent the user from messing around
> with that buffer while the h/w is writing to it. Other code uses the kernel-
> allocated buffer plus copy_to_user() approach, as well.
>
> Further, it would require the user to interpret the various tracing formats,
> whereas the existing interface provides an architecture-independent format.
>
>
> Does anybody have concerns on using an in-kernel buffer and providing a
> copy_to_user() interface?

Ah, if you mmap() you can do without copy_to_user().

Either way, you have to make sure the buffer is mlocked() anyway, since
you're wanting to fill it from interrupt context.

The advantage (imo) from letting the user set it up is that you don't
need those separate allocation routines.

But yes, it would expose the data to the user, but one could keep it
opaque data, without requiring the user to be able to interpret it.

Of course a data format aligned with the interface capabilities would be
nicer ;-)