Fix: missing header causes build failure with --disable-epoll
[lttng-tools.git] / src / bin / lttng-sessiond / notification-thread-events.c
index 00a2bf66f559f1d5b8d6ee2c019e3dd0c2241534..4107bec96c541c6f60b5afed416f8a9f4c0b4bdf 100644 (file)
@@ -40,6 +40,7 @@
 #include <unistd.h>
 #include <assert.h>
 #include <inttypes.h>
+#include <fcntl.h>
 
 #define CLIENT_POLL_MASK_IN (LPOLLIN | LPOLLERR | LPOLLHUP | LPOLLRDHUP)
 #define CLIENT_POLL_MASK_IN_OUT (CLIENT_POLL_MASK_IN | LPOLLOUT)
@@ -405,6 +406,7 @@ int notification_thread_client_subscribe(struct notification_client *client,
                        &iter);
        node = cds_lfht_iter_get_node(&iter);
        if (!node) {
+               free(client_list_element);
                goto end_unlock;
        }
 
@@ -1948,9 +1950,7 @@ int handle_notification_thread_channel_sample(
         * The monitoring pipe only holds messages smaller than PIPE_BUF,
         * ensuring that read/write of sampling messages are atomic.
         */
-       do {
-               ret = read(pipe, &sample_msg, sizeof(sample_msg));
-       } while (ret == -1 && errno == EINTR);
+       ret = lttng_read(pipe, &sample_msg, sizeof(sample_msg));
        if (ret != sizeof(sample_msg)) {
                ERR("[notification-thread] Failed to read from monitoring pipe (fd = %i)",
                                pipe);
This page took 0.024651 seconds and 5 git commands to generate.