projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Implement the relayd live features
[lttng-tools.git]
/
src
/
common
/
sessiond-comm
/
sessiond-comm.h
diff --git
a/src/common/sessiond-comm/sessiond-comm.h
b/src/common/sessiond-comm/sessiond-comm.h
index c52a6caa0575272788797786b373b85ba286bce9..f86ba732301aa6c6d1b035eb822c15bebd884438 100644
(file)
--- a/
src/common/sessiond-comm/sessiond-comm.h
+++ b/
src/common/sessiond-comm/sessiond-comm.h
@@
-88,6
+88,7
@@
enum lttcomm_sessiond_command {
LTTNG_SNAPSHOT_LIST_OUTPUT = 27,
LTTNG_SNAPSHOT_RECORD = 28,
LTTNG_CREATE_SESSION_SNAPSHOT = 29,
LTTNG_SNAPSHOT_LIST_OUTPUT = 27,
LTTNG_SNAPSHOT_RECORD = 28,
LTTNG_CREATE_SESSION_SNAPSHOT = 29,
+ LTTNG_CREATE_SESSION_LIVE = 30,
};
enum lttcomm_relayd_command {
};
enum lttcomm_relayd_command {
@@
-102,6
+103,11
@@
enum lttcomm_relayd_command {
RELAYD_QUIESCENT_CONTROL = 9,
RELAYD_BEGIN_DATA_PENDING = 10,
RELAYD_END_DATA_PENDING = 11,
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,
+ /* Live-reading commands. */
+ RELAYD_LIST_SESSIONS = 15,
};
/*
};
/*
@@
-255,6
+261,10
@@
struct lttcomm_session_msg {
uint32_t wait;
struct lttng_snapshot_output output;
} LTTNG_PACKED snapshot_record;
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;
} u;
} LTTNG_PACKED;
@@
-324,6
+334,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;
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;
} LTTNG_PACKED channel; /* Only used by Kernel. */
struct {
uint64_t stream_key;
@@
-339,6
+351,8
@@
struct lttcomm_consumer_msg {
struct lttcomm_relayd_sock sock;
/* Tracing session id associated to the relayd. */
uint64_t session_id;
struct lttcomm_relayd_sock sock;
/* Tracing session id associated to the relayd. */
uint64_t session_id;
+ /* Relayd session id, only used with control socket. */
+ uint64_t relayd_session_id;
} LTTNG_PACKED relayd_sock;
struct {
uint64_t net_seq_idx;
} LTTNG_PACKED relayd_sock;
struct {
uint64_t net_seq_idx;
@@
-352,6
+366,7
@@
struct lttcomm_consumer_msg {
int32_t overwrite; /* 1: overwrite, 0: discard */
uint32_t switch_timer_interval; /* usec */
uint32_t read_timer_interval; /* usec */
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 */
int32_t output; /* splice, mmap */
int32_t type; /* metadata or per_cpu */
uint64_t session_id; /* Tracing session id */
@@
-368,6
+383,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;
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;
} LTTNG_PACKED ask_channel;
struct {
uint64_t key;
This page took
0.024228 seconds
and
4
git commands to generate.