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:44 +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 2186dc92aa38d124d328b5187d98fe9b99a4d8c3..f47ae7849dfcf7bf77050c420a70fa683f36551e 100644 (file)
@@ -651,6 +651,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.026571 seconds and 4 git commands to generate.