1
0
mirror of https://git.FreeBSD.org/src.git synced 2025-01-02 12:20:51 +00:00
freebsd/sys/fs/udf
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
..
ecma167-udf.h Use the same style as the rest of the file for the optional data string 2009-02-09 20:42:51 +00:00
osta.c Use #ifdef APPLE_MAC instead of #ifdef MAC to conditionalize Apple-specific 2009-06-06 07:13:57 +00:00
osta.h
udf_iconv.c
udf_mount.h
udf_vfsops.c When the MNTK_EXTENDED_SHARED mount option was added, some filesystems were 2010-07-16 19:20:20 +00:00
udf_vnops.c udf_vnops: cosmetic followup to r208671 - better looking code 2010-06-22 08:22:25 +00:00
udf.h udf_readatoffset: read through directory vnode, do not read > MAXBSIZE 2009-02-26 18:58:41 +00:00