Fix: don't wait for initial statedump when 0 session active
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Fri, 2 Aug 2019 14:43:35 +0000 (10:43 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Fri, 2 Aug 2019 16:13:23 +0000 (12:13 -0400)
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 <mathieu.desnoyers@efficios.com>
liblttng-ust/lttng-ust-comm.c

index 0c6db9fea3326a835d7423357e5719b67c497246..e392e460cca2dada53036fc622adbc8b3cf87355 100644 (file)
@@ -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;
 }
This page took 0.025255 seconds and 4 git commands to generate.