emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gnus makes emacs lose response


From: Chong Yidong
Subject: Re: gnus makes emacs lose response
Date: Tue, 05 Sep 2006 17:18:26 -0400
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux)

address@hidden (Kim F. Storm) writes:

> Here is an interesting backtrace from Leon:
>
> It is hanging (C-g not working) with gnus-demon called
> from a timer.  
>
> Would someone pls. investigate this.

If I remember correctly from previous discussions, this bug happens
when a cable is unplugged while Gnus is running, and it's been around
for years.

>From the backtrace, it looks Emacs is hanging on the select call.  My
guess is that the unplugged network cable causes select to wait
forever, in spite of the non-NULL timeout argument passed to it.  If
this is true, it's a bug in the select system call, and there's little
Emacs can do to work around it.

> (gdb) bt
> #0  0x00b79248 in ___newselect_nocancel () from /lib/libc.so.6
> #1  0x08194325 in select_wrapper (n=-514, rfd=0x0, wfd=0xbfcbe478, xfd=0x0, 
>     tmo=0xbfcbe5a8) at process.c:4188
> #2  0x081975e3 in wait_reading_process_output (time_limit=0, 
> microsecs=100000, 
>     read_kbd=0, do_display=0, wait_for_cell=137562313, wait_proc=0xac4b208, 
>     just_wait_proc=0) at process.c:4560


> #1  0x08194325 in select_wrapper (n=-514, rfd=0x0, wfd=0xbfcbe478, xfd=0x0, 
>     tmo=0xbfcbe5a8) at process.c:4188
> No locals.
> #2  0x081975e3 in wait_reading_process_output (time_limit=0, 
> microsecs=100000, 
>     read_kbd=0, do_display=0, wait_for_cell=137562313, wait_proc=0xac4b208, 
>     just_wait_proc=0) at process.c:4560
>         usecs = <value optimized out>
>         timeout_reduced_for_timers = 0
>         channel = 0
>         nfds = 0
>         Available = {
>   fds_bits = {389248, 0 <repeats 31 times>}
> }
>         Connecting = {
>   fds_bits = {0 <repeats 32 times>}
> }
>         check_connect = 0
>         check_delay = 0
>         no_avail = 0
>         xerrno = 0
>         proc = <value optimized out>
>         timeout = {
>   tv_sec = 0, 
>   tv_usec = 40000
> }
>         end_time = {
>   tv_sec = 1157323517, 
>   tv_usec = 457274
> }
>         wait_channel = 12
>         got_some_input = 0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]