fix usttrace -l
[ust.git] / usttrace
index 1db591f366495b14df7007a2a7ac026d6f541a70..a60440c8e0039e4feee4ae0e9f3629cb3020372e 100755 (executable)
--- a/usttrace
+++ b/usttrace
@@ -23,7 +23,7 @@ else
     fi
     LIBINTERFORK_PATH="libinterfork.so"
     LIBMALLOCWRAP_PATH="libmallocwrap.so"
-    LIBUST_PATH="libust.so"
+    LIBUST_PATH="libust.so.0"
 fi
 
 BASE_TRACE_DIR="${HOME}/.usttraces"
@@ -78,17 +78,24 @@ DATESTRING="$(hostname)-$(date +%Y%m%d%H%M%S)"
 OUTDIR="$BASE_TRACE_DIR/$DATESTRING"
 mkdir -p "$OUTDIR"
 
-# Choose socket path
-SOCKPATH="/tmp/ust-sock-$$"
+# Choose ustd socket path
+USTDSOCKPATH="/tmp/ustd-sock-$$"
 
 if [ "$arg_syswide_daemon" != "1" ];
 then
        pidfilepath="/tmp/usttrace-$USER-$(date +%Y%m%d%H%M%S%N)-ustd-pid"
        mkfifo -m 0600 "$pidfilepath"
        # Start daemon
-       $USTD --pidfile "$pidfilepath" -s "$SOCKPATH" -o "$OUTDIR" >"$OUTDIR/ustd.log" 2>&1 &
+       $USTD --pidfile "$pidfilepath" -s "$USTDSOCKPATH" -o "$OUTDIR" >"$OUTDIR/ustd.log" 2>&1 &
+       # ustd sets up its server socket
+       # ustd opens the pidfile, blocks because no one has opened it
+       # we open pidfile
+       # we block reading pidfile
+       # ustd writes to pidfile
+       # ustd closes pidfile
+       # we unblock reading pidfile
        USTDPID="$(<$pidfilepath)"
-       export UST_DAEMON_SOCKET="$SOCKPATH"
+       export UST_DAEMON_SOCKET="$USTDSOCKPATH"
 fi
 
 # Establish the environment for the command
This page took 0.023221 seconds and 4 git commands to generate.