From 58d3fed5a62a82ce8487dce41a3092e79a9bca15 Mon Sep 17 00:00:00 2001 From: Mathieu Desnoyers Date: Thu, 13 Dec 2018 13:56:35 -0500 Subject: [PATCH] Fix: run_command_wait() handle partial write MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Use lttng_write() to handle partial writes (writing less than the requested amount of bytes) as well as ret = -1, errno = EINTR. Signed-off-by: Mathieu Desnoyers Signed-off-by: Jérémie Galarneau --- src/bin/lttng-sessiond/notification-thread-commands.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bin/lttng-sessiond/notification-thread-commands.c b/src/bin/lttng-sessiond/notification-thread-commands.c index 11275ffc0..129cf4ee2 100644 --- a/src/bin/lttng-sessiond/notification-thread-commands.c +++ b/src/bin/lttng-sessiond/notification-thread-commands.c @@ -44,9 +44,9 @@ int run_command_wait(struct notification_thread_handle *handle, cds_list_add_tail(&cmd->cmd_list_node, &handle->cmd_queue.list); /* Wake-up thread. */ - ret = write(lttng_pipe_get_writefd(handle->cmd_queue.event_pipe), + ret = lttng_write(lttng_pipe_get_writefd(handle->cmd_queue.event_pipe), ¬ification_counter, sizeof(notification_counter)); - if (ret < 0) { + if (ret != sizeof(notification_counter)) { PERROR("write to notification thread's queue event fd"); /* * Remove the command from the list so the notification -- 2.34.1