Add -ust to the name of UST threads of the application
[lttng-ust.git] / liblttng-ust / lttng-ust-comm.c
index 8a568328dea8c0701fe5b3705aa63711610b2a19..6105403a25d032b618df9c6202644ff138a0a034 100644 (file)
@@ -1295,6 +1295,15 @@ void *ust_listener_thread(void *arg)
        int sock, ret, prev_connect_failed = 0, has_waited = 0;
        long timeout;
 
+       /*
+        * If available, add '-ust' to the end of this thread's
+        * process name
+        */
+       ret = lttng_ust_setustprocname();
+       if (ret) {
+               ERR("Unable to set UST process name");
+       }
+
        /* Restart trying to connect to the session daemon */
 restart:
        if (prev_connect_failed) {
@@ -1590,7 +1599,9 @@ void __attribute__((constructor)) lttng_ust_init(void)
        timeout_mode = get_constructor_timeout(&constructor_timeout);
 
        ret = sem_init(&constructor_wait, 0, 0);
-       assert(!ret);
+       if (ret) {
+               PERROR("sem_init");
+       }
 
        ret = setup_local_apps();
        if (ret) {
@@ -1655,17 +1666,34 @@ void __attribute__((constructor)) lttng_ust_init(void)
                        ret = sem_timedwait(&constructor_wait,
                                        &constructor_timeout);
                } while (ret < 0 && errno == EINTR);
-               if (ret < 0 && errno == ETIMEDOUT) {
-                       ERR("Timed out waiting for lttng-sessiond");
-               } else {
-                       assert(!ret);
+               if (ret < 0) {
+                       switch (errno) {
+                       case ETIMEDOUT:
+                               ERR("Timed out waiting for lttng-sessiond");
+                               break;
+                       case EINVAL:
+                               PERROR("sem_timedwait");
+                               break;
+                       default:
+                               ERR("Unexpected error \"%s\" returned by sem_timedwait",
+                                       strerror(errno));
+                       }
                }
                break;
        case -1:/* wait forever */
                do {
                        ret = sem_wait(&constructor_wait);
                } while (ret < 0 && errno == EINTR);
-               assert(!ret);
+               if (ret < 0) {
+                       switch (errno) {
+                       case EINVAL:
+                               PERROR("sem_wait");
+                               break;
+                       default:
+                               ERR("Unexpected error \"%s\" returned by sem_wait",
+                                       strerror(errno));
+                       }
+               }
                break;
        case 0: /* no timeout */
                break;
This page took 0.024239 seconds and 4 git commands to generate.