GNU bug report logs - #66186
"make lisp/eshell/esh-proc-tests" fails intermittently since 7e50861ca7ed3f620fe62ac6572f6e88b3600ece

Previous Next

Package: emacs;

Reported by: Jens Schmidt <jschmidt4gnu <at> vodafonemail.de>

Date: Sun, 24 Sep 2023 21:37:02 UTC

Severity: normal

Fixed in version 30.1

Done: Jim Porter <jporterbugs <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Paul Eggert <eggert <at> cs.ucla.edu>
To: Eli Zaretskii <eliz <at> gnu.org>, Jim Porter <jporterbugs <at> gmail.com>
Cc: 66186 <at> debbugs.gnu.org, jschmidt4gnu <at> vodafonemail.de
Subject: bug#66186: "make lisp/eshell/esh-proc-tests" fails intermittently since 7e50861ca7ed3f620fe62ac6572f6e88b3600ece
Date: Mon, 25 Sep 2023 00:18:02 -0700
On 2023-09-24 23:47, Eli Zaretskii wrote:
> Perhaps process-send-string should install a temporary SIGPIPE
> handler, at least optionally?  Paul, WDYT?

Sounds like a recipe for bad race conditions.

I'm not following the problem closely. However, the usual way to handle 
this is to use sendto's MSG_NOSIGNAL option (GNU/Linux) or use 
setsockopt with SO_NOSIGPIPE (the BSDs and macOS). This should prevent 
those SIGPIPEs from occurring.

Alternatively, but this would be a bigger lift, you can arrange for a 
SIGPIPE signal handler to be enabled all the time, even in batch mode. 
But then you'll need to resurrect the batch-mode code that used to deal 
with this sort of thing (and I've forgotten what it is and as I vaguely 
recall it was a bit buggy but you can look at the change history). The 
basic idea is that in batch mode, if you ignore SIGPIPE then Emacs 
should always check for write errors and exit whenever they happen.




This bug report was last modified 1 year and 293 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.