So that we can use Type=simple.
This fixes an issue where systemd would stop tracking us after
a rebozo event (like weekly restarts or bos restart -bosserver),
since after re-exec() we also re-daemon(), and the parent process
(which is the one systemd is tracking) exits cleanly. That's taken
as a signal to shut things down with the ExecStop command of
bos shutdown, which works as intended and leaves things stopped.
This slightly increases the window between when systemd thinks
we are started and ready to serve traffic and the time when we
are actually ready to serve traffic (now systemd thinks we're ready
at process start, versus when the parent exits), but that difference
is just argument parsing, loading up the bnode types, creating dirs
and switching to them. It doesn't include starting up Rx or the
child processes for the configured bnodes.
Change-Id: I8d8665e529ecd8f679b5f2c697991333f6d1a7a6
thread exhaustion during CPS recalculation.
- Avoid a potential 100ms transmit delay in RX when the peer's receive
window advances.
+ * Switch openafs-fileserver.service to Type=simple and pass -nofork to
+ bosserver. (Closes: #865962)
-- Benjamin Kaduk <kaduk@mit.edu> Thu, 06 Jul 2017 09:19:27 -0500
After=network.target network-online.target local-fs.target
[Service]
-Type=forking
+Type=simple
EnvironmentFile=-/etc/default/openafs-fileserver
-ExecStart=/usr/sbin/bosserver $DAEMON_ARGS
+ExecStart=/usr/sbin/bosserver -nofork $DAEMON_ARGS
ExecStop=/usr/bin/bos shutdown localhost -wait -localauth
[Install]