The poll flavor of the lttng_poll api requires the caller to verify which of the fd has really waken the thread from wait. This verification was missing and a blocking read was made on an empty fd.
Signed-off-by: Yannick Lamarre <ylama...@efficios.com> --- src/bin/lttng-sessiond/rotation-thread.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/bin/lttng-sessiond/rotation-thread.c b/src/bin/lttng-sessiond/rotation-thread.c index 6669372d..b86b1668 100644 --- a/src/bin/lttng-sessiond/rotation-thread.c +++ b/src/bin/lttng-sessiond/rotation-thread.c @@ -974,6 +974,10 @@ void *thread_rotation(void *data) int fd = LTTNG_POLL_GETFD(&thread.events, i); uint32_t revents = LTTNG_POLL_GETEV(&thread.events, i); + if (!revents) { + /* No activity for this FD (poll implementation). */ + continue; + } DBG("[rotation-thread] Handling fd (%i) activity (%u)", fd, revents); -- 2.11.0 _______________________________________________ lttng-dev mailing list lttng-dev@lists.lttng.org https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev