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: IFUNC resolver scheduling (bugs 21041, 20019)


On 01/25/2017 08:57 AM, Florian Weimer wrote:
> I tried to fix most of the issues involving IFUNC resolvers and their access to unrelocated symbols.
... 
> Comments?

H.J.'s patch turns a runtime segfault (if the function is ever
called) into a dynamic loader failure message that tells you 
exactly what is wrong.

The segfault scenario has been present since Feb 2015, and thus
possibly 4 releases. 

Your patch fixes what's wrong and makes the test case work,
and leaves some cases as unsupported.

Your patch has the requirement that it needs memory allocated
to be able to delay the IFUNC and COPY resolution to a second
pass.

Ignoring my present opinion about a total toplogical sort
involving relocation dependencies, which is out of scope for
2.25.

Revering H.J.'s patch just gets us back to things crashing
mysteriously at runtime. So I'm not looking to revert the patch.

The only alternative seems to be to loosen the soname and
version checks and remove the versioned interposers from
libpthread? That seems more risky than your change.

Do you think your patch is viable for 2.25 to fix bug 21041?

-- 
Cheers,
Carlos.


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