ust_fork(): create listener after iniializing socket
[ust.git] / libust / tracectl.c
index c72d013d7535a5539960e4d111ad24b39bcc6e54..c34a3ce4ad3f673393ef3df9da5f89baa965d7e8 100644 (file)
@@ -1455,6 +1455,10 @@ static void ust_fork(void)
 
        /* FIXME: technically, the locks could have been taken before the fork */
        DBG("ust: forking");
+
+       /* break lock if necessary */
+       ltt_unlock_traces();
+
        ltt_trace_stop("auto");
        ltt_trace_destroy("auto", 1);
        /* Delete all active connections */
@@ -1470,8 +1474,8 @@ static void ust_fork(void)
        }
 
        have_listener = 0;
-       create_listener();
        init_socket();
+       create_listener();
        ltt_trace_setup("auto");
        result = ltt_trace_set_type("auto", "ustrelay");
        if(result < 0) {
This page took 0.023522 seconds and 4 git commands to generate.