GNU bug report logs -
#62194
30.0.50; Two Eglot-over-Tramp tests are failing on master, passing on emacs-29
Previous Next
Reported by: João Távora <joaotavora <at> gmail.com>
Date: Tue, 14 Mar 2023 23:07:01 UTC
Severity: normal
Found in version 30.0.50
Done: Michael Albinus <michael.albinus <at> gmx.de>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Michael Albinus <michael.albinus <at> gmx.de> writes:
> João Távora <joaotavora <at> gmail.com> writes:
>
> Hi,
>
>> I'm "against" this too, but hard facts here trump arguments and opinion.
>> This is exactly what fixes the ControlMaster hang, that's well understood,
>> and is really intended. It brings about some other failures but I've just
>> confirmed that if you put
>>
>> (while (accept-process-output p 0 nil t))
>>
>> then all's well.
>>
>> Of course, it's only _one_ of the ways to fix the problem. If you have another
>> more elegant one, but I don't know if signals is a great one. I'd guess
>> SIGWINCH to be somewhat limited in platform support, right?
>
> I'm also against using SIGWINCH at this point. It isn't portable, and it
> isn't even known whether it is needed always. The proposed patch wraps
> it by
>
> (when (and (not result) (process-get proc 'shared-socket))
>
> But the reason why result is nil could be simply the case that the
> remote side hasn't something to tell yet, and we need to wait.
>
> And this would complicate the scenario further. We have already a very
> fragile tramp-accept-process-output, which has changed again and again
> ove the last 20 years. I *really* would like to see a simple and robust
> implementation.
>
> My attempt with the additional process property `shared-socket' has
> failed, and I've reverted it.
>
> Pushed to master. The Eglot Tramp tests pass now, so I recommend to
> close this bug.
Michael, now you've brought back the Eglot/Tramp hang of bug#61350!
Really Michael, please consider reverting 0330cff65ae (your latest) and
54ef338ba36 (from two days ago), and going back to the simpler version
that you originally proposed, with just the 'while' added there.
It fixes all this mess. _Then_ we can go get to thinking about the
"simple and robust" implementation.
João
This bug report was last modified 2 years and 59 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.