aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristos Margiolis <christos@FreeBSD.org>2026-05-21 16:53:27 +0000
committerChristos Margiolis <christos@FreeBSD.org>2026-05-28 14:06:06 +0000
commitb2677d002edbe9308b1f8cecd1a5fc515d2a5deb (patch)
tree2088d9de927a1d5ab2bb95d2a64c5788bdcb7e97
parent803f686938ec2472d54a26bff668e48cc4999558 (diff)
rc: virtual_oss: Handle absent pidfile properly
Instead of throwing errors from the programs that use it, print a warning if the file does not exist. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: 0mp, jrm Pull-Request: https://ron-dev.freebsd.org/FreeBSD/src/pulls/33
-rw-r--r--libexec/rc/rc.d/virtual_oss17
1 files changed, 11 insertions, 6 deletions
diff --git a/libexec/rc/rc.d/virtual_oss b/libexec/rc/rc.d/virtual_oss
index dd3bbe41c094..9861545b8bfc 100644
--- a/libexec/rc/rc.d/virtual_oss
+++ b/libexec/rc/rc.d/virtual_oss
@@ -76,12 +76,17 @@ stop_instance()
if [ -z "${instance_args}" ]; then
warn "no such config: ${config}"
else
- pid="$(cat "${pidpath}/${config}.pid")"
- startmsg -n "Stopping virtual_oss config: ${config}: "
- kill "${pid}"
- pwait "${pid}"
- rm -f "${pidpath}/${config}.pid"
- startmsg "done"
+ pidfile="${pidpath}/${config}.pid"
+ if [ ! -f "${pidfile}" ]; then
+ warn "not running: ${config}"
+ else
+ pid="$(cat "${pidfile}")"
+ startmsg -n "Stopping virtual_oss config: ${config}: "
+ kill "${pid}"
+ pwait "${pid}"
+ rm -f "${pidfile}"
+ startmsg "done"
+ fi
fi
}