mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-09-19 16:40:46 -09:00
package/watchdogd: fix sysv init script
PIDFILE was set incorrectly, watchdogd writes its PID file to
/var/run/watchdogd/pid (note the slash), which is not configurable
without patching.
Restructure the rest of the script to match current style while at it.
Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 51b848b534)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
committed by
Peter Korsgaard
parent
1891b45694
commit
197a1bd331
@@ -1315,7 +1315,6 @@ package/waffle/0003-drop-C-dependency.patch lib_patch.Upstream
|
|||||||
package/wampcc/0001-Add-RISC-V-endian-detection.patch lib_patch.Upstream
|
package/wampcc/0001-Add-RISC-V-endian-detection.patch lib_patch.Upstream
|
||||||
package/wampcc/0002-include-wampcc-platform.h-fix-build-with-musl-1.2.0.patch lib_patch.Upstream
|
package/wampcc/0002-include-wampcc-platform.h-fix-build-with-musl-1.2.0.patch lib_patch.Upstream
|
||||||
package/wampcc/0003-Broken-build-on-Windows.patch lib_patch.Upstream
|
package/wampcc/0003-Broken-build-on-Windows.patch lib_patch.Upstream
|
||||||
package/watchdogd/S01watchdogd NotExecutable lib_sysv.Indent
|
|
||||||
package/wget/0001-lib-getrandom.c-fix-build-with-uclibc-1.0.35.patch lib_patch.Upstream
|
package/wget/0001-lib-getrandom.c-fix-build-with-uclibc-1.0.35.patch lib_patch.Upstream
|
||||||
package/wilc-driver/0001-cfg80211.c-fix-missing-prandom_u32-with-Linux-6.1.0.patch lib_patch.Upstream
|
package/wilc-driver/0001-cfg80211.c-fix-missing-prandom_u32-with-Linux-6.1.0.patch lib_patch.Upstream
|
||||||
package/wilc-driver/0002-spi.c-fix-build-failure-on-remove-callback.patch lib_patch.Upstream
|
package/wilc-driver/0002-spi.c-fix-build-failure-on-remove-callback.patch lib_patch.Upstream
|
||||||
|
|||||||
102
package/watchdogd/S01watchdogd
Executable file → Normal file
102
package/watchdogd/S01watchdogd
Executable file → Normal file
@@ -1,47 +1,77 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
DAEMON="watchdogd"
|
DAEMON="watchdogd"
|
||||||
PIDFILE="/var/run/$DAEMON.pid"
|
PIDFILE="/var/run/$DAEMON/pid"
|
||||||
|
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
[ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON"
|
[ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON"
|
||||||
|
|
||||||
cmd()
|
start() {
|
||||||
{
|
printf "Starting %s: " "$DAEMON"
|
||||||
start-stop-daemon -q -p "$PIDFILE" -x "/usr/sbin/$DAEMON" "$@"
|
# shellcheck disable=SC2086 # we need the word splitting
|
||||||
status=$?
|
start-stop-daemon --start --pidfile "$PIDFILE" \
|
||||||
if [ $status -eq 0 ]; then
|
--exec "/usr/sbin/$DAEMON" -- $WATCHDOGD_ARGS
|
||||||
echo "OK"
|
status=$?
|
||||||
else
|
if [ "$status" -eq 0 ]; then
|
||||||
echo "FAIL"
|
echo "OK"
|
||||||
fi
|
else
|
||||||
return $status
|
echo "FAIL"
|
||||||
|
fi
|
||||||
|
return "$status"
|
||||||
|
}
|
||||||
|
|
||||||
|
stop() {
|
||||||
|
printf "Stopping %s: " "$DAEMON"
|
||||||
|
start-stop-daemon --stop --pidfile "$PIDFILE" \
|
||||||
|
--exec "/usr/sbin/$DAEMON"
|
||||||
|
status=$?
|
||||||
|
if [ "$status" -eq 0 ]; then
|
||||||
|
echo "OK"
|
||||||
|
else
|
||||||
|
echo "FAIL"
|
||||||
|
fi
|
||||||
|
# watchdogd deletes its PID file on exit, wait for it to be gone
|
||||||
|
while [ -f "$PIDFILE" ]; do
|
||||||
|
sleep 0.1
|
||||||
|
done
|
||||||
|
return "$status"
|
||||||
|
}
|
||||||
|
|
||||||
|
restart() {
|
||||||
|
stop
|
||||||
|
start
|
||||||
|
}
|
||||||
|
|
||||||
|
reload() {
|
||||||
|
printf "Reloading %s config: " "$DAEMON"
|
||||||
|
start-stop-daemon --stop --signal HUP -q --pidfile "$PIDFILE" \
|
||||||
|
--exec "/usr/sbin/$DAEMON"
|
||||||
|
status=$?
|
||||||
|
if [ "$status" -eq 0 ]; then
|
||||||
|
echo "OK"
|
||||||
|
else
|
||||||
|
echo "FAIL"
|
||||||
|
fi
|
||||||
|
return "$status"
|
||||||
}
|
}
|
||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
start)
|
start)
|
||||||
printf 'Starting %s: ' "$DAEMON"
|
start
|
||||||
# shellcheck disable=SC2086 # we need the word splitting
|
;;
|
||||||
cmd -S -- $SMCROUTED_ARGS
|
stop)
|
||||||
;;
|
stop
|
||||||
|
;;
|
||||||
stop)
|
restart)
|
||||||
printf 'Stopping %s: ' "$DAEMON"
|
restart
|
||||||
cmd -K
|
;;
|
||||||
;;
|
reload)
|
||||||
|
reload
|
||||||
restart)
|
;;
|
||||||
$0 stop
|
*)
|
||||||
sleep 1
|
echo "Usage: $0 {start|stop|restart|reload}"
|
||||||
$0 start
|
exit 1
|
||||||
;;
|
;;
|
||||||
|
|
||||||
reload)
|
|
||||||
printf 'Reloading %s: ' "$DAEMON"
|
|
||||||
cmd -K -s HUP
|
|
||||||
;;
|
|
||||||
|
|
||||||
*)
|
|
||||||
echo "Usage: $0 {start|stop|restart|reload}"
|
|
||||||
exit 1
|
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
exit $?
|
||||||
|
|||||||
Reference in New Issue
Block a user