freebsd-nq/sys/fs
Ulf Lilleengen 60af8a6a7a - Add locking to all filesystem operations in fdescfs and flag it as MPSAFE.
- Use proper synhronization primitives to protect the internal fdesc node cache
  used in fdescfs.
- Properly initialize and uninitalize hash.
- Remove unused functions.

Since fdescfs might recurse on itself, adding proper locking to it needed some
tricky workarounds in some parts to make it work. For instance, a descriptor in
fdescfs could refer to an open descriptor to itself, thus forcing the thread to
recurse on vnode locks. Because of this, other race conditions also had to be
fixed.

Tested by:	pho
Reviewed by:	kib (mentor)
Approved by:	kib (mentor)
2008-05-24 14:51:30 +00:00
..
cd9660 Cleanup lockmgr interface and exported KPI: 2008-01-24 12:34:30 +00:00
coda Add the support for the AT_FDCWD and fd-relative name lookups to the 2008-03-31 12:01:21 +00:00
deadfs Below is slightly edited description of the LOR by Tor Egge: 2007-01-22 11:25:22 +00:00
devfs When vget() fails (because the vnode has been reclaimed), there is no 2008-05-23 16:36:39 +00:00
fdescfs - Add locking to all filesystem operations in fdescfs and flag it as MPSAFE. 2008-05-24 14:51:30 +00:00
fifofs Remove kernel support for M:N threading. 2008-03-12 10:12:01 +00:00
hpfs Cleanup lockmgr interface and exported KPI: 2008-01-24 12:34:30 +00:00
msdosfs Move the head of byte-level advisory lock list from the 2008-04-16 11:33:32 +00:00
ntfs lockinit() can't accept LK_EXCLUSIVE as an initializaiton flag, so just 2008-05-15 21:39:25 +00:00
nullfs Add the support for the AT_FDCWD and fd-relative name lookups to the 2008-03-31 12:01:21 +00:00
nwfs Replace lockmgr lock protecting nwfs vnode hash table with an sx lock. 2008-03-02 19:02:30 +00:00
portalfs vn_lock() is currently only used with the 'curthread' passed as argument. 2008-01-10 01:10:58 +00:00
procfs Remove kernel support for M:N threading. 2008-03-12 10:12:01 +00:00
pseudofs Introduce some functions in the vnode locks namespace and in the ffs 2008-02-24 16:38:58 +00:00
smbfs Move the head of byte-level advisory lock list from the 2008-04-16 11:33:32 +00:00
tmpfs Move the head of byte-level advisory lock list from the 2008-04-16 11:33:32 +00:00
udf Fix and speedup timestamp calculations which is roughly based on the patch in 2008-05-16 22:31:17 +00:00
unionfs - change function name from *_vdir to *_vnode because 2008-05-07 05:32:55 +00:00