freebsd-skq/sys/fs
Rick Macklem ff29f3b241 Fix the new NFS client so that it handles NFSv4 state
correctly during a forced dismount. This required that
the exclusive and shared (refcnt) sleep lock functions check
for MNTK_UMOUNTF before sleeping, so that they won't block
while nfscl_umount() is getting rid of the state. As
such, a "struct mount *" argument was added to the locking
functions. I believe the only remaining case where a forced
dismount can get hung in the kernel is when a thread is
already attempting to do a TCP connect to a dead server
when the krpc client structure called nr_client is NULL.
This will only happen just after a "mount -u" with options
that force a new TCP connection is done, so it shouldn't
be a problem in practice.

MFC after:	2 weeks
2011-05-27 22:05:10 +00:00
..
cd9660 Add a lock flags argument to the VFS_FHTOVP() file system 2011-05-22 01:07:54 +00:00
coda
deadfs
devfs
ext2fs Add a lock flags argument to the VFS_FHTOVP() file system 2011-05-22 01:07:54 +00:00
fdescfs
fifofs
hpfs Add a lock flags argument to the VFS_FHTOVP() file system 2011-05-22 01:07:54 +00:00
msdosfs Add a lock flags argument to the VFS_FHTOVP() file system 2011-05-22 01:07:54 +00:00
nfs Fix the new NFS client so that it handles NFSv4 state 2011-05-27 22:05:10 +00:00
nfsclient Fix the new NFS client so that it handles NFSv4 state 2011-05-27 22:05:10 +00:00
nfsserver Fix the new NFS client so that it handles NFSv4 state 2011-05-27 22:05:10 +00:00
ntfs Add a lock flags argument to the VFS_FHTOVP() file system 2011-05-22 01:07:54 +00:00
nullfs Add a lock flags argument to the VFS_FHTOVP() file system 2011-05-22 01:07:54 +00:00
nwfs
portalfs
procfs
pseudofs
smbfs
tmpfs Add a lock flags argument to the VFS_FHTOVP() file system 2011-05-22 01:07:54 +00:00
udf Add a lock flags argument to the VFS_FHTOVP() file system 2011-05-22 01:07:54 +00:00
unionfs Add a lock flags argument to the VFS_FHTOVP() file system 2011-05-22 01:07:54 +00:00