On Thu, Feb 02, 2012 at 09:22:22PM +0100, Torfinn Ingolfsen wrote: > Hi, > > I thought this bug was fixed back in 2009? > root@kg-v7# uname -a > FreeBSD kg-v7.kg4.no 8.2-STABLE FreeBSD 8.2-STABLE #7: Sat Jul 9 23:00:31 > CEST 2011 r...@kg-v7.kg4.no:/usr/obj/usr/src/sys/GENERIC amd64 > root@kg-v7# > root@kg-v7# service devd status > devd is running as pid 555. > root@kg-v7# service devd restart > Stopping devd. > Starting devd. > devd: devd already running, pid: 555 > /etc/rc.d/devd: WARNING: failed to start devd > root@kg-v7# service devd status > devd is not running. > > What gives?
This is probably "what gives", as it's a common problem with all sorts of daemons and is not specific to devd in the least: - devd is running (pid 555) - Admin issues "service devd restart" -- devd is sent SIGTERM; devd internally starts shutting down, but is not fully dead yet. "kill" does not block (wait) for processes to end, obviously -- Same script issues a start of devd, which fails because the daemon is still running (still shutting down) -- Resulting message is failure - Between failure message and below step, devd shuts down - Admin issues "service devd status" -- Script states devd isn't running I imagine either rc.subr(8) check_pidfile or wait_for_pids needs to be used, presumably in devd_stop () (which would need to be added/written). I do not know the implications of adding this, however, as there may be situations where (say on system shutdown) that you want things to "just end immediately" and not wait for the daemon to cleanly shut down. I say this because of devd's direct ties to devctl(4). Doug, any thoughts? -- | Jeremy Chadwick j...@parodius.com | | Parodius Networking http://www.parodius.com/ | | UNIX Systems Administrator Mountain View, CA, US | | Making life hard for others since 1977. PGP 4BD6C0CB | _______________________________________________ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"