Improvements to fork handling (2/5)
Christopher Faylor
cgf-use-the-mailinglist-please@cygwin.com
Sun May 22 01:44:00 GMT 2011
On Wed, May 11, 2011 at 02:31:37PM -0400, Ryan Johnson wrote:
>Hi all,
>
>This patch has the parent sort its dll list topologically by
>dependencies. Previously, attempts to load a DLL_LOAD dll risked pulling
>in dependencies automatically, and the latter would then not benefit
>from the code which "encourages" them to land in the right places. The
>dependency tracking is achieved using a simple class which allows to
>introspect a mapped dll image and pull out the dependencies it lists.
>The code currently rebuilds the dependency list at every fork rather
>than attempt to update it properly as modules are loaded and unloaded.
>Note that the topsort optimization affects only cygwin dlls, so any
>windows dlls which are pulled in dynamically (directly or indirectly)
>will still impose the usual risk of address space clobbers.
This seems CPU and memory intensive during a time for which we already
know is very slow. Is the benefit really worth it? How much more robust
does it make forking?
cgf
More information about the Cygwin-patches
mailing list