Fix: return -errno value on error in run_as mkdir
[lttng-tools.git] / src / common / sessiond-comm / sessiond-comm.h
index c52a6caa0575272788797786b373b85ba286bce9..39ab69bf92946f5f15962d64b8e2e74215cccf96 100644 (file)
@@ -88,6 +88,7 @@ enum lttcomm_sessiond_command {
        LTTNG_SNAPSHOT_LIST_OUTPUT          = 27,
        LTTNG_SNAPSHOT_RECORD               = 28,
        LTTNG_CREATE_SESSION_SNAPSHOT       = 29,
+       LTTNG_CREATE_SESSION_LIVE           = 30,
 };
 
 enum lttcomm_relayd_command {
@@ -102,6 +103,9 @@ enum lttcomm_relayd_command {
        RELAYD_QUIESCENT_CONTROL            = 9,
        RELAYD_BEGIN_DATA_PENDING           = 10,
        RELAYD_END_DATA_PENDING             = 11,
+       RELAYD_ADD_INDEX                    = 12,
+       RELAYD_SEND_INDEX                   = 13,
+       RELAYD_CLOSE_INDEX                  = 14,
 };
 
 /*
@@ -255,6 +259,10 @@ struct lttcomm_session_msg {
                        uint32_t wait;
                        struct lttng_snapshot_output output;
                } LTTNG_PACKED snapshot_record;
+               struct {
+                       uint32_t nb_uri;
+                       unsigned int timer_interval;    /* usec */
+               } LTTNG_PACKED session_live;
        } u;
 } LTTNG_PACKED;
 
@@ -324,6 +332,8 @@ struct lttcomm_consumer_msg {
                        uint32_t tracefile_count; /* number of tracefiles */
                        /* If the channel's streams have to be monitored or not. */
                        uint32_t monitor;
+                       /* timer to check the streams usage in live mode (usec). */
+                       unsigned int live_timer_interval;
                } LTTNG_PACKED channel; /* Only used by Kernel. */
                struct {
                        uint64_t stream_key;
@@ -352,6 +362,7 @@ struct lttcomm_consumer_msg {
                        int32_t overwrite;                      /* 1: overwrite, 0: discard */
                        uint32_t switch_timer_interval;         /* usec */
                        uint32_t read_timer_interval;           /* usec */
+                       unsigned int live_timer_interval;               /* usec */
                        int32_t output;                         /* splice, mmap */
                        int32_t type;                           /* metadata or per_cpu */
                        uint64_t session_id;                    /* Tracing session id */
@@ -368,6 +379,13 @@ struct lttcomm_consumer_msg {
                        uint64_t session_id_per_pid;    /* Per-pid session ID. */
                        /* Tells the consumer if the stream should be or not monitored. */
                        uint32_t monitor;
+                       /*
+                        * For UST per UID buffers, this is the application UID of the
+                        * channel.  This can be different from the user UID requesting the
+                        * channel creation and used for the rights on the stream file
+                        * because the application can be in the tracing for instance.
+                        */
+                       uint32_t ust_app_uid;
                } LTTNG_PACKED ask_channel;
                struct {
                        uint64_t key;
This page took 0.025635 seconds and 5 git commands to generate.