glibc 2.34 - Hard ABI freeze effective immediately.

Florian Weimer fweimer@redhat.com
Sun Jul 25 21:54:59 GMT 2021


* H. J. Lu via Libc-alpha:

> It was a mistake to export _r_debug from ld.so:
>
> https://sourceware.org/bugzilla/show_bug.cgi?id=28130
>
> I'd like to deprecate _r_debug in glibc 2.34 and replace it with:
>
> /* Return the address of that structure used by the dynamic linker.  */
> extern struct r_debug * __r_debug_location (void) __attribute_const__;
> #define _r_debug (*__r_debug_location ())
>
> so that I can extend struct r_debug for libraries loaded with dlmopen:
>
> https://gitlab.com/x86-psABIs/Linux-ABI/-/issues/2

We need to keep it as a symbol because debuggers use it.

If GCC had a an attribute that says, no copy relocation please, we could
perhaps use that in <link.h>.

Maybe we can turn it into a compat symbol.  But it's too late for such
changes in glibc 2.34.

The replacement could use a separate symbol version (GLIBC_DEBUG) with
different ABI stability rules, which would pave the way towards
backporting.

Thanks,
Florian



More information about the Libc-alpha mailing list