1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-13 10:02:38 +00:00
freebsd/sys
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
..
amd64 Add the DTrace hooks for exception handling (Function boundary trace 2008-05-24 06:32:26 +00:00
arm The VM system no longer uses setPQL2(). Remove it and its helpers. 2008-05-23 04:03:54 +00:00
boot Add an entry for the age(4) module. 2008-05-19 02:13:50 +00:00
bsm
cam Locking in the ses_ioctl handler doesn't have to be so strict because 2008-03-17 17:18:16 +00:00
cddl Make the zfs module depend on the opensolaris module in preparation for it 2008-05-24 06:43:55 +00:00
compat Fix a panic when it occurred during initializing the ndis driver because 2008-05-15 04:29:28 +00:00
conf Add the KDTRACE_HOOKS option for DTrace support. 2008-05-23 22:17:28 +00:00
contrib Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
crypto
ddb Rename debug.ddb.capture.bytes sysctl to debug.ddb.capture.bufoff in 2008-04-25 13:23:36 +00:00
dev Add codec id for Sigmatel STAC9872AK 2008-05-22 09:14:12 +00:00
fs - Add locking to all filesystem operations in fdescfs and flag it as MPSAFE. 2008-05-24 14:51:30 +00:00
gdb Commit SYSINIT() ;-adding patch missed in previous pass. 2008-03-16 13:02:04 +00:00
geom - Recognize the 'volume' parameter when creating a plex. 2008-05-22 10:27:03 +00:00
gnu Move the head of byte-level advisory lock list from the 2008-04-16 11:33:32 +00:00
i4b
i386 Add a cyclic hook for DTrace. 2008-05-24 06:27:54 +00:00
ia64 Account for IPI_PREEMPT. We don't want to call sched_preempt() with 2008-05-23 19:53:50 +00:00
isa atrtc.c is a repocopy of the RTC device driver from i386/isa/clock.c 2008-04-14 07:57:15 +00:00
kern Add DTrace 'proc' provider probes using the Statically Defined Trace 2008-05-24 06:22:16 +00:00
libkern
mips Retire pmap_addr_hint(). It is no longer used. 2008-05-18 04:16:57 +00:00
modules Leave out a couple of DTrace modules for now. 2008-05-24 04:36:07 +00:00
net The if_check() function performed three actions: 2008-05-17 03:38:13 +00:00
net80211 special-case broadcast probe request in ieee80211_find_rxnode; we need 2008-05-22 22:22:10 +00:00
netatalk Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
netatm Replaced the misleading uses of a historical artefact M_TRYWAIT with M_WAIT. 2008-03-25 09:39:02 +00:00
netgraph Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
netinet Consistently check IPFW and DUMMYNET privileges in the configuration 2008-05-22 08:10:31 +00:00
netinet6 - Adds support for the multi-asconf (From Kozuka-san) 2008-05-20 13:47:46 +00:00
netipsec Remove last bits of OS adaptation code from the IPSec code. 2008-05-17 04:00:11 +00:00
netipx Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
netnatm
netncp lockmgrs need to be released before to be destroyed and draining doesn't 2008-03-30 18:16:33 +00:00
netsmb Really, smb_iod_main() is not totally MPSAFE, so just acquire and drop 2008-03-27 01:23:59 +00:00
nfs Replaced the misleading uses of a historical artefact M_TRYWAIT with M_WAIT. 2008-03-25 09:39:02 +00:00
nfs4client Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
nfsclient Allow the block size used when booting over NFS to be overridden. It defaults 2008-05-16 06:27:03 +00:00
nfsserver Replaced the misleading uses of a historical artefact M_TRYWAIT with M_WAIT. 2008-03-25 09:39:02 +00:00
nlm Tighten up the error-handling in nlm_get_rpc. While I'm here, fix a 2008-04-16 09:09:50 +00:00
opencrypto
pc98 MFi386: revision 1.249 2008-05-24 09:07:52 +00:00
pccard
pci - Set sc->dev to the new-bus device_t so all the device_printf()s work. 2008-05-12 21:34:52 +00:00
powerpc Invalidate the TLB in pmap_cpu_bootstrap(), so that it also happens 2008-05-23 19:16:24 +00:00
rpc Fix some issues that showed up during Kris' testing. 2008-04-11 10:34:59 +00:00
security Don't use LK_DRAIN before calling VOP_FSYNC() in the two further 2008-05-21 13:59:05 +00:00
sparc64 The VM system no longer uses setPQL2(). Remove it and its helpers. 2008-05-23 04:03:54 +00:00
sun4v Use the "options " spelling (vs. "options<TAB>") so that commented lines 2008-05-21 03:36:53 +00:00
sys Fix the build by including <sys/param.h> in <sys/clist.h>. 2008-05-23 18:34:33 +00:00
tools
ufs After converting the "snapshot" mount option to the MNT_SNAPSHOT flag, 2008-05-24 00:41:32 +00:00
vm Allow VM object creation in ufs_lookup. (If vfs.vmiodirenable is set) 2008-05-20 19:05:43 +00:00
xdr Add the new kernel-mode NFS Lock Manager. To use it instead of the 2008-03-26 15:23:12 +00:00
Makefile + Use the default cscope names. 2008-05-21 07:56:10 +00:00