[OpenAFS-devel] openafs hangs on shutdown with selinux (caused
by callback expiration via umount?)
Christopher Allen Wing
wingc@umich.edu
Thu, 3 Jan 2008 08:50:16 -0500 (EST)
Russ:
On Wed, 2 Jan 2008, Russ Allbery wrote:
> The Debian init script first calls afsd -shutdown and then calls umount.
> I see that the Red Hat init script in the packaging directory doesn't do
> this. I wonder if it would help.
'afsd -shutdown' seems to do nothing, because the first thing that the
kernel module does is check whether /afs is mounted:
src/afs/afs_call.c :: afs_syscall_call()
...
...
else if (parm == AFSOP_SHUTDOWN) {
...
...
if (afs_globalVFS != 0) {
afs_warn("AFS isn't unmounted yet! Call aborted\n");
code = EACCES;
} else
afs_shutdown();
The man page for afsd also states:
CAUTIONS
Do not use the -shutdown parameter. It does not shutdown the Cache
Manager effectively. Instead, halt Cache Manager activity by using the
standard UNIX umount command to unmount the AFS root directory (by
convention, /afs). The machine must then be rebooted to reinitialize
the Cache Manager.
but it appears that -shutdown has no effect anyway; you have to umount
/afs first, and the umount ends up running afs_shutdown() by itself.
I guess the only use of 'afsd -shutdown' is to handle the case where afsd
failed to start properly (ie, it initialized the kernel module, but never
mounted /afs)?
Thanks,
Chris
wingc@umich.edu