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:41 +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 7d132ddcee379ac40c16ad5c0e5e14a698afedb8..bd9d0e9c004863e93509d36953733c63975e5162 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.026047 seconds and 4 git commands to generate.