X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fmanage-kernel.cpp;h=0920852501d486e2d1a6bbdf7ba07189a54a6423;hb=4bcf2294f0701b731d620c38216e1922e919e1b9;hp=a5d21b0fe52ac10267b154671f55a8eadd4836d5;hpb=c9e313bc594f40a86eed237dce222c0fc99c957f;p=lttng-tools.git diff --git a/src/bin/lttng-sessiond/manage-kernel.cpp b/src/bin/lttng-sessiond/manage-kernel.cpp index a5d21b0fe..092085250 100644 --- a/src/bin/lttng-sessiond/manage-kernel.cpp +++ b/src/bin/lttng-sessiond/manage-kernel.cpp @@ -18,10 +18,12 @@ #include "kernel.hpp" #include "kernel-consumer.hpp" +namespace { struct thread_notifiers { struct lttng_pipe *quit_pipe; int kernel_poll_pipe_read_fd; }; +} /* namespace */ /* * Update the kernel poll set of all channel fd available over all tracing @@ -163,12 +165,12 @@ error: */ static void *thread_kernel_management(void *data) { - int ret, i, pollfd, update_poll_flag = 1, err = -1; - uint32_t revents, nb_fd; + int ret, i, update_poll_flag = 1, err = -1; + uint32_t nb_fd; char tmp; struct lttng_poll_event events; struct thread_notifiers *notifiers = (thread_notifiers *) data; - const int quit_pipe_read_fd = lttng_pipe_get_readfd(notifiers->quit_pipe); + const auto thread_quit_pipe_fd = lttng_pipe_get_readfd(notifiers->quit_pipe); DBG("[thread] Thread manage kernel started"); @@ -210,7 +212,7 @@ static void *thread_kernel_management(void *data) } ret = lttng_poll_add(&events, - quit_pipe_read_fd, + thread_quit_pipe_fd, LPOLLIN); if (ret < 0) { goto error; @@ -252,12 +254,14 @@ static void *thread_kernel_management(void *data) for (i = 0; i < nb_fd; i++) { /* Fetch once the poll data */ - revents = LTTNG_POLL_GETEV(&events, i); - pollfd = LTTNG_POLL_GETFD(&events, i); + const auto revents = LTTNG_POLL_GETEV(&events, i); + const auto pollfd = LTTNG_POLL_GETFD(&events, i); health_code_update(); - if (pollfd == quit_pipe_read_fd) { + /* Activity on thread quit pipe, exiting. */ + if (pollfd == thread_quit_pipe_fd) { + DBG("Activity on thread quit pipe"); err = 0; goto exit; } @@ -332,7 +336,7 @@ bool launch_kernel_management_thread(int kernel_poll_pipe_read_fd) struct thread_notifiers *notifiers = NULL; struct lttng_thread *thread; - notifiers = (thread_notifiers *) zmalloc(sizeof(*notifiers)); + notifiers = zmalloc(); if (!notifiers) { goto error_alloc; }