delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2006/11/13/08:56:39

X-Spam-Check-By: sourceware.org
Date: Mon, 13 Nov 2006 08:55:54 -0500
From: Christopher Faylor <cgf-no-personal-reply-please AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: Bash process remains after I close rxvt in certain ways
Message-ID: <20061113135554.GA4064@trixie.casa.cgf.cx>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <ej7u2n$mgb$1 AT sea DOT gmane DOT org> <45586C29 DOT 4050805 AT byu DOT net> <Pine DOT GSO DOT 4 DOT 63 DOT 0611130810310 DOT 295 AT access1 DOT cims DOT nyu DOT edu>
Mime-Version: 1.0
In-Reply-To: <Pine.GSO.4.63.0611130810310.295@access1.cims.nyu.edu>
User-Agent: Mutt/1.5.11
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT 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

On Mon, Nov 13, 2006 at 08:15:15AM -0500, Igor Peshansky wrote:
>On Mon, 13 Nov 2006, Eric Blake wrote:
>
>> According to Eric Lilja on 11/12/2006 12:52 PM:
>> > I recently upgraded to a dual core machine which made me use the windows
>> > task manager alot. That's when I noticed that if I close the rxvt window
>> > by pressing 'x' in the top right corner (or doing alt-f4, I never do
>> > this, just tried it now to see what happened) the rxvt process is
>> > terminated and the window disappears but the "underlying" bash process
>> > is still running (without a visible window), consuming ~3.5 MB of memory
>> > and 0 cpu time according to the task manager.
>>
>> So far, no one has found a good way for a cygwin process killed by Alt-F4
>> (or the X button) to treat that as a SIGHUP and pass that information on
>> to all of its children processes.  So, by killing rxvt abruptly, you are
>> indeed stranding bash as a zombie process.
>>
>> > If I exit rxvt by typing
>> > exit, the bash process is terminated too.
>>
>> Actually, typing exit will exit bash, not rxvt; but when rxvt realizes
>> that all of its children processes have exited, it exits as well.
>>
>> > Can I do something so the bash
>> > process is always terminated properly no matter how I close the rxvt
>> > window?
>>
>> Submit a patch to make cygwin processes recognize Alt-F4 as a SIGHUP that
>> needs to be passed to their children?  Or possibly even a patch such that
>> when a controlling pty terminal is closed, all children (such as bash)
>> reading from that pty get an end-of-input (possibly a SIGPIPE) when trying
>> to read from the disappearing terminal?
>
>Actually, it's not the Cygwin processes that need that feature, but the
>W11 library.  When rxvt is closed via the 'X' button or Alt-F4, Windows
>sends it the WM_QUIT message, which ought to be handled properly in the
>library as application exit (and thus send SIGHUP to all immediate
>children).  This is done by the Cygwin console already, so it may simply
>be a matter of copying/pasting some code...

Actually, Cygwin sends a SIGHUP to the process being closed when it sees
a CTRL_CLOSE_EVENT.  Maybe it just needs to send a SIGHUP to the entire
process group rather than just the one process.

I'll look into that.

cgf

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

- Raw text -


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