delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2013/06/27/07:21:16

X-Recipient: archive-cygwin AT delorie DOT com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:message-id:date:from:mime-version:to:subject
:references:in-reply-to:content-type:content-transfer-encoding;
q=dns; s=default; b=Q2Q7TERGkrHlPeSNro3DmnzJQsmTqdpanGDpZw6o7fT
qg7sDEVhEsgWMq5HPwt/zmUP9cXQxQzOHly0/VkW7dJhPKKsl30IWmQNfKd2fOvJ
oJOAY9Pu3MRfG87/Ko8ematamuWw5DithGHD+ZA2dneXLPxWumsKjE9Y/9Z+z420
=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:message-id:date:from:mime-version:to:subject
:references:in-reply-to:content-type:content-transfer-encoding;
s=default; bh=bc5vw4crHjxdnO+PrOeAi6ksflg=; b=asrZUs0ET3BBZyh1H
/i3tPHPsLwMV6fQX/7P4/BvFwtnvNKr/0gFKdsmlXbS6DCLDFaBlHkZ8zTRPJd1f
llar01rj5NQ3gDkvX7UX5ymGqh62NErbD3LpLUypqHWhgkw+yUX8eR6AcRuXDQMC
OmO76EbqKGIEQ0hNf7I6Utks3M=
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
X-Spam-SWARE-Status: No, score=-3.9 required=5.0 tests=BAYES_00,KHOP_THREADED,RP_MATCHES_RCVD,SPF_NEUTRAL autolearn=ham version=3.3.1
Message-ID: <51CC2018.2010608@cs.utoronto.ca>
Date: Thu, 27 Jun 2013 07:20:56 -0400
From: Ryan Johnson <ryan DOT johnson AT cs DOT utoronto DOT ca>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130509 Thunderbird/17.0.6
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: Failure with fork()
References: <CAMCbSMqcCEUhjiSsv8CvP1LUdxEHgyS4jJvLjzkSCACAuQ9e2w AT mail DOT gmail DOT com>
In-Reply-To: <CAMCbSMqcCEUhjiSsv8CvP1LUdxEHgyS4jJvLjzkSCACAuQ9e2w@mail.gmail.com>

On 27/06/2013 5:35 AM, Arjen Markus wrote:
> Hello,
>
> the bug I am reporting here on behalf of Alan Irwin surfaced in the
> combination wine and Cygwin (Alan summarised it here:
> http://www.winehq.org/pipermail/wine-devel/2013-June/100328.html). It
> has to do with the way Cygwin handles forks.
>
> The bug can be illustrated with this small program:
>
> int main(void) {
>      while(!fork());
>      return 0;
> }
>
> It is meant to enable infinite forking, but on Cygwin it immediately
> stops. I tried
> it on both Cygwin (not via wine but simply Windows 7) and Linux:
> - On Linux the program continues without any problem
> - On Cygwin it stops immediately with an error message that the child process
>    terminated unexpectedly with some weird return code.
>
> Can anyone shed light on this? This bug is a showstopper for the
> combination wine and Cygwin.
Out of curiosity, why do you need a fork bomb? Does the script just 
capture the effect of multiple fork calls in quick succession? How many 
forks can you pull off before it croaks, and is that number consistent 
from run to run? I'd be shocked if it really died "immediately" -- as in 
"zero forked children" -- so it would be interesting to see if the issue 
is related to the number of fork calls (resource exhaustion of some 
kind), or just to how quickly they run back to back (data race of some 
kind).

Ryan


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019