mirror of
https://git.yoctoproject.org/poky
synced 2026-05-02 18:32:15 +02:00
busybox: Improve syslog restart handling
We're seeing races on the autobuilder where syslogd fails to shut down fast enough to be restarted leading to failures. Add some checks to ensure when restarting that processes exit before being restarted. (From OE-Core rev: 04de384256ad321834cf5e3dbb9a8d3ea2ab66c2) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -51,6 +51,22 @@ else
|
||||
SYSLOG_ARGS="-C"
|
||||
fi
|
||||
|
||||
waitpid ()
|
||||
{
|
||||
pid=$1
|
||||
# Give pid a chance to exit before we restart with a 5s timeout in 1s intervals
|
||||
if [ -z "$pid" ]; then
|
||||
return
|
||||
fi
|
||||
timeout=5;
|
||||
while [ $timeout -gt 0 ]
|
||||
do
|
||||
timeout=$(( $timeout-1 ))
|
||||
kill -0 $pid 2> /dev/null || break
|
||||
sleep 1
|
||||
done
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
echo -n "Starting syslogd/klogd: "
|
||||
@@ -65,7 +81,11 @@ case "$1" in
|
||||
echo "done"
|
||||
;;
|
||||
restart)
|
||||
$0 stop
|
||||
pid1=`pidof syslogd`
|
||||
pid2=`pidof syslogd`
|
||||
$0 stop
|
||||
waitpid $pid1
|
||||
waitpid $pid2
|
||||
$0 start
|
||||
;;
|
||||
*)
|
||||
|
||||
Reference in New Issue
Block a user