freebsd-dev/lib
Konstantin Belousov f5b9747075 libthr(3): explain some internals of the locks implementation
Describe internal allocations, mention problems with the use of global
malloc(3) and the reasons for internal allocator existence.

Document shared objects implementation and describe shortcomings of the
chosen approach, as well as the rationale why it was done that way.

Reviewed by:	markj
Discussed with:	jilles
Sponsored by:	The FreeBSD Foundation
MFC after:	3 days
Differential revision:	https://reviews.freebsd.org/D32243
2021-10-05 06:39:53 +03:00
..
atf Import atf 0.22 snapshot ca73d08c3fc1ecffc1f1c97458c31ab82c12bb01 2021-02-04 15:03:05 +00:00
clang Add WITH_LLVM_BINUTILS to install LLVM binutils instead of Elftoolchain 2021-09-06 09:49:49 +01:00
csu Add arm64 ifunc support in static binaries 2021-08-23 13:39:09 +00:00
flua jail(3lua): add jail.attach()/jail.remove() methods 2021-09-30 16:31:04 -05:00
geom geli(8): Do not report error on resize to the same size. 2021-08-18 17:11:03 -04:00
googletest googletest: Silence warnings about deprecated implicit copy constructors 2021-08-26 22:06:53 +02:00
lib9p lib9p: fix building on systems without capser 2021-01-04 20:48:48 +01:00
lib80211 lib80211: Start adding 11ac ETSI bits to regdomain.xml 2021-03-18 11:09:10 +00:00
libalias Rename NO_WERROR -> MK_WERROR=no 2021-01-07 09:31:03 +00:00
libarchive libarchive: import changes from upstream 2021-08-23 03:07:36 +02:00
libauditd libauditd: make it a PRIVATELIB 2020-04-19 02:20:39 +00:00
libbe zfs: unbreak build broken in 160388166 2021-06-08 22:21:11 +02:00
libbearssl Revert that! 2020-07-19 23:56:19 +00:00
libbegemot Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libblacklist Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libblocksruntime Move all sources from the llvm project into contrib/llvm-project. 2019-12-20 19:53:05 +00:00
libbluetooth bluetooth: Remove one more h4 reference. 2021-09-29 22:02:25 -06:00
libbsdstat Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libbsm libbsm: fix some MLINKS 2020-04-19 02:18:40 +00:00
libbsnmp pkgbase: Put the mibs and defs in the bnsmp package 2021-06-19 17:50:03 +02:00
libbz2 Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libc libc: ssp: sprinkle around some __dead2 2021-09-30 23:55:17 -05:00
libc_nonshared
libc++ Merge llvm-project 12.0.0 release 2021-06-13 22:01:15 +02:00
libc++experimental Move all sources from the llvm project into contrib/llvm-project. 2019-12-20 19:53:05 +00:00
libcalendar Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libcam libcam: Define depop structures and introduce scsi_wrap 2021-09-20 16:27:59 -06:00
libcapsicum Add missing FreeBSD functions to -legacy when building on macOS/Linux 2020-08-25 13:23:31 +00:00
libcasper libcasper(3): Correct some warnings found by mandoc 2021-07-12 06:16:55 +02:00
libclang_rt Prefer MK_SSP=no to SSP_CFLAGS= 2021-08-04 15:23:22 -03:00
libcom_err pkgbase: Create a FreeBSD-kerberos package 2021-09-07 10:23:14 +02:00
libcompat
libcompiler_rt compiler-rt: add aarch64 init function for LSE atomics 2021-09-06 21:24:01 +02:00
libcrypt Do a sweep and remove most WARNS=6 settings 2020-10-01 01:10:51 +00:00
libcuse Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libcxxrt Only set WARNS if not defined 2020-09-11 13:28:37 +00:00
libdevctl Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libdevdctl Fix race in case of device destruction. 2021-04-13 11:25:27 -04:00
libdevinfo devinfo: add man page links 2020-08-04 21:09:36 +00:00
libdevstat Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libdl libc: include rtld.h into static implementations of rtld interface 2021-04-09 23:46:24 +03:00
libdpv ncurses: chase dependency changes in the source tree 2021-10-04 11:38:24 +02:00
libdwarf Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libedit ncurses: chase dependency changes in the source tree 2021-10-04 11:38:24 +02:00
libefivar pkgbase: Remove libefivar package and add a efi-tools one 2021-09-07 10:24:21 +02:00
libelf libelf: add compression header support 2020-10-23 16:35:23 +00:00
libelftc Update ELF Tool Chain to upstream r3769 2019-12-05 13:20:15 +00:00
libevent1 rename in-tree libevent v1 to libevent1 2020-05-28 22:05:50 +00:00
libexecinfo Move all sources from the llvm project into contrib/llvm-project. 2019-12-20 19:53:05 +00:00
libexpat pkgbase: Put libbsdxml in FreeBSD-runtime 2021-09-07 10:22:45 +02:00
libfetch fetch: do not confuse capacity and length 2021-09-09 16:51:26 +02:00
libfigpar Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libgcc_eh Add build system support for ASAN+UBSAN instrumentation 2021-08-02 14:33:24 +01:00
libgcc_s libgcc_s: Export 64-bit int to 128-bit float functions 2021-10-03 19:34:25 +01:00
libgeom [skip ci] correct a few SPDX license tags 2021-07-07 13:52:20 -06:00
libgpio Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libgssapi Remove __NO_TLS. 2021-02-23 20:08:10 +02:00
libiconv_modules Do a sweep and remove most WARNS=6 settings 2020-10-01 01:10:51 +00:00
libifconfig libifconfig: Overhaul ifconfig_media_* interfaces 2021-03-05 04:15:55 -05:00
libipsec ipsec_set_policy(3): fix sentence 2021-08-10 03:46:35 +03:00
libipt Update Intel Processor Trace decoder library. 2019-10-10 12:46:34 +00:00
libjail libjail: Handle an error from reallocarray() when trimming the buffer. 2020-01-07 21:44:27 +00:00
libkiconv libkiconv: address memory leak in not-found cases 2021-04-22 19:32:34 -04:00
libkvm libkvm: Fix build after removeal of p_tracevp 2021-05-22 16:36:54 +03:00
libldns Update Makefile.depend files 2019-12-11 17:37:53 +00:00
liblua contrib/lua: update to 5.4.2 2021-01-13 23:56:18 -06:00
liblutok Add liblutok a lightweight C++ API for lua. 2020-03-23 18:26:23 +00:00
liblzma Convert libs with pc files to use PCFILES 2021-03-16 07:13:07 +01:00
libmagic Convert libs with pc files to use PCFILES 2021-03-16 07:13:07 +01:00
libmd Revert "Disable the accelerated arm64 sha25 in static libraries" 2021-08-30 10:36:43 +01:00
libmemstat malloc: move malloc_type_internal into malloc_type 2020-11-06 21:33:59 +00:00
libmilter Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libmixer mixer(3): Fix buildworld after 38c857d956 . 2021-10-01 16:34:10 +02:00
libmp Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libmt Add the LTO-9 density code to libmt and the mt(1) man page. 2020-12-10 21:06:06 +00:00
libnetbsd
libnetgraph Fix SYNPOSIS section to point to the proper include directive. 2020-05-15 12:04:39 +00:00
libnetmap libnetmap: reset errno in nmreq_register_decode() 2021-04-02 14:31:57 +00:00
libngatm Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libnv libpfct: Fix PIC flag 2021-04-17 22:10:13 +02:00
libomp Merge llvm-project 12.0.0 release 2021-06-13 22:01:15 +02:00
libopenbsd Only set WARNS if not defined 2020-09-11 13:28:37 +00:00
libopencsd Update opencsd to 0.14.2 2020-06-17 10:42:20 +00:00
libopie Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libpam openssh: update to OpenSSH v8.7p1 2021-09-07 21:05:51 -04:00
libpathconv Fix a few mandoc issues 2020-10-09 19:12:44 +00:00
libpcap MFV r353141 (by phillip): 2019-12-21 21:01:03 +00:00
libpe
libpfctl pfctl: userspace adaptive syncookies configration 2021-09-29 15:11:54 +02:00
libpjdlog pkgbase: Create a FreeBSD-utilities package and make it the default one 2019-09-05 14:15:47 +00:00
libpmc libpmc: add some AMD pmu counter aliases 2021-09-30 11:15:26 -03:00
libpmcstat pmcstat: fix PPC kernel symbol resolution 2020-11-05 16:47:23 +00:00
libproc Remove the MK_LIBCPLUSPLUS option 2021-02-01 09:32:07 +00:00
libprocstat libprocstat: extend zfs_defs hack for .pieo 2021-09-13 09:03:55 -04:00
libradius libradius: fix no SSL build 2021-06-02 17:25:37 -07:00
libregex pkgbase: Remove FreeBSD-libregex package 2021-09-07 10:23:53 +02:00
librpcsec_gss Fix a few mandoc issues 2020-10-09 19:12:44 +00:00
librpcsvc Update Makefile.depend files 2019-12-11 17:37:53 +00:00
librss Update Makefile.depend files 2019-12-11 17:37:53 +00:00
librt Fix aio_readv(2), aio_writev(2) with SIGEV_THREAD. 2021-08-22 23:49:23 +12:00
librtld_db librtld_db: Handle anonymous mappings below the first file mapping. 2020-06-05 18:44:14 +00:00
libsbuf Do a sweep and remove most WARNS=6 settings 2020-10-01 01:10:51 +00:00
libsdp Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libsecureboot libsecureboot: define SOPEN_MAX 2021-08-10 22:46:40 +03:00
libsm Merge sendmail 8.16.1 to HEAD: See contrib/sendmail/RELEASE_NOTES for details 2020-07-15 18:28:54 +00:00
libsmb
libsmdb Merge sendmail 8.16.1 to HEAD: See contrib/sendmail/RELEASE_NOTES for details 2020-07-15 18:28:54 +00:00
libsmutil
libsqlite3 [PowerPC64LE] Pass our byte order to the sqlite3 build. 2020-09-23 02:17:44 +00:00
libssp libssp: don't compile with -fstack-protector* 2020-03-14 15:15:27 +00:00
libssp_nonshared Provide libssp based on libc 2020-01-04 20:19:25 +00:00
libstats Make use of the stats(3) framework in the TCP stack. 2019-12-02 20:58:04 +00:00
libstdbuf
libstdthreads Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libsysdecode libsysdecode: Permit _ in VM_PROT_(.*) names. 2021-09-23 17:31:39 -07:00
libtacplus libtacplus: Remove bogus srandomdev+random 2019-12-13 05:11:34 +00:00
libtelnet
libthr libthr(3): explain some internals of the locks implementation 2021-10-05 06:39:53 +03:00
libthread_db Remove libthr, csu, libthread_db and testfloat sparc64 specific directories. 2020-02-27 04:44:58 +00:00
libucl Only set WARNS if not defined 2020-09-11 13:28:37 +00:00
libufs Remove #define _KERNEL hacks from libprocstat 2021-02-21 11:38:21 +02:00
libugidfw Deduplicate fsid comparisons 2020-05-21 01:55:35 +00:00
libulog Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libunbound MFV r361322: 2020-05-21 21:00:46 +00:00
libusb Improve handling of USB device re-open in the LibUSB v1.x API. 2021-06-11 17:06:44 +02:00
libusbhid USB HID descriptors may push/pop the current state to allow 2020-06-05 07:57:16 +00:00
libutil pidfile test: guarantee nul termination of the read pid string 2021-09-24 19:52:41 +03:00
libveriexec Do not claim libbearssl et al are INTERNALLIB 2020-04-01 05:45:12 +00:00
libvgl Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libvmmapi Remove an always-true check. 2021-09-15 09:03:17 -07:00
libwrap Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libxo add blank line between variables (testing git commit) 2021-08-04 16:56:55 -04:00
liby
libypclnt Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libz Convert libs with pc files to use PCFILES 2021-03-16 07:13:07 +01:00
libzstd libprivatezstd: Restrict symbol visibility similar to upstream 2021-01-03 11:26:46 -08:00
msun Fix powf(). 2021-09-06 18:51:31 +01:00
ncurses ncurses: fix path where to find curses.h at bootstrap 2021-10-04 12:31:23 +02:00
ofed Fix ibnd_* manpages sources 2021-02-18 15:59:34 +01:00
tests
Makefile Implement and use new mixer(3) library for FreeBSD. 2021-09-22 19:43:56 +02:00
Makefile.inc build: provide a default WARNS for all in-tree builds 2020-09-18 17:17:46 +00:00