[lttng-dev] [PATCH lttng-tools v2] Fix hang in thread_rotation when using compat-poll
Yannick Lamarre
ylamarre at efficios.com
Thu Mar 21 11:04:50 EDT 2019
Add missing verification to prevent a blocking read on an empty fd.
Signed-off-by: Yannick Lamarre <ylamarre at 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
More information about the lttng-dev
mailing list