OpenAFS Master Repository branch, openafs-stable-1_8_x, updated. openafs-stable-1_8_13_2-59-gf3ef739
Gerrit Code Review
gerrit@openafs.org
Thu, 5 Jun 2025 13:19:34 -0400
The following commit has been merged in the openafs-stable-1_8_x branch:
commit f3ef73920004c97723e0596bc1c03312d99c50cb
Author: Andrew Deason <adeason@sinenomine.net>
Date: Thu Apr 4 13:20:05 2024 -0500
RedHat: Retry umount /afs on systemd shutdown
When systemd tries to stop openafs-client.service during system
shutdown, our 'umount /afs' will fail if someone else is accessing
/afs. The openafs-client.service unit is then marked as deactivated
(and failed), and the shutdown sequence proceeds.
After all services have been stopped, systemd-shutdown tries to kill
all remaining processes with SIGTERM and then SIGKILL, waiting
DefaultTimeoutStopSec seconds (default: 90) for them to die. If there
are unkillable processes running (for example, afsd), this results in
at least a 3-minute delay.
It's hard to make sure there are no processes accessing /afs during
the shutdown sequence, since that could include processes outside of
defined systemd units. So some processes may be shutting down in
parallel with openafs-client.service, and so it's a race whether there
are /afs-using processes when we try to umount /afs.
To avoid the most common cases of this, retry our umount during
openafs-client's ExecStop for $UMOUNT_TIMEOUT seconds (default: 30),
to give other /afs-using processes a chance to go away. Only do this
if the system is shutting down (according to 'systemctl
is-system-running'), so users don't see a long delay running
'systemctl stop openafs-client' during normal system operation.
Written in collaboration with cwills@sinenomine.net.
Reviewed-on: https://gerrit.openafs.org/15633
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
(cherry picked from commit bd2a7530ad3649141a6fffd028aa3e95a6ea2f75)
Change-Id: Ida56b8a7512f0fd01470321e973bb67b1a092e44
Reviewed-on: https://gerrit.openafs.org/16107
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
.../RedHat/openafs-client-systemd-helper.sh | 24 ++++++++++++++++++++++
1 file changed, 24 insertions(+)
--
OpenAFS Master Repository