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:reply-to:subject:to:references:from:message-id :date:mime-version:in-reply-to:content-type :content-transfer-encoding; q=dns; s=default; b=PGfIbiEEol1AVZmF nlL9wWN0foYfZqjuc8sZ8UBVAjq58DKmY/kVWF3C/XUKwAsZkU4IVyq4QgKIliWY vWBuOTQ5c79xEtHvamcHYO7Y1l5OQnxu9XpzqBdpcgIQ+S1jZqiedD7/uW/IwSg7 8P6Iko8o/7kh+R3QecflPVjw4VA= 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:reply-to:subject:to:references:from:message-id :date:mime-version:in-reply-to:content-type :content-transfer-encoding; s=default; bh=t2RGMD27q2dG3Op3kHJ41j sUUys=; b=riLa06RE4i/62xvdwnjQDuLByUGw5QXDgp85kx1kQ0S2DzJCXNT2zu mfHWU9da/XUSn0bLVuzEtvdrRqUpq1BLnYQvCQOf+cL/1Witk0QiqGbfmfqIK3BL QfxnZp9QiFTkuEyzhdTNvvAH9TMRzHZ0BQk7d3wyAw6IEItAnErro= 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 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.8 required=5.0 tests=AWL,BAYES_00,KAM_LAZY_DOMAIN_SECURITY,RCVD_IN_DNSWL_LOW autolearn=no version=3.3.2 spammy=canada, Canada, inglis, Inglis X-HELO: smtp-out-no.shaw.ca X-Authority-Analysis: v=2.3 cv=X6B81lbe c=1 sm=1 tr=0 a=MVEHjbUiAHxQW0jfcDq5EA==:117 a=MVEHjbUiAHxQW0jfcDq5EA==:17 a=IkcTkHD0fZMA:10 a=GZHT1NftmC_ogmv2jfcA:9 a=QEXdDO2ut3YA:10 Reply-To: Brian DOT Inglis AT SystematicSw DOT ab DOT ca Subject: Re: Odd hang in python waiting for child; strace wakes hung process? To: cygwin AT cygwin DOT com References: <877eq5fedf DOT fsf AT Rainer DOT invalid> <20180322165908 DOT GI6761 AT calimero DOT vinschen DOT de> From: Brian Inglis Message-ID: Date: Fri, 23 Mar 2018 19:21:13 -0600 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <20180322165908.GI6761@calimero.vinschen.de> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-CMAE-Envelope: MS4wfP9XFl2k2iYhdRzQuxEmBiMDp4UpxAX3KP3WiR97JBZvWaVywWfwZnhbnI6KHHT3YdEBxrRB6B0GLMWWuofRe4jamPepKEI4v/4rUau+jLlMNz74LyBg DjubHJgQm1R1WCPp0RPj5tQ0YHIS/mX6W2pEMGV5XxTtzDLX9XKmPgMx5cCBIlShJUiYh3+l5TtD/Q== X-IsSubscribed: yes On 2018-03-22 10:59, Corinna Vinschen wrote: > On Mar 21 23:41, Brian Inglis wrote: >> On 2018-03-21 16:07, Dan Kegel wrote: >>> On Wed, Mar 21, 2018 at 11:54 AM, Achim Gratz wrote: >>>> Well, with the sporadic hanging/defunct processes at work my routine is >>>> to send CONT to all Cygwin processes, then HUP/KILL to anything that's >>>> still not live or gone and then another round of CONT. This works >>>> _most_ of the time, anything more stubborn I /bin/kill -f usually. >>> >>> Since I wrote, both bots hung again. This time I verified: >>> 0) both had the defunct git process as expected >>> 1) kill -CONT the-pid doesn't do anything, nor does kill -9. It's truly wedged. >>> 2) the process stays in its spin hang until you ^C strace -p the-pid >>> 3) ^C-ing the strace causes the process to terminate (strace alone doesn't) >>> 4) taskkill /pid the-task /f also kills the process successfully. >>> >>> So I could write a script that watched for defunct git processes >>> and taskkilled their parent. Build jobs would fail, but at least >>> the bot would stay up. Of course it would be much nicer if >>> the cygwin python process didn't get wedged. >>> >>> Alternately, I suppose I could try running native python... >>> or cygwin's python3... but dangit, kill -9 should work. >> >> Seems to be looping on access failure to a Windows mailslot; not sure what this >> feature is normally used for: dmesg/syslog messages/AF_UNIX sockets? > > /dev/kmsg is implemented using a mailslot under the hood. This > feature is only used to log exceptions and for nothing else since > nobody ever found another reason to use it for. > > It would be interesting to learn if the perl hangs have the same reason. > > I guess we can simply remove /dev/kmsg support completely and drop > the mailslot code. I'm pretty sure nobody would miss it. Hardly > anybody knows it exists... Is /dev/log implemented the same way? Looks like syslog-ng stopped working around the last upgrade: $ cat /var/log/syslog-ng.log Error reading serialized data; error='Error reading file (short read)' Persistent configuration file is in invalid format, ignoring; Error binding socket; addr='AF_UNIX(/dev/log)', error='Address already in use (112)' Error initializing source driver; source='s_local', id='s_local#0' Error initializing message pipeline; ... [repeats] -- Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada -- 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