Failure with fork()

Corinna Vinschen
Fri Jun 28 08:52:00 GMT 2013

On Jun 28 09:55, marco atzeri wrote:
> Il 6/28/2013 8:42 AM, Alan W. Irwin ha scritto:
> >I am getting absolutely nowhere.
> >
> [cut]
> >
> >I didn't get these hangs a month ago when I tried all this
> >before with wine-1.5.19.  Instead, at that time I got the exact error
> >message when running the above script concerning an unhandled page
> >fault that others have described at
> > and which the fork-fixed
> >cygwin1.dll is supposed to fix.  So presumably Cygwin's
> >bash.exe or some application executed by the above script has
> >changed in the last month to cause the different wine symptoms.
> >Or I am inadvertently doing something different than I did a month
> >ago.
> >
> >So unless someone can suggest a method to get around the "Can't open
> >package database for writing.  File exists." message, and assuming
> >that method doesn't subsequently run into the script hang (which is a
> >big if), then I think it is time for someone with a lot more wine and
> >cygwin expertise than me to take over here to attempt to try and
> >figure out a way to run setup.exe on Wine with fork-fixed cygwin1.dll
> >overwriting the buggy version.
> >
> >Alan
> Hi Alan,
> I assume you are not testing on wine for fun, but cygwin on wine
> seems a real problem as the bug can be in any of the two platforms.

I think it's a misconception that this very bug is the culprit of
Cygwin not running under wine.  Here's why:

What this bug did was very simple.  On each fork, the child process
committed 4K more stack than its parent.  The default stacksize for the
main thread of a process is 2 Megs.  It's a long way for a process to
take that much space on the stack.  So this problem should be visible
only in rare circumstances wher the main thread of a parent process
is already filled and then the child crashes because the 2 Megs are
overrun.  As I mentioned in my first post to this thread, the testcase
took almost 500 forks until the problem occured, 485 to be exact.
485*4K = 1.9 Megs.

If anything keeps Cygwin from running under Wine, it's probably some
different problem, which still need investigating.

> Could you clarify the original scope ?
> Eventually we can test in your behalf.
> As alternative to wine, if I am not wrong, Corinna when testing
> cygwin on several platforms (32/64, XP, W7, W8 , Server...)  is
> using some VM

Yes, I'm running VMs using Qemu/KVM with each Windows version since NT4
as guests.  Of course, that doesn't mean Cygwin should not run under
Wine, but it's not exactly a pressing issue from my POV.  I appreciate
any debugging efforts, but that probably requires somebody more fluent
with Wine internals.


Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

Problem reports:
Unsubscribe info:

More information about the Cygwin mailing list