Close stream and channel file descriptors as soon as passed to sessiond
[lttng-ust.git] / include / lttng / ust-abi.h
index ae95af6b222b494a3bc3c7eb350b4e793eede7af..6a15e0dd346fa2e07e522e96d8627a5234b5f074 100644 (file)
@@ -20,7 +20,7 @@
 
 #include <stdint.h>
 
-#define LTTNG_UST_SYM_NAME_LEN 128
+#define LTTNG_UST_SYM_NAME_LEN 256
 
 #define LTTNG_UST_COMM_VERSION_MAJOR           0
 #define LTTNG_UST_COMM_VERSION_MINOR           1
@@ -49,10 +49,6 @@ struct lttng_ust_channel {
        unsigned int switch_timer_interval;     /* usecs */
        unsigned int read_timer_interval;       /* usecs */
        enum lttng_ust_output output;           /* output mode */
-       /* The following fields are used internally within UST. */
-       int shm_fd;
-       int wait_fd;
-       uint64_t memory_map_size;
 };
 
 /*
@@ -98,10 +94,10 @@ struct lttng_ust_channel_attr {
        enum lttng_ust_output output;           /* splice, mmap */
 };
 
-struct lttng_ust_loglevel {
-       char provider[LTTNG_UST_SYM_NAME_LEN];
-       char loglevel[LTTNG_UST_SYM_NAME_LEN];
-       int64_t value;
+struct lttng_ust_tracepoint_iter {
+       char name[LTTNG_UST_SYM_NAME_LEN];      /* provider:name */
+       char loglevel[LTTNG_UST_SYM_NAME_LEN];  /* loglevel */
+       int64_t loglevel_value;
 };
 
 struct lttng_ust_object_data {
@@ -127,7 +123,6 @@ struct lttng_ust_object_data {
 #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_LOGLEVEL_LIST                        _UST_CMD(0x45)
 
 /* Session FD commands */
 #define LTTNG_UST_METADATA                     \
@@ -155,15 +150,26 @@ struct lttng_ust_object_data {
 /* Tracepoint list commands */
 #define LTTNG_UST_TRACEPOINT_LIST_GET          _UST_CMD(0x90)
 
-/* Loglevel list commands */
-#define LTTNG_UST_LOGLEVEL_LIST_GET            _UST_CMD(0xA0)
-
 #define LTTNG_UST_ROOT_HANDLE  0
 
 struct lttng_ust_obj;
 
+union ust_args {
+       struct {
+               int *shm_fd;
+               int *wait_fd;
+               uint64_t *memory_map_size;
+       } channel;
+       struct {
+               int *shm_fd;
+               int *wait_fd;
+               uint64_t *memory_map_size;
+       } stream;
+};
+
 struct lttng_ust_objd_ops {
-       long (*cmd)(int objd, unsigned int cmd, unsigned long arg);
+       long (*cmd)(int objd, unsigned int cmd, unsigned long arg,
+               union ust_args *args);
        int (*release)(int objd);
 };
 
This page took 0.025262 seconds and 4 git commands to generate.