This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]