freebsd-dev/lib
Mike Makonnen c40bafac85 Implement reference counting of read-write locks. This uses
a list in the thread structure to keep track of the locks and
how many times they have been locked. This list is checked
on every lock and unlock. The traversal through the list is
O(n). Most applications don't hold so many locks at once that
this will become a problem. However, if it does become a problem
it might be a good idea to review this once libthr is
off probation and in the optimization cycle.
This fixes:
	o deadlock when a thread tries to recursively acquire a
	  read lock when a writer is waiting on the lock.
	o a thread could previously successfully unlock a lock it did not own
	o deadlock when a thread tries to acquire a write lock on
	  a lock it already owns for reading or writing [ this is admittedly
	  not required by POSIX, but is nice to have ]
2004-01-19 14:51:45 +00:00
..
compat Update with the 4.9 pam modules, and add pam_opieaccess.so to the mix. 2003-12-07 03:02:27 +00:00
csu Explicitly specify an alignment for abitag. Without it, gcc specifies a 2003-10-17 15:43:13 +00:00
libalias Mostly mechanical rework of libalias: 2004-01-17 10:52:21 +00:00
libatm style.Makefile(5) 2003-08-18 15:25:39 +00:00
libbind
libbluetooth Update Bluetooth code. 2003-10-12 22:04:24 +00:00
libbsnmp Fixed the fatal bug: CFLAGS should be added to, not overridden. 2004-01-17 02:27:55 +00:00
libbz2 Remove MAINTAINER lines. 2003-06-14 19:32:52 +00:00
libc add cross-reference to clock_gettime(2) 2004-01-19 12:41:39 +00:00
libc_r Have a single set of POSIX threads man pages. The LIBRARY section 2004-01-14 21:44:26 +00:00
libcalendar mdoc(7): Use the new feature of the .In macro. 2003-09-08 19:57:22 +00:00
libcam mdoc(7): Use the new feature of the .In macro. 2003-09-08 19:57:22 +00:00
libcom_err
libcompat mdoc(7): Use the new feature of the .In macro. 2003-09-08 19:57:22 +00:00
libcrypt Stage 3 of dynamic root support. Make all the libraries needed to run 2003-08-17 08:28:46 +00:00
libdevinfo mdoc(7): Use the new feature of the .In macro. 2003-09-08 19:57:22 +00:00
libdevstat Include <nlist.h> for nlist-related declarations instead of depending on 2003-10-13 05:30:20 +00:00
libdisk Declare crc32 static. There's a copy in libz that conflicts for the 2003-11-17 05:47:42 +00:00
libedit mdoc(7): Use the new feature of the .In macro. 2003-09-08 19:57:22 +00:00
libexpat Stage 3 of dynamic root support. Make all the libraries needed to run 2003-08-17 08:28:46 +00:00
libfetch preparation for RFC3493. EAI_NODATA was deprecated. 2003-10-23 13:50:01 +00:00
libform Use 2003-06-06 13:46:55 +00:00
libftpio The .Fn function 2003-06-08 10:34:00 +00:00
libgeom style.Makefile(5) 2003-08-18 15:25:39 +00:00
libio Remove now redundant and now conflicting declaration of sysarch(2). 2004-01-10 18:37:11 +00:00
libipsec - plug memory leak. 2003-11-05 09:41:23 +00:00
libipx style.Makefile(5) 2003-08-18 15:25:39 +00:00
libisc Fix the #include part of the SYNOPSIS for heap.3 2003-06-17 08:43:19 +00:00
libkiconv Make msdosfs long filenames matching case insensitive again. 2003-12-08 08:32:20 +00:00
libkse Return EPERM if mutex owner is not current thread but it tries to 2004-01-17 03:09:57 +00:00
libkvm Allow to specify a character special device as a core file. 2003-10-29 14:02:16 +00:00
libmd Assorted mdoc(7) fixes: 2003-10-09 23:06:06 +00:00
libmenu Use 2003-06-06 13:46:55 +00:00
libmilter Remove MAINTAINER= lines from individual Makefiles in favor of the 2003-07-07 03:54:04 +00:00
libmp Add a reference to bn(3) for those looking for functional multiprecision 2003-08-30 05:35:46 +00:00
libncp Fix for 64 bit platforms. sysctl's length args are pointers to 2003-07-25 19:17:46 +00:00
libncurses Unbreak the NOINSTALLLIB install. 2003-08-30 13:57:31 +00:00
libnetgraph Use the new defines that include the trailing '\0' in the code. 2003-11-14 08:09:01 +00:00
libngatm Build the layer 3 (signalling) stuff into the library and install 2003-11-07 09:10:25 +00:00
libopie Drop login.c and logwtmp.c from the library build. None of the apps 2002-10-04 00:24:31 +00:00
libpam Deal better with the crypto version of the PAM library that goes 2004-01-18 14:58:07 +00:00
libpanel Use 2003-06-06 13:46:55 +00:00
libpcap * Modify libpcap to work a bit better with our 802.11 code. This means 2003-11-04 06:12:21 +00:00
libpthread Return EPERM if mutex owner is not current thread but it tries to 2004-01-17 03:09:57 +00:00
libradius mdoc(7): Use the new feature of the .In macro. 2003-09-08 19:57:22 +00:00
librpcsvc clnt_call takes args of type xdrproc_t. 2003-10-26 03:43:35 +00:00
libsbuf style.Makefile(5) 2003-08-18 15:25:39 +00:00
libsdp Change sdp_open_local(3) API. It now takes a path to a control socket 2004-01-09 22:44:28 +00:00
libsm Remove MAINTAINER= lines from individual Makefiles in favor of the 2003-07-07 03:54:04 +00:00
libsmb Zap now-unused SHLIB_MINOR 2002-09-28 00:25:32 +00:00
libsmdb Remove MAINTAINER= lines from individual Makefiles in favor of the 2003-07-07 03:54:04 +00:00
libsmutil Remove MAINTAINER= lines from individual Makefiles in favor of the 2003-07-07 03:54:04 +00:00
libstand - Move the code to try to open a single chunk file and prompt for the 2004-01-15 18:38:15 +00:00
libtacplus mdoc(7): Use the new feature of the .In macro. 2003-09-08 19:57:22 +00:00
libtelnet Make sure that a "make release" (more accurately the bit that makes 2003-07-24 17:19:15 +00:00
libthr Implement reference counting of read-write locks. This uses 2004-01-19 14:51:45 +00:00
libufs Remove unneccessary include of sys/types.h in the SYNOPSIS 2003-10-09 09:45:20 +00:00
libugidfw Assorted mdoc(7) fixes. 2003-06-01 19:41:49 +00:00
libusbhid Correct URI to USB specs. 2003-12-21 14:30:23 +00:00
libutil Bump the major version on libtuil. libutil now relies on the mac_* 2003-11-12 21:56:07 +00:00
libvgl Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
libwrap Turn on the extended syntax, which TCP_wrappers has by default, as 2003-07-24 19:58:56 +00:00
libxpg4 Mark libxpg4 as OBSOLETE_IN_6: it has been empty since its contents 2003-06-13 07:21:37 +00:00
liby Zap now-unused SHLIB_MINOR 2002-09-28 00:25:32 +00:00
libypclnt Fix the master yppasswd routines, so they really work 2003-06-15 10:36:53 +00:00
libz Stage 3 of dynamic root support. Make all the libraries needed to run 2003-08-17 08:28:46 +00:00
msun Fix a problem where libm compiled under 5.X would depend on features 2003-10-27 01:28:07 +00:00
ncurses Unbreak the NOINSTALLLIB install. 2003-08-30 13:57:31 +00:00
Makefile The snmp_netgraph module depends on libnetgraph. So add a dependency and 2003-11-12 17:09:13 +00:00
Makefile.inc Zap now-unused SHLIB_MINOR 2002-09-28 00:25:32 +00:00