freebsd-nq/sys/fs
John Baldwin dbfcf8cfea When the MNTK_EXTENDED_SHARED mount option was added, some filesystems were
changed to defer the setting of VN_LOCK_ASHARE() (which clears LK_NOSHARE
in the vnode lock's flags) until after they had determined if the vnode was
a FIFO.  This occurs after the vnode has been inserted a VFS hash or some
similar table, so it is possible for another thread to find this vnode via
vget() on an i-node number and block on the vnode lock.  If the lockmgr
interlock (vnode interlock for vnode locks) is not held when clearing the
LK_NOSHARE flag, then the lk_flags field can be clobbered.  As a result
the thread blocked on the vnode lock may never get woken up.  Fix this by
holding the vnode interlock while modifying the lock flags in this case.

MFC after:	3 days
2010-07-16 19:20:20 +00:00
..
cd9660 When the MNTK_EXTENDED_SHARED mount option was added, some filesystems were 2010-07-16 19:20:20 +00:00
coda Synchronize Coda kernel module definitions in our coda.h to Coda 6's 2010-04-05 20:12:54 +00:00
deadfs Add function vop_rename_fail(9) that performs needed cleanup for locks 2010-04-02 14:03:01 +00:00
devfs Add a new function devfs_parent_dirent() for resolving devfs parent 2010-06-09 15:29:12 +00:00
ext2fs Move checking against RLIMIT_FSIZE into one place, vn_rlimit_fsize(). 2010-05-05 16:44:25 +00:00
fdescfs Fix a long standing regression of readdir(3) in fdescfs(5) introduced 2010-03-16 19:59:14 +00:00
fifofs - Improve comments about locking of the "struct fifoinfo" which is a bit 2009-11-06 22:29:46 +00:00
hpfs Remove the thread argument from the FSD (File-System Dependent) parts of 2009-05-11 15:33:26 +00:00
msdosfs Style fixes and removal of unneeded variable. 2010-05-06 18:43:19 +00:00
nfs Fix typos in macros. 2010-05-08 14:50:12 +00:00
nfsclient Retire the NFS access cache timestamp structure. It was used in VOP_OPEN() 2010-07-15 19:40:48 +00:00
nfsserver Delete comments related to soft clock interrupts that don't apply 2010-07-16 01:44:49 +00:00
ntfs Fix ntfs such that it understand media with a non-512-bytes sector size: 2009-12-07 15:15:08 +00:00
nullfs Disable bypass for the vop_advlockpurge(). The vop is called after 2010-05-16 05:00:29 +00:00
nwfs Eliminate unnecessary page queues locking. 2010-06-18 22:12:12 +00:00
portalfs Don't use ap->a_td->td_ucred when we were passed ap->a_cred. 2009-12-02 18:09:22 +00:00
procfs fix a few cases where a string is passed via format argument instead of 2010-06-11 19:27:21 +00:00
pseudofs The cache_enter(9) function shall not be called for doomed dvp. 2010-04-20 10:19:27 +00:00
smbfs Eliminate unnecessary page queues locking. 2010-06-18 22:12:12 +00:00
tmpfs Eliminate unnecessary page queues locking. 2010-06-16 00:41:21 +00:00
udf When the MNTK_EXTENDED_SHARED mount option was added, some filesystems were 2010-07-16 19:20:20 +00:00
unionfs Fix some LORs between vnode locks and filedescriptor table locks. 2009-07-31 13:40:06 +00:00