[ltt-dev] [RFC] UST instrumentation API
Nils Carlson
nils.carlson at ludd.ltu.se
Thu Apr 14 15:02:55 EDT 2011
On Apr 14, 2011, at 4:53 PM, David Goulet wrote:
> Hola,
>
> I like the idea of making thing more simpler and more "namespace
> oriented" for ust.
>
> On 11-04-13 04:59 PM, Mathieu Desnoyers wrote:
>> OK, so I took care of most of the instrumentation API, but some
>> questions need discussion.
>>
>> -> given that the API presented to users will be
>> "TRACE_EVENT()" (which
>> we should rename to something else to eliminate confusion), it might
>> make sense to make both of DECLARE_TRACE and DEFINE_TRACE internal to
>> tracepoints and don't expose them to the users.
>
> If I understand correctly what we want for ust, marker are staying,
> tracepoint are getting replaced by trace event? So, considering this
> fact, those two macros (declare_ and define_) should simply be not
> supported anymore and eventually get rid of them?
This sounds good, though it will mean that we will always generate the
"TRACE_EVENT" part of the tracepoint, that is, no tracepoints that
don't generate data... But I think this is fine.
>
>>
>> TRACE_EVENT() could be the macro replacing these, but I would
>> recommend
>> using a name like "TRACEPOINT_TEMPLATE()", which is what it really
>> is.
>>
>
> A good concern raised by Steven R. is the fact that "TRACE_EVENT"
> can and will confuse people with the ones in the kernel (in terms of
> google search mostly!). So, a name like "TRACEPOINT_TEMPLATE" says
> to me (normal person, no tracing knowledge, maybe my grand
> mother!) : this is tracepoint related, nothing to do with trace
> event and I don't want to modify a template right... (totally
> confused :P).
>
> So, should it be more "TRACE EVENT" user-space oriented for the name?
>
> UTRACE_EVENT --> confusing with utrace
> UPROBE... --> again, confusing with uprobe...
> UST_TRACE_EVENT --> ust stands for user-space tracing (and not LTTng
> user-space tracer :P)
>
> ... maybe we need more brainstorm... I'm out of ideas...
What about UST_EVENT ? Though I thought we were going to "share" the
tracepoints, so this might not be a good name, on the other hand, it
does sound good: Userspace Trace Event, in fact, I would say that we
can use this name even if we do share it. Its a good description.
>
>>
>> UST Markers (main API members):
>>
>> #include<ust/marker.h>
>>
>> ust_marker(name, "fmt", ...)
>> UST_MARKER_NOARGS
>> GET_UST_MARKER()
>> DEFINE_UST_MARKER(name, ...)
>> ust_marker_probe_unregister()
>> ust_marker_probe_register()
>> ust_marker_synchronize_unregister()
>> UST_MARKER_LIB
>>
>> Will be eventually phased-out with the new TRACEPOINT_TEMPLATE()
>> and CTF:
>> DEFINE_UST_MARKER_TP()
>> ust_marker_tp()
>>
>
> No problem. Simpler is better and this API will be UST specific so
> rtfm at that point :).
Just one question, these are UST internal right? I mean, not to be
confused with the ustctl functions?
/Nils
>
> Thanks
> David
>
>> Feedback is welcome,
>>
>> Thanks,
>>
>> Mathieu
>>
>
> --
> David Goulet
> LTTng project, DORSAL Lab.
>
> PGP/GPG : 1024D/16BD8563
> BE3C 672B 9331 9796 291A 14C6 4AF7 C14B 16BD 8563
>
> _______________________________________________
> ltt-dev mailing list
> ltt-dev at lists.casi.polymtl.ca
> http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev
More information about the lttng-dev
mailing list