Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm 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 Date: Sun, 28 Aug 2005 22:17:56 +0200 (MEST) From: "Pavel Tsekov" To: cygwin AT cygwin DOT com Cc: cygwin AT cygwin DOT com MIME-Version: 1.0 References: <20050828193433 DOT GA25584 AT trixie DOT casa DOT cgf DOT cx> Subject: =?ISO-8859-1?Q?Re:_zsh:_command_not_found_=3D>_hangs?= X-Authenticated: #14308112 Message-ID: <18425.1125260276@www86.gmx.net> X-Flags: 0001 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-IsSubscribed: yes > Well, I just tried, and I can reproduce a hang with this: > > while :; do quer; done >& /dev/null > > It happens with 1.5.18 and the current snapshot. I didn't check the > 1.5.18 version since I was too lazy to regenerate my copy with symbols > but the snapshot version "hangs" in sigsuspend, apparently waiting for a > SIGCHLD. Since the process has no children, it is going to hang > forever. > > So, this case, at least, is not a regression and it is not clear that it > is a cygwin problem. This doesn't seem to be the same problem . I see what the original reporter saw. Even the strace is identical. The hang occurs after SIGCHLD is processed in the signal handler. I can prove this by using the strace output and the zsh source. The hang occurs because of this call: (gdb) 845 res = WaitForMultipleObjects (num, wait_objects, FALSE, timeout); in cancelable_wait(). The signal handler returns to the wrong place (?) and ends up in WaitForMultipleObjects() instead after the sigsuspend() call in zsh. I'll see what I can find out. If I find out something which makes more sense that what I currently know I'll post. -- Lust, ein paar Euro nebenbei zu verdienen? Ohne Kosten, ohne Risiko! Satte Provisionen für GMX Partner: http://www.gmx.net/de/go/partner -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/