* 罗勇刚(Yonggang Luo) <luoyongg...@gmail.com> [2022-06-25 13:25:31 +0800]: > On Sat, Jun 25, 2022 at 12:47 PM Markus Wichmann <nullp...@gmx.net> wrote: > > > > On Sat, Jun 25, 2022 at 11:36:09AM +0800, 罗勇刚(Yonggang Luo) wrote: > > > So I am confused. What's the situation about ELF-TLS support in musl? > > > Is that still broken now? > > > > musl has always supported ELF-TLS anywhere except in libc itself. That > > was also never the problem. The problem was that the mesa people select > > the initial-exec TLS model explicitly, even though libGL ends up being > > dlopen()ed quite often, and then you should be using the general-dynamic > > model instead. > > My question is does musl support ELS-TLS when using dl-open. >
musl supports ELF TLS with or without dlopen. if something crashes that's most likely a bug in mesa. > > > > > According to [1], Rich proposed dropping the initial-exec attribute and > > replacing it with -mtls-dialect=gnu2 eight years ago. Has that happened > > yet? If so, dlopen()ing libGL with musl ought to work. > > `initial-exec` are only specified for __GLIBC__, If musl not predefined > macro ` __GLIBC__` note: initial-exec tls is wrong for both glibc and musl. (glibc reserves initial tls for ld_audit and dlmopen namespaces, it's not there for mesa. i.e. this only happens to work because it's unlikely that a process uses all the glibc features for which static tls is reserved, but if that happens then mesa will fail to load.)