X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=liblttng-ust%2Fltt-events.c;h=fd70279afb8451d99ad3c5ddc7b6facea20f4b43;hb=2734ca65d2fb2e63c11d61b9ee8821dd9292aa3c;hp=9ef28c9adb144c7cd0d01f43b17590360f8bd3de;hpb=2d78951a159c97fd2bfebb84a9b22ef97674d56a;p=lttng-ust.git diff --git a/liblttng-ust/ltt-events.c b/liblttng-ust/ltt-events.c index 9ef28c9a..fd70279a 100644 --- a/liblttng-ust/ltt-events.c +++ b/liblttng-ust/ltt-events.c @@ -296,6 +296,8 @@ int pending_probe_fix_events(const struct lttng_event_desc *desc) event->id = chan->free_event_id++; ret |= _ltt_event_metadata_statedump(chan->session, chan, event); + lttng_filter_event_link_bytecode(event, + event->filter_bytecode); } return ret; } @@ -724,6 +726,9 @@ int _ltt_field_statedump(struct ltt_session *session, { int ret = 0; + if (!field->written) + return 0; + switch (field->type.atype) { case atype_integer: ret = lttng_metadata_printf(session, @@ -1110,6 +1115,7 @@ int _ltt_session_metadata_statedump(struct ltt_session *session) struct ltt_event *event; int ret = 0; char procname[LTTNG_UST_PROCNAME_LEN] = ""; + char hostname[HOST_NAME_MAX]; if (!CMM_ACCESS_ONCE(session->active)) return 0; @@ -1166,10 +1172,15 @@ int _ltt_session_metadata_statedump(struct ltt_session *session) goto end; /* ignore error, just use empty string if error. */ + hostname[0] = '\0'; + ret = gethostname(hostname, sizeof(hostname)); + if (ret && errno == ENAMETOOLONG) + hostname[HOST_NAME_MAX - 1] = '\0'; lttng_ust_getprocname(procname); procname[LTTNG_UST_PROCNAME_LEN - 1] = '\0'; ret = lttng_metadata_printf(session, "env {\n" + " hostname = \"%s\";\n" " vpid = %d;\n" " procname = \"%s\";\n" " domain = \"ust\";\n" @@ -1178,6 +1189,7 @@ int _ltt_session_metadata_statedump(struct ltt_session *session) " tracer_minor = %u;\n" " tracer_patchlevel = %u;\n" "};\n\n", + hostname, (int) getpid(), procname, LTTNG_UST_MAJOR_VERSION,