[PATCH] fix dlclose() that does not unload all depended libraries

GOTO Masanori gotom@debian.or.jp
Thu Sep 9 16:56:00 GMT 2004


At Thu, 09 Sep 2004 09:27:03 -0700,
Ulrich Drepper wrote:
> GOTO Masanori wrote:
> > This patch fixes dlclose() that does not unload all depended libraries
> > currently.
> > [...]
> 
> The unloading code is extremely complicated.

Yes, I consume to verify this code with a few weeks because it's
really complicated.  However, I still want someone to check it.  I'm
greatly thankful to you for getting your review.

> In the cases where a DSO
> is not unloaded so far this often happens by design.  I will need quite
> some time to look at the patch and nobody else please check this in.
>
> The biggest problem I have is people calling this a "bug".  It is not.
> Unloading *always* is optional.  Programs depending on actual unloading
> are broken.

Agreed, SUSv3 says:

	Although a dlclose( ) operation is not required to remove
	structures from an address space, neither is an implementation
	prohibited from doing so.

It's just useful feature that DSO can be unloaded with unmapping.

Regards,
-- gotom



More information about the Libc-alpha mailing list