Subject: bug#12832: 24.3.50; Emacs lockup when idle

From: Eli Zaretskii <[email-masked]>
Date: Thu, 08 Nov 2012 18:28:40 +0200

> Date: Thu, 08 Nov 2012 12:57:18 +0000
> From: Andy Moreton <[email-masked]>
> 
> Windows Emacs (built from r110828) was idle for a few minutes while I made a
> coffee. On returning, emacs was completely unresponsive and redisplay
> was not drawing anything.

If this recurs, maybe try bisecting to find the problematic commit.
Do you know what was the previous revision which you used?

Also, how was Emacs unresponsive -- did it consume any CPU cycles at
all?  Were all the threads locked up, or just some?  If you detach
from it, then attach again, do you see exactly the same backtrace?

> #3  0x0114875d in w32_msg_pump (msg_buf=0x5b5aff54) at w32fns.c:2386
>          msg = {
>            hwnd = 0x3f9500bc,
>            message = 0xf,
>            wParam = 0x0,
>            lParam = 0x0,
>            time = 0x6cc97f02,
>            pt = {
>              x = 0xdd,
>              y = 0x2f
>            }
>          }
>          result = 0x0
>          focus_window = 0x403

This looks like the input thread is waiting for GetMessageW to return,
which is normal -- it means there's no input, and we are waiting for
it.

> Thread 1 (Thread 8744.0xf50):
> #0  0x7c90e514 in ntdll!LdrAccessResource () from C:\WINDOWS\system32\ntdll.dll
> No symbol table info available.
> #1  0x7c90d2aa in ntdll!ZwDuplicateObject () from C:\WINDOWS\system32\ntdll.dll
> No symbol table info available.
> #2  0x7c80df03 in KERNEL32!DuplicateHandle () from 
> C:\WINDOWS\system32\kernel32.dll
> No symbol table info available.
> #3  0xffffffff in ?? ()
> No symbol table info available.
> #4  0xfffffffe in ?? ()
> No symbol table info available.
> #5  0xffffffff in ?? ()
> No symbol table info available.
> #6  0x0162acb8 in real_itimer ()
> No symbol table info available.
> #7  0x00000000 in ?? ()
> No symbol table info available.

This is the main thread, but its backtrace looks like the stack is
smashed, and real_itimer is a variable, not a function.

We need more data points on this.