projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add filter sequence number to UST
[lttng-tools.git]
/
src
/
bin
/
lttng-sessiond
/
ust-consumer.c
diff --git
a/src/bin/lttng-sessiond/ust-consumer.c
b/src/bin/lttng-sessiond/ust-consumer.c
index b7e0d359261dbdec4a686a893dbb3a0416ea04ac..465dd07d74489cd26135126f903e1a30aa6070a2 100644
(file)
--- a/
src/bin/lttng-sessiond/ust-consumer.c
+++ b/
src/bin/lttng-sessiond/ust-consumer.c
@@
-52,7
+52,8
@@
static int send_channel(int sock, struct ust_app_channel *uchan)
uchan->obj->shm_fd,
uchan->attr.subbuf_size,
uchan->obj->memory_map_size,
uchan->obj->shm_fd,
uchan->attr.subbuf_size,
uchan->obj->memory_map_size,
- uchan->name);
+ uchan->name,
+ uchan->streams.count);
ret = consumer_send_channel(sock, &msg);
if (ret < 0) {
ret = consumer_send_channel(sock, &msg);
if (ret < 0) {
@@
-100,7
+101,8
@@
static int send_channel_stream(int sock, struct ust_app_channel *uchan,
consumer->net_seq_index,
0, /* Metadata flag unset */
stream->name,
consumer->net_seq_index,
0, /* Metadata flag unset */
stream->name,
- pathname);
+ pathname,
+ usess->id);
/* Send stream and file descriptor */
fds[0] = stream->obj->shm_fd;
/* Send stream and file descriptor */
fds[0] = stream->obj->shm_fd;
@@
-136,8
+138,8
@@
static int send_channel_streams(int sock,
/* Get the right path name destination */
if (consumer->type == CONSUMER_DST_LOCAL) {
/* Set application path to the destination path */
/* Get the right path name destination */
if (consumer->type == CONSUMER_DST_LOCAL) {
/* Set application path to the destination path */
- ret = snprintf(tmp_path, sizeof(tmp_path), "%s/%s",
- consumer->dst.trace_path, usess->path);
+ ret = snprintf(tmp_path, sizeof(tmp_path), "%s/%s
/%s
",
+ consumer->dst.trace_path,
consumer->subdir,
usess->path);
if (ret < 0) {
PERROR("snprintf stream path");
goto error;
if (ret < 0) {
PERROR("snprintf stream path");
goto error;
@@
-208,7
+210,8
@@
static int send_metadata(int sock, struct ust_app_session *usess,
usess->metadata->obj->shm_fd,
usess->metadata->attr.subbuf_size,
usess->metadata->obj->memory_map_size,
usess->metadata->obj->shm_fd,
usess->metadata->attr.subbuf_size,
usess->metadata->obj->memory_map_size,
- "metadata");
+ "metadata",
+ 1);
ret = consumer_send_channel(sock, &msg);
if (ret < 0) {
ret = consumer_send_channel(sock, &msg);
if (ret < 0) {
@@
-225,8
+228,8
@@
static int send_metadata(int sock, struct ust_app_session *usess,
/* Get correct path name destination */
if (consumer->type == CONSUMER_DST_LOCAL) {
/* Set application path to the destination path */
/* Get correct path name destination */
if (consumer->type == CONSUMER_DST_LOCAL) {
/* Set application path to the destination path */
- ret = snprintf(tmp_path, sizeof(tmp_path), "%s/%s",
- consumer->dst.trace_path, usess->path);
+ ret = snprintf(tmp_path, sizeof(tmp_path), "%s/%s
/%s
",
+ consumer->dst.trace_path,
consumer->subdir,
usess->path);
if (ret < 0) {
PERROR("snprintf stream path");
goto error;
if (ret < 0) {
PERROR("snprintf stream path");
goto error;
@@
-264,7
+267,8
@@
static int send_metadata(int sock, struct ust_app_session *usess,
consumer->net_seq_index,
1, /* Flag metadata set */
"metadata",
consumer->net_seq_index,
1, /* Flag metadata set */
"metadata",
- pathname);
+ pathname,
+ usess->id);
/* Send stream and file descriptor */
fds[0] = usess->metadata->stream_obj->shm_fd;
/* Send stream and file descriptor */
fds[0] = usess->metadata->stream_obj->shm_fd;
@@
-289,8
+293,12
@@
int ust_consumer_send_session(struct ust_app_session *usess,
struct ust_app_channel *ua_chan;
assert(usess);
struct ust_app_channel *ua_chan;
assert(usess);
- assert(consumer);
- assert(sock);
+
+ if (consumer == NULL || sock == NULL) {
+ /* There is no consumer so just ignoring the command. */
+ DBG("UST consumer does not exist. Not sending streams");
+ return 0;
+ }
DBG("Sending metadata stream fd to consumer on %d", sock->fd);
DBG("Sending metadata stream fd to consumer on %d", sock->fd);
This page took
0.023808 seconds
and
4
git commands to generate.