[lttng-dev] Unexport of kvm_x86_ops vs tracer modules

Mathieu Desnoyers mathieu.desnoyers at efficios.com
Mon Apr 25 12:02:52 EDT 2022

----- On Apr 25, 2022, at 10:04 AM, Steven Rostedt rostedt at goodmis.org wrote:

> On Fri, 8 Apr 2022 14:06:53 -0400 (EDT)
> Mathieu Desnoyers <mathieu.desnoyers at efficios.com> wrote:
>> Indeed, the fact that the TP_fast_assign snippets are embedded in the
>> trace_event_raw_event_* symbols is an issue for LTTng. This ties those
>> to ftrace.
> Not just ftrace, perf does it too.
> Now another solution is to make the fast assigns available to anyone, and
> to allow you to simply pass in a pointer and size to have the data written
> into it. That is, you get the results of the TRACE_EVENT and not have to
> depend on internal data from the tracepoint.

If the fast assign can then be used on a field-per-field basis, maybe this
could work, but AFAIK the fast-assign macro is open-coded C, which makes this
not straightforward.

If it's a all-or-nothing approach where the fast-assign needs to serialize all
fields, this would require that lttng copies the data into a temporary area,
which is something I want to avoid for filtering and event notification per-field
payload capture purposes.



Mathieu Desnoyers
EfficiOS Inc.

More information about the lttng-dev mailing list