delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2015/03/11/12:55:56

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:date:from:to:subject:message-id:reply-to
:references:mime-version:content-type:in-reply-to; q=dns; s=
default; b=PRRAUQZkquHYGqDkSw36nxIzKmhFBooQ3MFI7dmQnvlTWoaJltNd2
mwhQyBZiFj/h+KkfNSLKIWUJhB1P395DfLGZDJFAAjwSR1xj6TyKfMQ6SLl5duh8
339rkgDb+VZRYsCvjV/buCU41w/YAIqeVYMQlRqjKL32ojquX1LUWk=
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:date:from:to:subject:message-id:reply-to
:references:mime-version:content-type:in-reply-to; s=default;
bh=mYQiOolBvMpDWCPfhD0yhrklZWs=; b=r4d0mWLrTx2u7T2lieAXwZ27MyeL
v5Y9OxpUSpTjOxl87PsDacremXBncaC4oP+nfpLwSsGwcns7s1FgL5jBzOWLLN+3
WNXktj+i89zTBYMDDvDFo2Hjbwm2YL1t5ncDQAtdT86eAh+LZeWc9W905PHJ7a4z
KSvyuzsq58DvuoA=
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
Authentication-Results: sourceware.org; auth=none
X-Virus-Found: No
X-Spam-SWARE-Status: No, score=-5.9 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.2
X-HELO: calimero.vinschen.de
Date: Wed, 11 Mar 2015 17:55:34 +0100
From: Corinna Vinschen <corinna-cygwin AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: PTY dies when master in parent process is closed.
Message-ID: <20150311165534.GK5732@calimero.vinschen.de>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <20150305215323 DOT 760df4752fdbd6f19a931851 AT nifty DOT ne DOT jp> <20150305133100 DOT GY3213 AT calimero DOT vinschen DOT de> <20150305135839 DOT GZ3213 AT calimero DOT vinschen DOT de> <20150306200710 DOT 1264a46aa8dd633943e56212 AT nifty DOT ne DOT jp> <20150308163759 DOT 9d3eacd5f3b168a1515a6bc2 AT nifty DOT ne DOT jp> <20150311164829 DOT GJ5732 AT calimero DOT vinschen DOT de>
MIME-Version: 1.0
In-Reply-To: <20150311164829.GJ5732@calimero.vinschen.de>
User-Agent: Mutt/1.5.23 (2014-03-12)

--Fh0SynPkUvrWGMR0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Mar 11 17:48, Corinna Vinschen wrote:
> Hi Takashi,
>=20
> On Mar  8 16:37, Takashi Yano wrote:
> > On Fri, 6 Mar 2015 20:07:10 +0900
> > Takashi Yano <takashi DOT yano AT nifty DOT ne DOT jp> wrote:
> >=20
> > > On Thu, 5 Mar 2015 14:58:39 +0100
> > > Corinna Vinschen <corinna-cygwin AT cygwin DOT com> wrote:
> > >=20
> > > > I applied a patch.  Please have a look.
> > >=20
> > > I have tested the latest CVS version, and found
> > > a new problem.
> > >=20
> > > With new CVS version, slave side can not detect
> > > closure of master.
> > >=20
> > > Please use following Test Case 3. Test Case 3 is
> > > not terminated by itself with latest CVS.
> > >=20
> > > It seems that the program is stopping at
> > > cygwait(input_available_event, time_to_wait)
> > > in fhandler_pty_slave::read().
> > >=20
> > > I guess input_available_event should be set when
> > > the last valid master fd is closed.
> >=20
> > For this problem, I have made a patch.
> >=20
> > With this patch, it has been confirmed that the problems
> > in Test Case 1, 2 and 3 are fixed.
> >=20
> > I am glad if this would be a help.
> >=20
> > However, one matter to be concerned is irregular use of
> > PeekNamedPipe(). Maybe alternative means could be better
> > for detecting closure of all master fds.
>=20
> I'm inclined to apply this patch.  I think using PeekNamedPipe this way
> is pretty nice, albeit it's not atomic.  It might be a good idea to add
> an acquire/release_output_mutex bracket, even if that doesn't help for
> cases in which a process holding a master fd crashes hard.

Scratch that.  Atomicity doesn't really matter in this case.


Corinna

--=20
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

--Fh0SynPkUvrWGMR0
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBAgAGBQJVAHOGAAoJEPU2Bp2uRE+go70P/1tewJE2cOVsYxwG4105wZB+
TvjosvRMA0poxJnm1qBkUnwo0KxUu4z5qRXjfaR5w8O1g+Iq9tkxlMolw6mq9Drh
3JZAFkGaBll0DgResEfnG+UKokp/NLClHWp13xnvWXawSPH722BHdBTZEuZw0dRK
LCxvJ2NG2ygKx3hyIRzyo0/9KatDktc4XiT+b6nMDQ7/vofN9GiPgjZgcdsDPruO
XMa+5Je7MAwczCHcJQHaXLxP4gi7grZM0HM73j+nZs+pXjB/TMmVlBXDlZ6JzSTx
0XmnuNiw/X5ZuRtkkqK8204gBg/3cIt5baVq5cbmb6Sdxx+TqY7++0JFSbp95o5U
6hZPbNGmhl46OzPjmLi08n+oRoEw8RCl4lmjS//37Jkqkh0KxeIOcQU1I5Q+wato
85Clq4vXHyUbT1KcfSnWT6bRBLCTyuLmuC+ziD7Hpxc++tiWkwyeYm1CgagmE8HR
LnLjikPNTejMa8/NcMv5/wMp1KW1kPovO08IxxHIV0mr+LNuGNwB+BxwRpOYwx8Z
+lqDqmsfB4Mw1WRUys35iwEw7g+VKu/Eu1wNfG8Pi1pyUyj04a7mpLEjsZ9pLb4J
6oudEvKMVplfaXy/m7UxUtTkAelovIvBW2UgCcuoR2+SaKc1APwewiXR1c8fNw3A
JkL8fV9jVAWFi2vnETnU
=YVGh
-----END PGP SIGNATURE-----

--Fh0SynPkUvrWGMR0--

- Raw text -


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