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:46 +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 98f9bdb1d99283db3397cb5d19c941fc49c60b8f..26c2e2907bcfdd9701dda4c7575432fdd1e33523 100644 (file)
@@ -637,6 +637,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.027438 seconds and 4 git commands to generate.