[RFC][BZ #14577] Unload failed modules even if nodelete is specified.

Roland McGrath roland@hack.frob.com
Thu Oct 31 20:13:00 GMT 2013


Needs a test case.

I don't see how that fix could be right.  DF_1_NODELETE is not set until
after _dl_init is called (and sets l_init_called).

In fact, it looks to me like there may be a bug in the other direction.
That is, since DF_1_NODELETE is not set until after _dl_init, the
initializers themselves could cause a dlclose call that results in their
own removal.  When RTLD_NODELETE was not requested, that would just be a
bug in the module itself.  But with RTLD_NODELETE, the module has a
reasonable expectation that dlclose would be a no-op.  Maybe you'd like to
write a test case for that scenario as well?



More information about the Libc-alpha mailing list