projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix enable-event for UST events
[lttng-tools.git]
/
lttng-sessiond
/
main.c
diff --git
a/lttng-sessiond/main.c
b/lttng-sessiond/main.c
index 6bb471a9dca0a3cc03b9448ec0b6be649a12e5e8..63d7f0e2d3e0ab48a68104183e5054454bde7db6 100644
(file)
--- a/
lttng-sessiond/main.c
+++ b/
lttng-sessiond/main.c
@@
-2580,10
+2580,10
@@
static int cmd_enable_event(struct ltt_session *session, int domain,
}
case LTTNG_DOMAIN_UST:
{
}
case LTTNG_DOMAIN_UST:
{
- struct ltt_ust_channel *uchan;
- struct ltt_ust_event *uevent;
struct lttng_channel *attr;
struct lttng_channel *attr;
+ struct ltt_ust_channel *uchan;
+ /* Get channel from global UST domain */
uchan = trace_ust_find_channel_by_name(usess->domain_global.channels,
channel_name);
if (uchan == NULL) {
uchan = trace_ust_find_channel_by_name(usess->domain_global.channels,
channel_name);
if (uchan == NULL) {
@@
-2594,14
+2594,14
@@
static int cmd_enable_event(struct ltt_session *session, int domain,
goto error;
}
snprintf(attr->name, NAME_MAX, "%s", channel_name);
goto error;
}
snprintf(attr->name, NAME_MAX, "%s", channel_name);
+ attr->name[NAME_MAX - 1] = '\0';
/* Use the internal command enable channel */
ret = cmd_enable_channel(session, domain, attr);
/* Use the internal command enable channel */
ret = cmd_enable_channel(session, domain, attr);
- if (ret
< 0
) {
+ if (ret
!= LTTCOMM_OK
) {
free(attr);
goto error;
}
free(attr);
goto error;
}
-
free(attr);
/* Get the newly created channel reference back */
free(attr);
/* Get the newly created channel reference back */
@@
-2614,31
+2614,12
@@
static int cmd_enable_event(struct ltt_session *session, int domain,
}
}
}
}
- uevent = trace_ust_find_event_by_name(uchan->events, event->name);
- if (uevent == NULL) {
- uevent = trace_ust_create_event(event);
- if (uevent == NULL) {
- ret = LTTCOMM_FATAL;
- goto error;
- }
+ /* At this point, the session and channel exist on the tracer */
- }
-
- ret = ust_app_create_event_all(usess, uchan, uevent);
- if (ret < 0) {
- ret = LTTCOMM_UST_ENABLE_FAIL;
+ ret = event_ust_enable_tracepoint(usess, domain, uchan, event);
+ if (ret != LTTCOMM_OK) {
goto error;
}
goto error;
}
-
- /* Add ltt ust event to channel */
- rcu_read_lock();
- hashtable_add_unique(uchan->events, &uevent->node);
- rcu_read_unlock();
-
- uevent->enabled = 1;
-
- DBG3("UST ltt event %s added to channel %s", uevent->attr.name,
- uchan->name);
break;
}
case LTTNG_DOMAIN_UST_EXEC_NAME:
break;
}
case LTTNG_DOMAIN_UST_EXEC_NAME:
This page took
0.024086 seconds
and
4
git commands to generate.