Bug#368326: libc6: LD_ASSUME_KERNEL=2.4.1 no longer works
On Sun, May 21, 2006 at 01:45:20PM -0400, Daniel Jacobowitz wrote:
> See my earlier message (for #368022) for an alternative. I also want
> to correct this statement. I've identified the problematic case. It
> only happens because:
>
> 1. perl is dynamically linked to libpthread.so
> 2. perl is not linked to libstdc++.so
> 3. a perl module dynamically loads libstdc++.so later
>
> The problem case is "the threads library has already been loaded, but
> no library using TLS has been loaded, when someone tries to dlopen a
> library with TLS" - much rarer than what you describe.
BTW, that's why the useldt patch helped. It caused libpthread.so to be
built with USE_TLS defined, which modifies the initialization to do
TLS setup. See pthread.c:__pthread_initialize_minimal, in particular
the !USE__THREAD case.
--
Daniel Jacobowitz
CodeSourcery
Reply to: