X crashes with SIGPIPE
Mon Apr 20 23:08:51 GMT 2020
On Mon, 2020-04-20 at 18:03 +0100, Jon Turney wrote:
> On 18/04/2020 04:38, Henry Gebhardt via Cygwin wrote:
> > Hi,
> > Cygwin/X crashes every few days for me. I managed to obtain a
> > backtrace
> > from the last crash (attached). Server log is also included.
> > I have not, yet, managed to pin down the exact trigger for the
> > crash. I
> > am running two graphical programs under Windows 10 WSL2 Debian:
> > tilix
> > and evince.
> > Thank you for any help.
> Thanks for reporting this issue.
> I am assuming, although it's not totally clear from your report,
> you are starting the X server with '-listen tcp', and are setting
> DISPLAY to localhost:0.0 or similar in your WSL environment.
Yes, indeed! Also with "-nowgl", but I assume that is irrelevant.
> > Thread 1 received signal SIGPIPE, Broken pipe.
> > [Switching to Thread 2952.0x1144]
> > 0x000000010053f250 in _XSERVTransSocketWritev (ciptr=0xffffbb18,
> > buf=0xffffbc10, size=-17396) at
> > /usr/include/X11/Xtrans/Xtranssock.c:2382
> > 2382 /usr/include/X11/Xtrans/Xtranssock.c: No such file or
> > directory.
> I'm not sure this is the actual point of failure (since the X server
> should be setting SIGPIPE to be ignored), so you probably need to
> gdb not to stop on it e.g. 'handle sigpipe ignore'.
Thank you for this. I will run with sigpipe ignored, and see if I can
reproduce then. Might be a few days until it triggers.
> In any case, a sigpipe here indicates that the X client has already
> closed when the X server tries to write to it's socket.
> Assuming gdb is giving accurate information here, this is also looks
> very odd, as a negative value of size (which is used as iovcnt passed
> write) doesn't make a lot of sense.
More information about the Cygwin