* Matthew Khouzam ([email protected]) wrote: > To clarify: > A tracepoint event now takes > provider name /*a string no spaces, starts with a letter, alpha numeric > + _. */ > the event name /* same as above */ > TP_ARGS( type , arg , ... ) /* every odd element is the type of the > argument in the next place, must be a c type, not void... that's looking > for trouble */
yep. Although we might be able to deal with TP_ARGS(void) without much problem, but I'd need to adapt the code to support it. > /* every even element is the > name of the argument */ > /* theres always an even number > of args */ > TP_FIELDS( ctf_type( type, fieldname, arg) ... )); > > I like the improvements... I don't know if it's just me, but this makes > TP_ARGS and ctf_type much more harmonized, IMO. agreed. > Why is ctf_type not CTF_TYPE, it is a macro and can be clearer to the > user that the args need not be declared, they can be strings without > quotes or types? I'm sure you have a well thought out answer. :) too much CAPS makes my eyes hurt ;) > I really like that TP_ARGS() works. :) Mathieu > > > > > > On 11-11-13 02:12 PM, Mathieu Desnoyers wrote: > > * Mathieu Desnoyers ([email protected]) wrote: > >> Hi, > >> > >> I introduced the following API changes for LTTng-UST, after receiving > >> very appropriate feedback: > >> > >> Tracepoint API change: rename TRACEPOINT_SYSTEM to TRACEPOINT_PROVIDER > >> > >> Eliminates the confusion between the first TRACEPOINT_EVENT "provider" > >> argument and the "TRACEPOINT_SYSTEM", which need to be the same thing. > >> > >> and made sure TRACEPOINT_PROVIDER always match TRACEPOINT_SYSTEM by > >> adding a compiler warning: > >> > >> Tracepoints: add provider mismatch check > >> > >> Finally, rename TP_ARGS to TP_VARS, in preparation for combining > >> TP_PROTO and TP_ARGS: > >> > >> tracepoint API change: rename TP_ARGS to TP_VARS > >> > >> In preparation of folding of both TP_PROTO and TP_ARGS into TP_ARGS. > >> > >> Hopefully I'll succeed to getting both TP_PROTO and TP_VARS combined > >> into TP_ARGS, but even if this does not work out, TP_VARS seems much > >> more appropriate than TP_ARGS here. > > The API change is completed by the following commit: > > > > commit 63ef26930fe613a266cc69f5089cf643dd59b012 > > Author: Mathieu Desnoyers <[email protected]> > > Date: Sun Nov 13 14:07:57 2011 -0500 > > > > Tracepoint API change: combine TP_PROTO and TP_VARS into TP_ARGS, > > remove _NOARGS macros > > > > New API for tracepoints, combining the TP_PROTO and TP_VARS arguments > > into a single "TP_ARGS" macro. It takes up to 10 parameters (from 0 to > > 10). The "_NOARGS" special-case is not needed anymore: it can be > > achieved simply by passing an empty TP_ARGS: > > > > TP_ARGS(), > > > > to the standard tracepoint event declarations. > > > > Signed-off-by: Mathieu Desnoyers <[email protected]> > > > > Best regards, > > > > Mathieu > > > >> Thanks, > >> > >> Mathieu > >> > >> -- > >> Mathieu Desnoyers > >> Operating System Efficiency R&D Consultant > >> EfficiOS Inc. > >> http://www.efficios.com > > _______________________________________________ > ltt-dev mailing list > [email protected] > http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev > -- Mathieu Desnoyers Operating System Efficiency R&D Consultant EfficiOS Inc. http://www.efficios.com _______________________________________________ ltt-dev mailing list [email protected] http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev
