[lttng-dev] [PATCH lttng-tools] Fix: close channel monitor pipe after killing the metadata_timer_thread

Jonathan Rajotte jonathan.rajotte-julien at efficios.com
Thu Oct 12 15:19:39 UTC 2017


Signed-off-by: Jonathan Rajotte <jonathan.rajotte-julien at efficios.com>
---
 src/bin/lttng-consumerd/lttng-consumerd.c | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/src/bin/lttng-consumerd/lttng-consumerd.c b/src/bin/lttng-consumerd/lttng-consumerd.c
index fef03c6f..c0716af2 100644
--- a/src/bin/lttng-consumerd/lttng-consumerd.c
+++ b/src/bin/lttng-consumerd/lttng-consumerd.c
@@ -576,14 +576,6 @@ int main(int argc, char **argv)
 		PERROR("pthread_join sessiond_thread");
 		retval = -1;
 	}
-
-	ret = consumer_timer_thread_get_channel_monitor_pipe();
-	if (ret >= 0) {
-		ret = close(ret);
-		if (ret) {
-			PERROR("close channel monitor pipe");
-		}
-	}
 exit_sessiond_thread:
 
 	ret = pthread_join(data_thread, &status);
@@ -650,6 +642,13 @@ exit_init_data:
 			PERROR("pthread_join metadata_timer_thread");
 			retval = -1;
 		}
+		ret = consumer_timer_thread_get_channel_monitor_pipe();
+		if (ret >= 0) {
+			ret = close(ret);
+			if (ret) {
+				PERROR("close channel monitor pipe");
+			}
+		}
 		metadata_timer_thread_online = false;
 	}
 	tmp_ctx = ctx;
-- 
2.11.0



More information about the lttng-dev mailing list