[PATCH v2] malloc: Remove malloc hooks (Bug 23328)

Florian Weimer fweimer@redhat.com
Mon Jul 23 18:54:00 GMT 2018


On 07/23/2018 08:52 PM, Carlos O'Donell wrote:
> On 07/23/2018 02:45 PM, Florian Weimer wrote:
>> On 07/23/2018 08:27 PM, Carlos O'Donell wrote:
>>> On 07/23/2018 11:59 AM, Joseph Myers wrote:
>>>> On Mon, 23 Jul 2018, Florian Weimer wrote:
>>>>
>>>>> Should we install libmalloc-extras.so under that name?
>>>>>
>>>>> Or should it be libmalloc-extras.so.0 (soname) without a
>>>>> libmalloc-extras.so symbolic link, to discourage new
>>>>> applications from linking against it, so making it more obvious
>>>>> that this is intended for backwards compatibility with old
>>>>> applications?
>>>>
>>>> I don't think it's something to discourage applications from
>>>> linking against.  Among other things, it's for any use of mtrace,
>>>> which is useful for both new and old applications as a
>>>> light-weight memory checker for uses similar to those in glibc's
>>>> own testsuite.
>>>
>>> I'm slightly in agreement with Joseph here, the use of
>>> libmalloc-extras.so might turn out to be useful mechanism for
>>> deploying this kind of code for now and into the future.
>>
>> This wasn't obvious from the patch.
>>
>> If there is a promise of ABI stability for the library (rather than
>> just interposing bits in libc.so.6), we need ABI checking for it, and
>> we should add a soname version.  That's currently missing from the
>> patch.
> 
> I'm not sure what you mean by this.
> 
> I envision this will always be an interposer.
> 
> The core ABI stability will be provided by libc.so.6.
> 
> The interposer will provide the functional implementation, such that
> the default libc.so.6 implementation is a stub that does nothing.
> 
> Does that make sense?

If we support linking against the interposer, it has an ABI, which needs 
to be checked independently.  Merely verifying against libc.so.6 is not 
enough because if you remove a symbol from the interposer, it will break 
existing binaries due to the dynamic linker currently performing soname 
matching for versioned symbols which are not interposed.

Thanks,
Florian



More information about the Libc-alpha mailing list