X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-4.3 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:157.56.242.197;KIP:(null);UIP:(null);IPV:NLI;H:BL2PRD0512HT001.namprd05.prod.outlook.com;RD:none;EFVD:NLI X-SpamScore: 1 X-BigFish: PS1(zzbb2dI98dI9371I7eaI1432Izz1ee6h1de0h1202h1e76h1d1ah1d2ahzz177df4h17326ah75dfh8275bhb412mz32i2a8h668h839h947hd25he5bhf0ah1288h12a5h12a9h12bdh137ah13b6h1441h1504h1537h153bh162dh1631h1758h1765h1155h) Message-ID: <50F70B27.8000904@coverity.com> Date: Wed, 16 Jan 2013 15:18:47 -0500 From: Tom Honermann User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/17.0 Thunderbird/17.0 MIME-Version: 1.0 To: Subject: Re: Intermittent failures with ctrl-c References: <50E48743 DOT 5040401 AT coverity DOT com> <20130102204821 DOT GA6524 AT ednor DOT casa DOT cgf DOT cx> <50E4A597 DOT 1060600 AT coverity DOT com> <50F5D559 DOT 4090909 AT coverity DOT com> <20130116020420 DOT GA13284 AT ednor DOT casa DOT cgf DOT cx> <50F6D757 DOT 3000005 AT coverity DOT com> <50F6DB0F DOT 2020602 AT gmail DOT com> <50F6E695 DOT 20302 AT coverity DOT com> <50F6F69F DOT 3040000 AT coverity DOT com> <20130116185908 DOT GA17801 AT ednor DOT casa DOT cgf DOT cx> In-Reply-To: <20130116185908.GA17801@ednor.casa.cgf.cx> 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 AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On 01/16/2013 01:59 PM, Christopher Faylor wrote: > On Wed, Jan 16, 2013 at 01:51:11PM -0500, Tom Honermann wrote: >> Can you elaborate on what resources you are referring to? I fail to >> see how the Cygwin binaries run via the .bat file could conflict with >> mintty (or the top level bash process) since the intervening cmd.exe >> execution would have blocked inheritance of Cygwin related resources, >> primarily since fork() isn't used to create these child processes. > > Here is a very basic issue: If you are going to be submitting a bug > report you should be making things as simple and as clear as possible. I'm trying. What you are suggesting implies that all testing of snapshots either be done with a cmd.exe prompt (and copying enough of another Cygwin installation into the snapshot), or updating the host Cygwin installation. My host installation is used for production purposes and I don't have spare machines available for other testing. I'm not messing with it. I am aware of the snapshot guidance: http://cygwin.com/faq-nochunks.html#faq.setup.snapshots > The fact that there are two cygwin DLLs in play here adds additional > confusion and complication. If we now have to enter into a theoretical > discussion about what should be allowed, we have needlessly strayed from > the initial problem. > > Given the number of historical problems we have had with mixing two > versions of Cygwin and given that our consistent guidance is to > only have one on your computer, there is no reason to get into a > discussion about what is allowed. Just use one version. You > can easily switch back and forth using windows tools. I previously mentioned that problems can be duplicated without mintty. Here are detailed steps for how to reproduce without mintty. 1) Install the latest snapshot 2) Copy bash.exe, false.exe, and their dependent DLLs from a Cygwin install into the usr/bin directory of the snapshot. For me this consisted of: bash.exe cygintl-8.dll cygiconv-2.dll cygreadline7.dll cygncurses-10.dll cygncursesw-10.dll cyggcc_s-1.dll false.exe 3) Shutdown all other Cygwin processes. 4) Create 'test.bat' in the usr/bin directory of the snapshot with the following contents: @echo off setlocal set PATH=%CD%;%PATH% :loop echo test... bash -c false if not errorlevel 1 ( echo exiting... exit /B 1 ) goto loop 5 Start a cmd.exe prompt. 6) Change directories to the usr/bin directory of the snapshot. 7) Start task manager or some other process monitoring tool and keep it running. Run ./test.bat from the cmd.exe prompt and interrupt it with ctrl-c. Repeat until you see a new bash.exe or false.exe process persisting following the interrupt. It took me 20 or so tries re-running test.bat and interrupting it before I was able to produce a hanging/abandoned process. I don't know how to make things any simpler or clearer than this. 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