[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the c
From: |
Eli Zaretskii |
Subject: |
bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous |
Date: |
Fri, 05 Feb 2016 09:24:26 +0200 |
> From: Lars Ingebrigtsen <larsi@gnus.org>
> Cc: 22493@debbugs.gnu.org
> Date: Fri, 05 Feb 2016 13:36:06 +1100
>
> >> No matter how we call gnutls_boot, it will currently hang Emacs while
> >> it's transferring all those certificates back and forth.
> >
> > That last sentence is exactly the point I was trying to make all
> > along: we have to wait for this, therefore any time savings from
> > running gnutls_boot in the background are minor or even non-existent.
> > So I question the need for complicating the heck out of the underlying
> > code, for no practical gain.
>
> I describe the call chain, and why it's necessary to have the
> gnutls_boot called from the C layer. If you see anything wrong with the
> logic I described, please let me know.
>
> And as I've said repeatedly, gnutls_boot is only synchronous now as a
> quirk of our implementation, and making it async is the next step I am
> going to take. But it's a separate issue, and will be dealt with once
> the first round of changes are in.
If by "making it async" you mean to test for it in the idle loop, that
is not really async, and _that_ is _my_ point, which I've expressed
repeatedly already. Waiting in the idle loop is still waiting, as far
as the main thread is concerned.
> > Why shouldn't we assume that the problem you saw in erc is the tip of
> > an iceberg, and the other places are happy exceptions? Who knows how
> > many other packages are out there that are like erc?
>
> That's why :async 'dns.
As I wrote elsewhere, this is not enough.
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous, Eli Zaretskii, 2016/02/01
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous, Lars Ingebrigtsen, 2016/02/01
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous, Eli Zaretskii, 2016/02/02
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous, Lars Ingebrigtsen, 2016/02/02
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous, Lars Ingebrigtsen, 2016/02/02
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous, Eli Zaretskii, 2016/02/03
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous, Lars Ingebrigtsen, 2016/02/03
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous, Eli Zaretskii, 2016/02/04
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous, Lars Ingebrigtsen, 2016/02/04
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous,
Eli Zaretskii <=
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous, Lars Ingebrigtsen, 2016/02/05
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous, Eli Zaretskii, 2016/02/05
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous, Lars Ingebrigtsen, 2016/02/05
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous, Eli Zaretskii, 2016/02/06
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous, Lars Ingebrigtsen, 2016/02/06
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous, Eli Zaretskii, 2016/02/03
- bug#22493: 25.1.50; open-gnutls-stream doesn't respect :nowait, so the connections are synchronous, Lars Ingebrigtsen, 2016/02/03