X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Flttng-ust-abi.h;h=dc6ad7ab68dc11a6228f57908f5250928f8516b2;hb=ceed52b545103258e84f1c7040700be9dbbbaec6;hp=f726c8b576e707a69a0cd3508f77c184d21706c4;hpb=3f3c65dc272231540b815e48c3124ab831ca990b;p=lttng-tools.git diff --git a/src/bin/lttng-sessiond/lttng-ust-abi.h b/src/bin/lttng-sessiond/lttng-ust-abi.h index f726c8b57..dc6ad7ab6 100644 --- a/src/bin/lttng-sessiond/lttng-ust-abi.h +++ b/src/bin/lttng-sessiond/lttng-ust-abi.h @@ -11,11 +11,15 @@ * THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED * OR IMPLIED. ANY USE IS AT YOUR OWN RISK. * - * Permission is hereby granted to use or copy this program - * for any purpose, provided the above notices are retained on all copies. - * Permission to modify the code and to distribute modified code is granted, - * provided the above notices are retained, and a notice that the code was - * modified is included with the above copyright notice. + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. */ #include @@ -84,6 +88,23 @@ struct lttng_ust_event { } u; }; +enum lttng_ust_field_type { + LTTNG_UST_FIELD_OTHER = 0, + LTTNG_UST_FIELD_INTEGER = 1, + LTTNG_UST_FIELD_ENUM = 2, + LTTNG_UST_FIELD_FLOAT = 3, + LTTNG_UST_FIELD_STRING = 4, +}; + +#define LTTNG_UST_FIELD_ITER_PADDING LTTNG_UST_SYM_NAME_LEN + 32 +struct lttng_ust_field_iter { + char event_name[LTTNG_UST_SYM_NAME_LEN]; + char field_name[LTTNG_UST_SYM_NAME_LEN]; + enum lttng_ust_field_type type; + int loglevel; /* event loglevel */ + char padding[LTTNG_UST_FIELD_ITER_PADDING]; +}; + enum lttng_ust_context_type { LTTNG_UST_CONTEXT_VTID = 0, LTTNG_UST_CONTEXT_VPID = 1, @@ -163,6 +184,7 @@ struct lttng_ust_calibrate { #define LTTNG_UST_TRACEPOINT_LIST _UST_CMD(0x42) #define LTTNG_UST_WAIT_QUIESCENT _UST_CMD(0x43) #define LTTNG_UST_REGISTER_DONE _UST_CMD(0x44) +#define LTTNG_UST_TRACEPOINT_FIELD_LIST _UST_CMD(0x45) /* Session FD commands */ #define LTTNG_UST_METADATA \ @@ -189,6 +211,7 @@ struct lttng_ust_calibrate { /* Tracepoint list commands */ #define LTTNG_UST_TRACEPOINT_LIST_GET _UST_CMD(0x90) +#define LTTNG_UST_TRACEPOINT_FIELD_LIST_GET _UST_CMD(0x91) #define LTTNG_UST_ROOT_HANDLE 0 @@ -205,6 +228,9 @@ union ust_args { int *wait_fd; uint64_t *memory_map_size; } stream; + struct { + struct lttng_ust_field_iter entry; + } field_list; }; struct lttng_ust_objd_ops {