|
Message-ID: <CAA4Wa2ugp+AcbVfQJMDyLHy5=ZfLAHX4znO=t_=sG95i7vrQUA@mail.gmail.com> Date: Thu, 15 Mar 2018 10:24:05 -0500 From: Thadeus Fleming <thadeus.j.fleming@...il.com> To: musl@...ts.openwall.com Subject: Re: How to test if dlclose is a no-op? I'm working on improving a system that makes some bad assumptions about dynamic unloading. While I'm not fond of dynamic unloading, I think it might be valuable to be able to distinguish between "this C library doesn't support unloading at all" and "if the planets are all aligned, unloading might work." Testing if dlclose is a no-op would allow me to make that distinction. On Thu, Mar 15, 2018 at 9:40 AM, Rich Felker <dalias@...c.org> wrote: > On Thu, Mar 15, 2018 at 08:32:34AM -0500, Thadeus Fleming wrote: >> In the spirit of not “assum[ing] a certain implementation has >> particular properties rather than testing,” how can one test if >> dlclose is a no-op, as it is in musl, without breaking things if it >> isn’t? > > This sounds like an XY problem¹. Do you care about whether you can > recover virtual memory space, whether the underlying fs objects remain > referenced, whether there's a cycle of dtors and ctors running, or > something else? > > FYI there is no clear answer to the question even on other > implementations. glibc only sometimes unloads; there are corner cases > and race-type conditions where unloading is impossible for them. You > really should not be designing around an assumption/requirement that > anything get unloaded. > > Rich > > > > ¹ http://xyproblem.info/
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.