[RFC PATCH 0/3] implement dlmopen hooks for gdb
Carlos O'Donell
carlos@redhat.com
Tue Sep 22 17:59:09 GMT 2020
On 9/22/20 1:37 PM, Florian Weimer wrote:
> * Carlos O'Donell:
>
>> On 9/22/20 1:06 PM, Florian Weimer wrote:
>>> * Carlos O'Donell via Libc-alpha:
>>>
>>>> Your next step would be to export the symbol via Versions at the current
>>>> symbol node GLIBC_2.32 (soon to be GLIBC_2.33).
>>>
>>> Can we create a new GLIBC_DEBUG symbol versions for symbols which are
>>> not intended to be used for run-time linking?
>>>
>>> The idea is that consumers will have deal with the absence of these
>>> symbols anyway, so we just need one symbol version that does not depend
>>> on the glibc version for this. Dependency management considerations
>>> (that apply to symbols with run-time linking) do not come into play here.
>>
>> I don't object to GLIBC_DEBUG, like GLIBC_PRIVATE it can be considered
>> a transient ABI that is valid only for a major release?
>
> No, unlike GLIBC_PRIVATE, you can assume that if a GLIBC_DEBUG symbol is
> there (and perhaps has the documented size), it has the documented
> semantics. But you can't assume that it is present.
>
> The semantics of GLIBC_PRIVATE symbols can change arbitrarily, even
> between builds.
Yes, absolutely, I agree completely, for it to be useful the semantics
have to be:
- If you detect a given symbol foo@GLIBC_DEBUG, then the feature is
present and has the semantics you expect.
- If you want new semantics then you need to make a foo2@GLIBC_DEBUG
with the new semantics.
What are the runtime semantics of the symbol? How do you access it?
--
Cheers,
Carlos.
More information about the Libc-alpha
mailing list