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-channel accepts mismatched option
[lttng-tools.git]
/
src
/
bin
/
lttng-sessiond
/
cmd.c
diff --git
a/src/bin/lttng-sessiond/cmd.c
b/src/bin/lttng-sessiond/cmd.c
index 80834941d9c278e181d129e9959489a518c4d938..9ef1fde3694eddd90b67d18c3aa68d410d309a27 100644
(file)
--- a/
src/bin/lttng-sessiond/cmd.c
+++ b/
src/bin/lttng-sessiond/cmd.c
@@
-306,8
+306,12
@@
static int list_lttng_kernel_events(char *channel_name,
case LTTNG_KERNEL_TRACEPOINT:
(*events)[i].type = LTTNG_EVENT_TRACEPOINT;
break;
case LTTNG_KERNEL_TRACEPOINT:
(*events)[i].type = LTTNG_EVENT_TRACEPOINT;
break;
- case LTTNG_KERNEL_KPROBE:
case LTTNG_KERNEL_KRETPROBE:
case LTTNG_KERNEL_KRETPROBE:
+ (*events)[i].type = LTTNG_EVENT_FUNCTION;
+ memcpy(&(*events)[i].attr.probe, &event->event->u.kprobe,
+ sizeof(struct lttng_kernel_kprobe));
+ break;
+ case LTTNG_KERNEL_KPROBE:
(*events)[i].type = LTTNG_EVENT_PROBE;
memcpy(&(*events)[i].attr.probe, &event->event->u.kprobe,
sizeof(struct lttng_kernel_kprobe));
(*events)[i].type = LTTNG_EVENT_PROBE;
memcpy(&(*events)[i].attr.probe, &event->event->u.kprobe,
sizeof(struct lttng_kernel_kprobe));
@@
-474,22
+478,15
@@
error:
* On success, the relayd_sock pointer is set to the created socket.
* Else, it's stays untouched and a lttcomm error code is returned.
*/
* On success, the relayd_sock pointer is set to the created socket.
* Else, it's stays untouched and a lttcomm error code is returned.
*/
-static int create_connect_relayd(struct consumer_output *output,
- const char *session_name, struct lttng_uri *uri,
- struct lttcomm_sock **relayd_sock)
+static int create_connect_relayd(struct lttng_uri *uri,
+ struct lttcomm_relayd_sock **relayd_sock)
{
int ret;
{
int ret;
- struct lttcomm_sock *sock;
-
- /* Create socket object from URI */
- sock = lttcomm_alloc_sock_from_uri(uri);
- if (sock == NULL) {
- ret = LTTNG_ERR_FATAL;
- goto error;
- }
+ struct lttcomm_relayd_sock *rsock;
- ret = lttcomm_create_sock(sock);
- if (ret < 0) {
+ rsock = lttcomm_alloc_relayd_sock(uri, RELAYD_VERSION_COMM_MAJOR,
+ RELAYD_VERSION_COMM_MINOR);
+ if (!rsock) {
ret = LTTNG_ERR_FATAL;
goto error;
}
ret = LTTNG_ERR_FATAL;
goto error;
}
@@
-500,7
+497,7
@@
static int create_connect_relayd(struct consumer_output *output,
* state to be in poll execution.
*/
health_poll_entry();
* state to be in poll execution.
*/
health_poll_entry();
- ret = relayd_connect(sock);
+ ret = relayd_connect(
r
sock);
health_poll_exit();
if (ret < 0) {
ERR("Unable to reach lttng-relayd");
health_poll_exit();
if (ret < 0) {
ERR("Unable to reach lttng-relayd");
@@
-513,8
+510,7
@@
static int create_connect_relayd(struct consumer_output *output,
DBG3("Creating relayd stream socket from URI");
/* Check relayd version */
DBG3("Creating relayd stream socket from URI");
/* Check relayd version */
- ret = relayd_version_check(sock, RELAYD_VERSION_COMM_MAJOR,
- RELAYD_VERSION_COMM_MINOR);
+ ret = relayd_version_check(rsock);
if (ret < 0) {
ret = LTTNG_ERR_RELAYD_VERSION_FAIL;
goto close_sock;
if (ret < 0) {
ret = LTTNG_ERR_RELAYD_VERSION_FAIL;
goto close_sock;
@@
-528,18
+524,15
@@
static int create_connect_relayd(struct consumer_output *output,
goto close_sock;
}
goto close_sock;
}
- *relayd_sock = sock;
+ *relayd_sock =
r
sock;
return LTTNG_OK;
close_sock:
return LTTNG_OK;
close_sock:
- if (sock) {
- (void) relayd_close(sock);
- }
+ /* The returned value is not useful since we are on an error path. */
+ (void) relayd_close(rsock);
free_sock:
free_sock:
- if (sock) {
- lttcomm_destroy_sock(sock);
- }
+ free(rsock);
error:
return ret;
}
error:
return ret;
}
@@
-552,13
+545,14
@@
static int send_consumer_relayd_socket(int domain, struct ltt_session *session,
struct consumer_socket *consumer_sock)
{
int ret;
struct consumer_socket *consumer_sock)
{
int ret;
- struct lttcomm_
sock *
sock = NULL;
+ struct lttcomm_
relayd_sock *r
sock = NULL;
/* Connect to relayd and make version check if uri is the control. */
/* Connect to relayd and make version check if uri is the control. */
- ret = create_connect_relayd(
consumer, session->name, relayd_uri, &
sock);
+ ret = create_connect_relayd(
relayd_uri, &r
sock);
if (ret != LTTNG_OK) {
if (ret != LTTNG_OK) {
- goto
close_sock
;
+ goto
error
;
}
}
+ assert(rsock);
/* If the control socket is connected, network session is ready */
if (relayd_uri->stype == LTTNG_STREAM_CONTROL) {
/* If the control socket is connected, network session is ready */
if (relayd_uri->stype == LTTNG_STREAM_CONTROL) {
@@
-578,8
+572,8
@@
static int send_consumer_relayd_socket(int domain, struct ltt_session *session,
}
/* Send relayd socket to consumer. */
}
/* Send relayd socket to consumer. */
- ret = consumer_send_relayd_socket(consumer_sock,
sock
,
-
consumer,
relayd_uri->stype, session->id);
+ ret = consumer_send_relayd_socket(consumer_sock,
rsock, consumer
,
+ relayd_uri->stype, session->id);
if (ret < 0) {
ret = LTTNG_ERR_ENABLE_CONSUMER_FAIL;
goto close_sock;
if (ret < 0) {
ret = LTTNG_ERR_ENABLE_CONSUMER_FAIL;
goto close_sock;
@@
-600,11
+594,10
@@
static int send_consumer_relayd_socket(int domain, struct ltt_session *session,
*/
close_sock:
*/
close_sock:
- if (sock) {
- (void) relayd_close(sock);
- lttcomm_destroy_sock(sock);
- }
+ (void) relayd_close(rsock);
+ free(rsock);
+error:
if (ret != LTTNG_OK) {
/*
* On error, nullify the consumer sequence index so streams are not
if (ret != LTTNG_OK) {
/*
* On error, nullify the consumer sequence index so streams are not
@@
-612,7
+605,6
@@
close_sock:
*/
uatomic_set(&consumer->net_seq_index, -1);
}
*/
uatomic_set(&consumer->net_seq_index, -1);
}
-
return ret;
}
return ret;
}
@@
-1928,6
+1920,7
@@
ssize_t cmd_list_domains(struct ltt_session *session,
if (session->ust_session != NULL) {
(*domains)[index].type = LTTNG_DOMAIN_UST;
if (session->ust_session != NULL) {
(*domains)[index].type = LTTNG_DOMAIN_UST;
+ (*domains)[index].buf_type = session->ust_session->buffer_type;
index++;
}
index++;
}
This page took
0.032967 seconds
and
4
git commands to generate.