diff --git a/recipes-openmoko/openmoko-gsmd/files/gsmd-respawn.sh b/recipes-openmoko/openmoko-gsmd/files/gsmd-respawn.sh index b1fe134326..99435ed966 100644 --- a/recipes-openmoko/openmoko-gsmd/files/gsmd-respawn.sh +++ b/recipes-openmoko/openmoko-gsmd/files/gsmd-respawn.sh @@ -4,13 +4,17 @@ NAME=`basename $1` PIDFILE="/var/run/$NAME.pid" PID=$$ echo "$PID" > $PIDFILE +echo "-1000" > /proc/$PID/oom_score_adj trap "{ rm -f $PIDFILE ; kill 0; }" EXIT while true; do echo "Restarting not dealing well with spaces.." - (exec $*) || true + exec $* & + LAST_PID=$! + echo "0" > /proc/$LAST_PID/oom_score_adj + wait $LAST_PID sleep 10s done