On Mar 23 19:21, Brian Inglis wrote: > 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? No. /dev/log is a AF_UNIX socket. > 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)' rm -rf /dev/log Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Maintainer cygwin AT cygwin DOT com Red Hat