From 04682184d7f67b02f73aa8f2581cfa2a67a81f74 Mon Sep 17 00:00:00 2001 From: Mathieu Desnoyers Date: Fri, 2 Aug 2019 10:43:35 -0400 Subject: [PATCH] Fix: don't wait for initial statedump when 0 session active commit eb0e6022d5e2 "Fix: wait for initial statedump before proceeding to the main program" introduced a regression when an application interacts with a session daemon which has 0 session active. An application linked against lttng-ust started with LTTNG_UST_REGISTER_TIMEOUT=-1 hangs forever. Fix this by decrementing the semaphore if no statedump was requested when the registration done command is received. Signed-off-by: Mathieu Desnoyers --- liblttng-ust/lttng-ust-comm.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/liblttng-ust/lttng-ust-comm.c b/liblttng-ust/lttng-ust-comm.c index 0c6db9fe..e392e460 100644 --- a/liblttng-ust/lttng-ust-comm.c +++ b/liblttng-ust/lttng-ust-comm.c @@ -655,6 +655,10 @@ int handle_register_done(struct sock_info *sock_info) sock_info->registration_done = 1; decrement_sem_count(1); + if (!sock_info->statedump_pending) { + sock_info->initial_statedump_done = 1; + decrement_sem_count(1); + } return 0; } -- 2.34.1