X-Recipient: archive-cygwin@delorie.com
X-SWARE-Spam-Status: No, hits=-4.1 required=5.0	tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,KHOP_THREADED,RCVD_IN_HOSTKARMA_NO,RCVD_IN_HOSTKARMA_W,RCVD_IN_HOSTKARMA_WL,RCVD_IN_HOSTKARMA_YE
X-Spam-Check-By: sourceware.org
X-Forefront-Antispam-Report: CIP:132.245.1.149;KIP:(null);UIP:(null);IPV:NLI;H:BLUPRD0512HT002.namprd05.prod.outlook.com;RD:none;EFVD:NLI
X-SpamScore: 1
X-BigFish: PS1(zzbb2dI98dI9371I1521I1432Izz1ee6h1de0h1202h1e76h1d1ah1d2ahzzb412mz32i2a8h668h839h947hd25he5bhf0ah1288h12a5h12a9h12bdh137ah13b6h1441h1504h1537h153bh162dh1631h1758h1765h1155h)
Message-ID: <50F5D559.4090909@coverity.com>
Date: Tue, 15 Jan 2013 17:16:57 -0500
From: Tom Honermann <thonermann@coverity.com>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/17.0 Thunderbird/17.0
MIME-Version: 1.0
To: <cygwin@cygwin.com>
Subject: Re: Intermittent failures with ctrl-c (was: retrieving process exit codes)
References: <20121222024943.GA5773@ednor.casa.cgf.cx> <20121222031430.GA8355@ednor.casa.cgf.cx> <50D57818.1070706@gmail.com> <20121222175041.GA14475@ednor.casa.cgf.cx> <20121223165621.GA9935@ednor.casa.cgf.cx> <50DCB454.9030400@coverity.com> <20121229215725.GA18847@ednor.casa.cgf.cx> <50E23F98.1060004@coverity.com> <20130101053606.GB18911@ednor.casa.cgf.cx> <50E48743.5040401@coverity.com> <20130102204821.GA6524@ednor.casa.cgf.cx> <50E4A597.1060600@coverity.com>
In-Reply-To: <50E4A597.1060600@coverity.com>
Content-Type: text/plain; charset="ISO-8859-1"; format=flowed
Content-Transfer-Encoding: 7bit
X-OriginatorOrg: coverity.com
X-IsSubscribed: yes
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com

On 01/02/2013 04:24 PM, Tom Honermann wrote:
> On 01/02/2013 03:48 PM, Christopher Faylor wrote:
>> I managed to duplicate a hang by really stressing ctrl-c a loop.  It
>> uncovers some rather amazing Windows behavior which I have to think
>> about.  Apparently ExitThread can be called recursively within the
>> thread that Windows creates to handle CTRL-C.
>
> I'm glad you could reproduce.  Based on your description, this sounds
> like a separate issue and not a regression introduced by the workarounds
> you put in place for the ExitProcess / ExitThread race.  Correct?
>
> I wonder if this is the same issue I'm experiencing though.  I'm only
> pressing ctrl-c once and it sounds like you might be deliving a ctrl-c
> to the same process multiple times.  That may not be relevant to the
> root cause however.

I noticed that some changes were checked in related to signal handling 
and process termination recently, so I downloaded the most recent 
snapshot (20130114) and tested again.  I was still able to produce 
hanging processes (including hangs of strace.exe) by hitting ctrl-c in a 
mintty window while Cygwin processes ran in an infinite loop inside of a 
.bat file.  I was able to produce a hang ~1 out of 20 times.

If you are still working on this, then I apologize for the noise. 
Otherwise, assuming you are still looking at this, if I can provide 
something further that would be helpful, please let me know.

Tom.


--
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

