[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Emacs uses 100% cpu time
From: |
Richard Stallman |
Subject: |
Re: Emacs uses 100% cpu time |
Date: |
Sun, 01 Oct 2006 18:25:16 -0400 |
According point "** If the symptom of the bug is that Emacs fails to
respond" I stopped emacs with C-z in the terminal GDB is running in and
typed finish till the call didn't return anymore. That was in
wait_reading_process_output.
That function is waiting for keyboard input which does not arrive.
That is normal when Emacs is idle.
#32 0x0818b2e8 in wait_reading_process_output (time_limit=30, microsecs=0,
read_kbd=-1, do_display=1, wait_for_cell=137459913, wait_proc=0x0,
just_wait_proc=0) at process.c:4343
That line is a call to timer_check. Apparently Emacs is running a timer
over and over. You need to investigate the data in a few frames
directly inside this one, to see which timer is running.
You omitted the first 31 frames; what do they say?
So I pressed C-z again and stepped through
that frame with next:
(gdb) finish
Run till exit from #0 0x0818b2e8 in wait_reading_process_output (
time_limit=30, microsecs=0, read_kbd=-1, do_display=1,
wait_for_cell=137459913, wait_proc=0x0, just_wait_proc=0) at
process.c:4343
Program received signal SIGTSTP, Stopped (user).
0x08141c3c in mark_object (arg=151918113) at alloc.c:5447
5447 {
(gdb) next
That time you hit it inside a GC. It appears that there's no problem
with GC. So just continue, when you're inside GC.