#include <urcu/futex.h>
#include <lttng-ust-comm.h>
+#include <ust/lttng-events.h>
#include <ust/usterr-signal-safe.h>
#include <ust/lttng-ust-abi.h>
#include <ust/tracepoint.h>
shm_fd = lum->u.stream.shm_fd;
wait_fd = lum->u.stream.wait_fd;
break;
+ case LTTNG_UST_METADATA:
case LTTNG_UST_CHANNEL:
lur.u.channel.memory_map_size = lum->u.channel.memory_map_size;
shm_fd = lum->u.channel.shm_fd;
goto error;
}
- if ((lum->cmd == LTTNG_UST_STREAM || lum->cmd == LTTNG_UST_CHANNEL)
+ if ((lum->cmd == LTTNG_UST_STREAM
+ || lum->cmd == LTTNG_UST_CHANNEL
+ || lum->cmd == LTTNG_UST_METADATA)
&& lur.ret_code == LTTCOMM_OK) {
/* we also need to send the file descriptors. */
ret = lttcomm_send_fds_unix_sock(sock,
*/
if (sock_info->root_handle == -1) {
ret = lttng_abi_create_root_handle();
- if (ret) {
+ if (ret < 0) {
ERR("Error creating root handle");
ust_unlock();
goto quit;
/* Release urcu mutexes */
rcu_bp_after_fork_child();
lttng_ust_cleanup(0);
+ lttng_context_vtid_reset();
/* Release mutexes and reenable signals */
ust_after_fork_common(fork_info);
lttng_ust_init();