X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=include%2Flttng%2Ftracepoint.h;h=7e7f7aca1360f696d45a0107b81c8cf257a140b1;hb=6eddcb066dfe822dcf187715f35e7dbab84dabdf;hp=48781e8ebcf01de30106fa3f78fc52e88f65cf09;hpb=0274f7f24e55825f2a51804d50100676d468c06d;p=lttng-ust.git diff --git a/include/lttng/tracepoint.h b/include/lttng/tracepoint.h index 48781e8e..7e7f7aca 100644 --- a/include/lttng/tracepoint.h +++ b/include/lttng/tracepoint.h @@ -31,16 +31,16 @@ */ #include -#define _LTTNG_UST_SDT_NARG(...) \ - __LTTNG_UST_SDT_NARG(__VA_ARGS__, 12,11,10,9,8,7,6,5,4,3,2,1,0) +#define LTTNG_UST__SDT_NARG(...) \ + LTTNG_UST___SDT_NARG(__VA_ARGS__, 12,11,10,9,8,7,6,5,4,3,2,1,0) -#define __LTTNG_UST_SDT_NARG(_0,_1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12, N, ...) N +#define LTTNG_UST___SDT_NARG(_0,_1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12, N, ...) N -#define _LTTNG_UST_SDT_PROBE_N(provider, name, N, ...) \ +#define LTTNG_UST__SDT_PROBE_N(provider, name, N, ...) \ _SDT_PROBE(provider, name, N, (__VA_ARGS__)) #define LTTNG_UST_STAP_PROBEV(provider, name, ...) \ - _LTTNG_UST_SDT_PROBE_N(provider, name, _LTTNG_UST_SDT_NARG(0, ##__VA_ARGS__), ##__VA_ARGS__) + LTTNG_UST__SDT_PROBE_N(provider, name, LTTNG_UST__SDT_NARG(0, ##__VA_ARGS__), ##__VA_ARGS__) #else #define LTTNG_UST_STAP_PROBEV(...) @@ -71,91 +71,91 @@ extern "C" { * fine too). * Each tuple is also separated by a comma. */ -#define __TP_COMBINE_TOKENS(_tokena, _tokenb) \ +#define LTTNG_UST___TP_COMBINE_TOKENS(_tokena, _tokenb) \ _tokena##_tokenb -#define _TP_COMBINE_TOKENS(_tokena, _tokenb) \ - __TP_COMBINE_TOKENS(_tokena, _tokenb) -#define __TP_COMBINE_TOKENS3(_tokena, _tokenb, _tokenc) \ +#define LTTNG_UST__TP_COMBINE_TOKENS(_tokena, _tokenb) \ + LTTNG_UST___TP_COMBINE_TOKENS(_tokena, _tokenb) +#define LTTNG_UST___TP_COMBINE_TOKENS3(_tokena, _tokenb, _tokenc) \ _tokena##_tokenb##_tokenc -#define _TP_COMBINE_TOKENS3(_tokena, _tokenb, _tokenc) \ - __TP_COMBINE_TOKENS3(_tokena, _tokenb, _tokenc) -#define __TP_COMBINE_TOKENS4(_tokena, _tokenb, _tokenc, _tokend) \ +#define LTTNG_UST__TP_COMBINE_TOKENS3(_tokena, _tokenb, _tokenc) \ + LTTNG_UST___TP_COMBINE_TOKENS3(_tokena, _tokenb, _tokenc) +#define LTTNG_UST___TP_COMBINE_TOKENS4(_tokena, _tokenb, _tokenc, _tokend) \ _tokena##_tokenb##_tokenc##_tokend -#define _TP_COMBINE_TOKENS4(_tokena, _tokenb, _tokenc, _tokend) \ - __TP_COMBINE_TOKENS4(_tokena, _tokenb, _tokenc, _tokend) +#define LTTNG_UST__TP_COMBINE_TOKENS4(_tokena, _tokenb, _tokenc, _tokend) \ + LTTNG_UST___TP_COMBINE_TOKENS4(_tokena, _tokenb, _tokenc, _tokend) /* - * _TP_EXVAR* extract the var names. - * _TP_EXVAR1 and _TP_EXDATA_VAR1 are needed for -std=c99. + * LTTNG_UST__TP_EXVAR* extract the var names. + * LTTNG_UST__TP_EXVAR1 and LTTNG_UST__TP_EXDATA_VAR1 are needed for -std=c99. */ -#define _TP_EXVAR0() -#define _TP_EXVAR1(a) -#define _TP_EXVAR2(a,b) b -#define _TP_EXVAR4(a,b,c,d) b,d -#define _TP_EXVAR6(a,b,c,d,e,f) b,d,f -#define _TP_EXVAR8(a,b,c,d,e,f,g,h) b,d,f,h -#define _TP_EXVAR10(a,b,c,d,e,f,g,h,i,j) b,d,f,h,j -#define _TP_EXVAR12(a,b,c,d,e,f,g,h,i,j,k,l) b,d,f,h,j,l -#define _TP_EXVAR14(a,b,c,d,e,f,g,h,i,j,k,l,m,n) b,d,f,h,j,l,n -#define _TP_EXVAR16(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) b,d,f,h,j,l,n,p -#define _TP_EXVAR18(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r) b,d,f,h,j,l,n,p,r -#define _TP_EXVAR20(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t) b,d,f,h,j,l,n,p,r,t - -#define _TP_EXDATA_VAR0() __tp_data -#define _TP_EXDATA_VAR1(a) __tp_data -#define _TP_EXDATA_VAR2(a,b) __tp_data,b -#define _TP_EXDATA_VAR4(a,b,c,d) __tp_data,b,d -#define _TP_EXDATA_VAR6(a,b,c,d,e,f) __tp_data,b,d,f -#define _TP_EXDATA_VAR8(a,b,c,d,e,f,g,h) __tp_data,b,d,f,h -#define _TP_EXDATA_VAR10(a,b,c,d,e,f,g,h,i,j) __tp_data,b,d,f,h,j -#define _TP_EXDATA_VAR12(a,b,c,d,e,f,g,h,i,j,k,l) __tp_data,b,d,f,h,j,l -#define _TP_EXDATA_VAR14(a,b,c,d,e,f,g,h,i,j,k,l,m,n) __tp_data,b,d,f,h,j,l,n -#define _TP_EXDATA_VAR16(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) __tp_data,b,d,f,h,j,l,n,p -#define _TP_EXDATA_VAR18(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r) __tp_data,b,d,f,h,j,l,n,p,r -#define _TP_EXDATA_VAR20(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t) __tp_data,b,d,f,h,j,l,n,p,r,t +#define LTTNG_UST__TP_EXVAR0() +#define LTTNG_UST__TP_EXVAR1(a) +#define LTTNG_UST__TP_EXVAR2(a,b) b +#define LTTNG_UST__TP_EXVAR4(a,b,c,d) b,d +#define LTTNG_UST__TP_EXVAR6(a,b,c,d,e,f) b,d,f +#define LTTNG_UST__TP_EXVAR8(a,b,c,d,e,f,g,h) b,d,f,h +#define LTTNG_UST__TP_EXVAR10(a,b,c,d,e,f,g,h,i,j) b,d,f,h,j +#define LTTNG_UST__TP_EXVAR12(a,b,c,d,e,f,g,h,i,j,k,l) b,d,f,h,j,l +#define LTTNG_UST__TP_EXVAR14(a,b,c,d,e,f,g,h,i,j,k,l,m,n) b,d,f,h,j,l,n +#define LTTNG_UST__TP_EXVAR16(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) b,d,f,h,j,l,n,p +#define LTTNG_UST__TP_EXVAR18(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r) b,d,f,h,j,l,n,p,r +#define LTTNG_UST__TP_EXVAR20(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t) b,d,f,h,j,l,n,p,r,t + +#define LTTNG_UST__TP_EXDATA_VAR0() __tp_data +#define LTTNG_UST__TP_EXDATA_VAR1(a) __tp_data +#define LTTNG_UST__TP_EXDATA_VAR2(a,b) __tp_data,b +#define LTTNG_UST__TP_EXDATA_VAR4(a,b,c,d) __tp_data,b,d +#define LTTNG_UST__TP_EXDATA_VAR6(a,b,c,d,e,f) __tp_data,b,d,f +#define LTTNG_UST__TP_EXDATA_VAR8(a,b,c,d,e,f,g,h) __tp_data,b,d,f,h +#define LTTNG_UST__TP_EXDATA_VAR10(a,b,c,d,e,f,g,h,i,j) __tp_data,b,d,f,h,j +#define LTTNG_UST__TP_EXDATA_VAR12(a,b,c,d,e,f,g,h,i,j,k,l) __tp_data,b,d,f,h,j,l +#define LTTNG_UST__TP_EXDATA_VAR14(a,b,c,d,e,f,g,h,i,j,k,l,m,n) __tp_data,b,d,f,h,j,l,n +#define LTTNG_UST__TP_EXDATA_VAR16(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) __tp_data,b,d,f,h,j,l,n,p +#define LTTNG_UST__TP_EXDATA_VAR18(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r) __tp_data,b,d,f,h,j,l,n,p,r +#define LTTNG_UST__TP_EXDATA_VAR20(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t) __tp_data,b,d,f,h,j,l,n,p,r,t /* - * _TP_EXPROTO* extract tuples of type, var. - * _TP_EXPROTO1 and _TP_EXDATA_PROTO1 are needed for -std=c99. + * LTTNG_UST__TP_EXPROTO* extract tuples of type, var. + * LTTNG_UST__TP_EXPROTO1 and LTTNG_UST__TP_EXDATA_PROTO1 are needed for -std=c99. */ -#define _TP_EXPROTO0() void -#define _TP_EXPROTO1(a) void -#define _TP_EXPROTO2(a,b) a b -#define _TP_EXPROTO4(a,b,c,d) a b,c d -#define _TP_EXPROTO6(a,b,c,d,e,f) a b,c d,e f -#define _TP_EXPROTO8(a,b,c,d,e,f,g,h) a b,c d,e f,g h -#define _TP_EXPROTO10(a,b,c,d,e,f,g,h,i,j) a b,c d,e f,g h,i j -#define _TP_EXPROTO12(a,b,c,d,e,f,g,h,i,j,k,l) a b,c d,e f,g h,i j,k l -#define _TP_EXPROTO14(a,b,c,d,e,f,g,h,i,j,k,l,m,n) a b,c d,e f,g h,i j,k l,m n -#define _TP_EXPROTO16(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) a b,c d,e f,g h,i j,k l,m n,o p -#define _TP_EXPROTO18(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r) a b,c d,e f,g h,i j,k l,m n,o p,q r -#define _TP_EXPROTO20(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t) a b,c d,e f,g h,i j,k l,m n,o p,q r,s t - -#define _TP_EXDATA_PROTO0() void *__tp_data -#define _TP_EXDATA_PROTO1(a) void *__tp_data -#define _TP_EXDATA_PROTO2(a,b) void *__tp_data,a b -#define _TP_EXDATA_PROTO4(a,b,c,d) void *__tp_data,a b,c d -#define _TP_EXDATA_PROTO6(a,b,c,d,e,f) void *__tp_data,a b,c d,e f -#define _TP_EXDATA_PROTO8(a,b,c,d,e,f,g,h) void *__tp_data,a b,c d,e f,g h -#define _TP_EXDATA_PROTO10(a,b,c,d,e,f,g,h,i,j) void *__tp_data,a b,c d,e f,g h,i j -#define _TP_EXDATA_PROTO12(a,b,c,d,e,f,g,h,i,j,k,l) void *__tp_data,a b,c d,e f,g h,i j,k l -#define _TP_EXDATA_PROTO14(a,b,c,d,e,f,g,h,i,j,k,l,m,n) void *__tp_data,a b,c d,e f,g h,i j,k l,m n -#define _TP_EXDATA_PROTO16(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) void *__tp_data,a b,c d,e f,g h,i j,k l,m n,o p -#define _TP_EXDATA_PROTO18(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r) void *__tp_data,a b,c d,e f,g h,i j,k l,m n,o p,q r -#define _TP_EXDATA_PROTO20(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t) void *__tp_data,a b,c d,e f,g h,i j,k l,m n,o p,q r,s t +#define LTTNG_UST__TP_EXPROTO0() void +#define LTTNG_UST__TP_EXPROTO1(a) void +#define LTTNG_UST__TP_EXPROTO2(a,b) a b +#define LTTNG_UST__TP_EXPROTO4(a,b,c,d) a b,c d +#define LTTNG_UST__TP_EXPROTO6(a,b,c,d,e,f) a b,c d,e f +#define LTTNG_UST__TP_EXPROTO8(a,b,c,d,e,f,g,h) a b,c d,e f,g h +#define LTTNG_UST__TP_EXPROTO10(a,b,c,d,e,f,g,h,i,j) a b,c d,e f,g h,i j +#define LTTNG_UST__TP_EXPROTO12(a,b,c,d,e,f,g,h,i,j,k,l) a b,c d,e f,g h,i j,k l +#define LTTNG_UST__TP_EXPROTO14(a,b,c,d,e,f,g,h,i,j,k,l,m,n) a b,c d,e f,g h,i j,k l,m n +#define LTTNG_UST__TP_EXPROTO16(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) a b,c d,e f,g h,i j,k l,m n,o p +#define LTTNG_UST__TP_EXPROTO18(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r) a b,c d,e f,g h,i j,k l,m n,o p,q r +#define LTTNG_UST__TP_EXPROTO20(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t) a b,c d,e f,g h,i j,k l,m n,o p,q r,s t + +#define LTTNG_UST__TP_EXDATA_PROTO0() void *__tp_data +#define LTTNG_UST__TP_EXDATA_PROTO1(a) void *__tp_data +#define LTTNG_UST__TP_EXDATA_PROTO2(a,b) void *__tp_data,a b +#define LTTNG_UST__TP_EXDATA_PROTO4(a,b,c,d) void *__tp_data,a b,c d +#define LTTNG_UST__TP_EXDATA_PROTO6(a,b,c,d,e,f) void *__tp_data,a b,c d,e f +#define LTTNG_UST__TP_EXDATA_PROTO8(a,b,c,d,e,f,g,h) void *__tp_data,a b,c d,e f,g h +#define LTTNG_UST__TP_EXDATA_PROTO10(a,b,c,d,e,f,g,h,i,j) void *__tp_data,a b,c d,e f,g h,i j +#define LTTNG_UST__TP_EXDATA_PROTO12(a,b,c,d,e,f,g,h,i,j,k,l) void *__tp_data,a b,c d,e f,g h,i j,k l +#define LTTNG_UST__TP_EXDATA_PROTO14(a,b,c,d,e,f,g,h,i,j,k,l,m,n) void *__tp_data,a b,c d,e f,g h,i j,k l,m n +#define LTTNG_UST__TP_EXDATA_PROTO16(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) void *__tp_data,a b,c d,e f,g h,i j,k l,m n,o p +#define LTTNG_UST__TP_EXDATA_PROTO18(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r) void *__tp_data,a b,c d,e f,g h,i j,k l,m n,o p,q r +#define LTTNG_UST__TP_EXDATA_PROTO20(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t) void *__tp_data,a b,c d,e f,g h,i j,k l,m n,o p,q r,s t /* Preprocessor trick to count arguments. Inspired from sdt.h. */ -#define _TP_NARGS(...) __TP_NARGS(__VA_ARGS__, 20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0) -#define __TP_NARGS(_0,_1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20, N, ...) N -#define _TP_PROTO_N(N, ...) _TP_PARAMS(_TP_COMBINE_TOKENS(_TP_EXPROTO, N)(__VA_ARGS__)) -#define _TP_VAR_N(N, ...) _TP_PARAMS(_TP_COMBINE_TOKENS(_TP_EXVAR, N)(__VA_ARGS__)) -#define _TP_DATA_PROTO_N(N, ...) _TP_PARAMS(_TP_COMBINE_TOKENS(_TP_EXDATA_PROTO, N)(__VA_ARGS__)) -#define _TP_DATA_VAR_N(N, ...) _TP_PARAMS(_TP_COMBINE_TOKENS(_TP_EXDATA_VAR, N)(__VA_ARGS__)) -#define _TP_ARGS_PROTO(...) _TP_PROTO_N(_TP_NARGS(0, ##__VA_ARGS__), ##__VA_ARGS__) -#define _TP_ARGS_VAR(...) _TP_VAR_N(_TP_NARGS(0, ##__VA_ARGS__), ##__VA_ARGS__) -#define _TP_ARGS_DATA_PROTO(...) _TP_DATA_PROTO_N(_TP_NARGS(0, ##__VA_ARGS__), ##__VA_ARGS__) -#define _TP_ARGS_DATA_VAR(...) _TP_DATA_VAR_N(_TP_NARGS(0, ##__VA_ARGS__), ##__VA_ARGS__) -#define _TP_PARAMS(...) __VA_ARGS__ +#define LTTNG_UST__TP_NARGS(...) LTTNG_UST___TP_NARGS(__VA_ARGS__, 20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0) +#define LTTNG_UST___TP_NARGS(_0,_1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20, N, ...) N +#define LTTNG_UST__TP_PROTO_N(N, ...) LTTNG_UST__TP_PARAMS(LTTNG_UST__TP_COMBINE_TOKENS(LTTNG_UST__TP_EXPROTO, N)(__VA_ARGS__)) +#define LTTNG_UST__TP_VAR_N(N, ...) LTTNG_UST__TP_PARAMS(LTTNG_UST__TP_COMBINE_TOKENS(LTTNG_UST__TP_EXVAR, N)(__VA_ARGS__)) +#define LTTNG_UST__TP_DATA_PROTO_N(N, ...) LTTNG_UST__TP_PARAMS(LTTNG_UST__TP_COMBINE_TOKENS(LTTNG_UST__TP_EXDATA_PROTO, N)(__VA_ARGS__)) +#define LTTNG_UST__TP_DATA_VAR_N(N, ...) LTTNG_UST__TP_PARAMS(LTTNG_UST__TP_COMBINE_TOKENS(LTTNG_UST__TP_EXDATA_VAR, N)(__VA_ARGS__)) +#define LTTNG_UST__TP_ARGS_PROTO(...) LTTNG_UST__TP_PROTO_N(LTTNG_UST__TP_NARGS(0, ##__VA_ARGS__), ##__VA_ARGS__) +#define LTTNG_UST__TP_ARGS_VAR(...) LTTNG_UST__TP_VAR_N(LTTNG_UST__TP_NARGS(0, ##__VA_ARGS__), ##__VA_ARGS__) +#define LTTNG_UST__TP_ARGS_DATA_PROTO(...) LTTNG_UST__TP_DATA_PROTO_N(LTTNG_UST__TP_NARGS(0, ##__VA_ARGS__), ##__VA_ARGS__) +#define LTTNG_UST__TP_ARGS_DATA_VAR(...) LTTNG_UST__TP_DATA_VAR_N(LTTNG_UST__TP_NARGS(0, ##__VA_ARGS__), ##__VA_ARGS__) +#define LTTNG_UST__TP_PARAMS(...) __VA_ARGS__ /* * sizeof(#_provider) - 1 : length of the provider string (excluding \0). @@ -184,10 +184,10 @@ extern "C" { #define LTTNG_UST__DECLARE_TRACEPOINT(_provider, _name, ...) \ extern struct lttng_ust_tracepoint lttng_ust_tracepoint_##_provider##___##_name; \ static inline \ -void lttng_ust_tracepoint_cb_##_provider##___##_name(_TP_ARGS_PROTO(__VA_ARGS__)) \ +void lttng_ust_tracepoint_cb_##_provider##___##_name(LTTNG_UST__TP_ARGS_PROTO(__VA_ARGS__)) \ __attribute__((always_inline, unused)) lttng_ust_notrace; \ static \ -void lttng_ust_tracepoint_cb_##_provider##___##_name(_TP_ARGS_PROTO(__VA_ARGS__)) \ +void lttng_ust_tracepoint_cb_##_provider##___##_name(LTTNG_UST__TP_ARGS_PROTO(__VA_ARGS__)) \ { \ struct lttng_ust_tracepoint_probe *__tp_probe; \ \ @@ -201,8 +201,8 @@ void lttng_ust_tracepoint_cb_##_provider##___##_name(_TP_ARGS_PROTO(__VA_ARGS__) void (*__tp_cb)(void) = __tp_probe->func; \ void *__tp_data = __tp_probe->data; \ \ - URCU_FORCE_CAST(void (*)(_TP_ARGS_DATA_PROTO(__VA_ARGS__)), __tp_cb) \ - (_TP_ARGS_DATA_VAR(__VA_ARGS__)); \ + URCU_FORCE_CAST(void (*)(LTTNG_UST__TP_ARGS_DATA_PROTO(__VA_ARGS__)), __tp_cb) \ + (LTTNG_UST__TP_ARGS_DATA_VAR(__VA_ARGS__)); \ } while ((++__tp_probe)->func); \ end: \ tp_rcu_read_unlock(); \ @@ -713,14 +713,14 @@ __tracepoints__ptrs_destroy(void) */ #define LTTNG_UST_TRACEPOINT_EVENT(provider, name, args, fields) \ - LTTNG_UST__DECLARE_TRACEPOINT(provider, name, _TP_PARAMS(args)) \ - LTTNG_UST__DEFINE_TRACEPOINT(provider, name, _TP_PARAMS(args)) + LTTNG_UST__DECLARE_TRACEPOINT(provider, name, LTTNG_UST__TP_PARAMS(args)) \ + LTTNG_UST__DEFINE_TRACEPOINT(provider, name, LTTNG_UST__TP_PARAMS(args)) #define LTTNG_UST_TRACEPOINT_EVENT_CLASS(provider, name, args, fields) #define LTTNG_UST_TRACEPOINT_EVENT_INSTANCE(provider, _template, name, args) \ - LTTNG_UST__DECLARE_TRACEPOINT(provider, name, _TP_PARAMS(args)) \ - LTTNG_UST__DEFINE_TRACEPOINT(provider, name, _TP_PARAMS(args)) + LTTNG_UST__DECLARE_TRACEPOINT(provider, name, LTTNG_UST__TP_PARAMS(args)) \ + LTTNG_UST__DEFINE_TRACEPOINT(provider, name, LTTNG_UST__TP_PARAMS(args)) #if LTTNG_UST_COMPAT_API(0) #define TRACEPOINT_EVENT LTTNG_UST_TRACEPOINT_EVENT