[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: emacs | Pipeline #8399 has failed for master | ee0e259e
From: |
Robert Pluim |
Subject: |
Re: emacs | Pipeline #8399 has failed for master | ee0e259e |
Date: |
Tue, 05 Jan 2021 10:42:53 +0100 |
Philipp Stephani <p.stephani2@gmail.com> writes:
>> The process-test-stderr-buffer timeout I can't explain: nothing there
>> can wait longer than 2 seconds (unless itʼs 'make-process' thatʼs
>> timing out?)
>
> make-process can in theory deadlock on BSD-like systems due to a race
> between setting the close-on-exec flag and other fork+exec
> combinations. That's rather unlikely though.
> But maybe there's a race between accept-process-output and calling the
> sentinel so that the sentinel is called too early, and then
> accept-process-output blocks? AFAIK, when splitting stderr and stdout,
> one has to wait separately for the two involved processes:
> (while (accept-process-output process))
> (while (accept-process-output stderr-process))
The code is this:
(while (not (or sentinel-called
(> (- (float-time) start-time)
process-test-sentinel-wait-timeout)))
(accept-process-output))
You mean between checking 'sentinel-called' and
'accept-process-output', the sentinel is called, the process exit's and
then 'accept-process-output' hangs? I guess thatʼs possible. We could
add a timeout to accept-process-output to verify.
To your other point: thereʼs only one process involved here, stderr is
being sent to a separate buffer (although using a separate process is
possible as well).
Robert
- Re: emacs | Pipeline #8399 has failed for master | ee0e259e, Robert Pluim, 2021/01/04
- Re: emacs | Pipeline #8399 has failed for master | ee0e259e, Philipp Stephani, 2021/01/04
- Re: emacs | Pipeline #8399 has failed for master | ee0e259e, Michael Albinus, 2021/01/05
- Re: emacs | Pipeline #8399 has failed for master | ee0e259e, Philipp Stephani, 2021/01/05
- Re: emacs | Pipeline #8399 has failed for master | ee0e259e, Michael Albinus, 2021/01/06
- Re: emacs | Pipeline #8399 has failed for master | ee0e259e, Philipp Stephani, 2021/01/17
- Re: emacs | Pipeline #8399 has failed for master | ee0e259e, Michael Albinus, 2021/01/17
- Re: emacs | Pipeline #8399 has failed for master | ee0e259e, Philipp Stephani, 2021/01/17
Re: emacs | Pipeline #8399 has failed for master | ee0e259e,
Robert Pluim <=