[Top][All Lists]
[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