mailing list of musl libc
 help / color / mirror / code / Atom feed
* musl 1.1.22 released
@ 2019-04-10  1:09 Rich Felker
  0 siblings, 0 replies; only message in thread
From: Rich Felker @ 2019-04-10  1:09 UTC (permalink / raw)
  To: musl

This release makes major internal changes to the way threads, dynamic
thread-local storage, and multi-threaded set*id() work. There is now a
global thread list that is complete and consistent whenever the lock
protecting it can be obtained, including at the moment of kernel-level
task exit, and the lock protocol is async-signal-safe. This allows
set*id() to safely synchronize privilege change for all live threads
without a /proc dependency which turned out to have fundamental race
conditions. Availability of the thread list has also allowed dlopen to
install new TLS for each thread at library load time, rather than
deferring installation to first access, which improves global-dynamic
model performance and eliminates working but theoretically-unsafe
calls from the TLSDESC asm into C code when the TLSDESC model is used
to access dynamic TLS.

Major changes have also been made to the dynamic linker's library
dependency handling, for the purposes of correcting dlsym
dependency-order resolution of symbols and providing dependency-order
execution of shared library constructors. Calls to dlopen from
multiple threads can now run ctors concurrently, serializing only on
shared dependencies, and recursive calls to dlopen behave more
correctly (believed to be to the maximum extent possible) with regard
to non-deadlock and to ensuring that dependencies have been
constructed.

Support for the priority inheritance mutex type has also been added,
with the ability to create PI mutexes conditional on a probe for
support by the kernel.

Notable regressions in sscanf and pthread_key_create introduced in
1.1.21 have also been fixed, along with various other bugs and minor
conformance issues.


https://www.musl-libc.org/releases/musl-1.1.22.tar.gz
https://www.musl-libc.org/releases/musl-1.1.22.tar.gz.asc



Special thanks to musl's release sponsors (patreon.com/musl):

* The Midipix Project (midipix.org)
* Hurricane Labs (hurricanelabs.com)
* Neal Gompa
* Les Aker
* Laurent Bercot
* Justin Cormack

I'd also especially like to thank musl's new individual project
sponsor, Jeremiah Gowdy, who'll be credited on the new project website
(coming very soon!), and others who have supported the work in this
release cycle.


Rich


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2019-04-10  1:09 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-10  1:09 musl 1.1.22 released Rich Felker

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).