This is the mail archive of the libc-alpha@sources.redhat.com 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: evolution vs prelink on debian ppc sid


> We have extended the ELF spec for prelink.

Indeed.  However, our dladdr presumes invariants that are not specified but
just happen to be true with our own tools--but oops, not even all of our
own tools.  

> Why not add one more thing, a DT_DYNSYM_SZ entry with the required
> information?

That is obviously the best thing.

> Let not do anything which costs unnecessaily at runtime.  I can probably
> even get this in the official gABI.

We have to do something with objects that don't have the new tag, i.e. all
objects that exist now.  We can just continue to presume unspecified
invariants about their layout, and change the one case we know of (prelink)
that violates the invariant to always produce the new tag.  The safest
choice is the one that costs a little at run-time.  But a) it's not a huge
cost, and b) does anyone really care that `dladdr' be a high-performance
interface?  If you do really care, then the cost can be minimized by
caching the result as I suggested, or even just folding that scan into the
existing load-time scans over all the dynamic tags.


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