Fork handling: fix deadlock between mutex and semaphore
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Fri, 26 Aug 2011 20:55:32 +0000 (16:55 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Fri, 26 Aug 2011 20:55:32 +0000 (16:55 -0400)
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
libust/lttng-ust-comm.c

index 58e9a6487707ab5097dfcbe8eb563cd5463186f4..e76807975c1b4a1af15fbe8f0950fa238b5c9176 100644 (file)
@@ -279,6 +279,7 @@ void cleanup_sock_info(struct sock_info *sock_info)
                }
                sock_info->root_handle = -1;
        }
+       sock_info->constructor_sem_posted = 0;
 }
 
 /*
@@ -619,7 +620,7 @@ void ust_after_fork_child(ust_fork_info_t *fork_info)
        /* Release urcu mutexes */
        rcu_bp_after_fork_child();
        lttng_ust_cleanup(0);
-       lttng_ust_init();
        /* Release mutexes and reenable signals */
        ust_after_fork_common(fork_info);
+       lttng_ust_init();
 }
This page took 0.027105 seconds and 4 git commands to generate.