GnuTLS hangs in Emacs

Nikos Mavrogiannopoulos nmav at gnutls.org
Sat Feb 11 17:33:34 CET 2012


On 02/11/2012 04:42 PM, Lars Ingebrigtsen wrote:

> I'm trying to investigate some "hard" Emacs hangs that seem
> network-related.
> 
> My laptop went into sleep mode, and when it came back, Emacs hung hard.
> It may have changed its IP address or something.
> strace showed the following:
> Process 12143 attached with 3 threads - interrupt to quit
> [pid 12143] sendto(10, "\340\204s\374\204\22\231\26M;?\307\220=^\206T\371Q\374o\324\246i\31\256\31$\314\315\367\362"..., 136, 0, NULL, 0 <unfinished ...>
> [pid 12145] restart_syscall(<... resuming interrupted call ...> <unfinished ...>
> [pid 12144] restart_syscall(<... resuming interrupted call ...> <unfinished ...>
> [pid 12143] <... sendto resumed> )      = -1 EAGAIN (Resource temporarily unavailable)
> [pid 12143] sendto(10, "\340\204s\374\204\22\231\26M;?\307\220=^\206T\371Q\374o\324\246i\31\256\31$\314\315\367\362"..., 136, 0, NULL, 0) = -1 EAGAIN (Resource temporarily unavailable)
> [pid 12143] sendto(10, "\340\204s\374\204\22\231\26M;?\307\220=^\206T\371Q\374o\324\246i\31\256\31$\314\315\367\362"..., 136, 0, NULL, 0) = -1 EAGAIN (Resource temporarily unavailable)
> [pid 12143] sendto(10, "\340\204s\374\204\22\231\26M;?\307\220=^\206T\371Q\374o\324\246i\31\256\31$\314\315\367\362"..., 136, 0, NULL, 0) = -1 EAGAIN (Resource temporarily unavailable)
> larsi at rusty:~/pgnus$ ls -l /proc/12143/fd/10 
> lrwx------ 1 larsi larsi 64 2012-01-27 13:14 /proc/12143/fd/10 -> socket:[586673]
> larsi at rusty:~/pgnus$ lsof | grep 586673
> emacs     12143      larsi   10u     IPv4             586673      0t0     TCP 10.0.1.2:50099->dough.gmane.org:nntp (ESTABLISHED)
> This is a STARTTLS connection, so I'm guessing that the sendto up there
> is from GnuTLS.


Hello,
 I see not much related to gnutls. You should bring it up with the emacs
people. GnuTLS reports the EAGAIN back to application thus the
application might decide to fail at some point. In any case this looks
like a sendto() issue. Why would it send EAGAIN forever?

regards,
Nikos




More information about the Gnutls-devel mailing list