Fix waiting for ustd on shutdown
authorJan Blunck <jblunck@suse.de>
Sun, 18 Oct 2009 20:39:24 +0000 (22:39 +0200)
committerJan Blunck <jblunck@suse.de>
Thu, 22 Oct 2009 16:02:25 +0000 (18:02 +0200)
When starting the daemon use a fifo instead of a pidfile. Otherwise the start
races against the reading of the pidfile. During shutdown we should wait for
all the existing background shells (there is only one) instead of waiting
for the pid of the daemon process.

Signed-off-by: Jan Blunck <jblunck@suse.de>
usttrace

index fe8a5cd8f8c47f80a53a72164c1ac8852d20a1a3..b3af05d7a167cb4da41507e09cd8230264f025af 100755 (executable)
--- a/usttrace
+++ b/usttrace
@@ -78,7 +78,7 @@ SOCKPATH="/tmp/ust-sock-$$"
 if [ "$arg_syswide_daemon" != "1" ];
 then
        pidfilepath="/tmp/usttrace-$USER-$(date +%Y%m%d%H%M%S%N)-ustd-pid"
 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 -d --pidfile "$pidfilepath" -s "$SOCKPATH" -o "$OUTDIR" >"$OUTDIR/ustd.log" 2>&1 &
        USTDPID="$(<$pidfilepath)"
        # Start daemon
        $USTD -d --pidfile "$pidfilepath" -s "$SOCKPATH" -o "$OUTDIR" >"$OUTDIR/ustd.log" 2>&1 &
        USTDPID="$(<$pidfilepath)"
@@ -129,7 +129,7 @@ then
        kill -SIGTERM "$USTDPID"
 
        echo "Waiting for ustd to shutdown..."
        kill -SIGTERM "$USTDPID"
 
        echo "Waiting for ustd to shutdown..."
-       wait "$USTDPID"
+       wait
 
        rm "$pidfilepath"
 fi
 
        rm "$pidfilepath"
 fi
This page took 0.024065 seconds and 4 git commands to generate.