[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#18420: 24.3; interaction with external process hangs emacs
From: |
Stephen Leake |
Subject: |
bug#18420: 24.3; interaction with external process hangs emacs |
Date: |
Mon, 08 Sep 2014 22:10:26 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3 (windows-nt) |
More info from the debugger on the hung emacs. There are 6 threads active:
thread 6 : gdb interface
thread 5 : child process reader_thread
used by select emulation to check for child process output
can't see contents of 'cp' object; optimized out
the only child process of this emacs instance is the external
parser; ada_mode_wisi_parse
hung at "Wait until our input is acknowledged before reading again"
waiting for 'select()' to ack?
thread 4 : windows message handler
thread 3 : itimer thread
thread 2 : waiting on some startup?
thread 1 : main, runing lisp code, process_send_string, emacs_full_write,
sys_write _write
sys_write can only be interrupted by interrupts/signals
emacs_full_write checks for that, handles them
should allow for read write, unless it there's a race condition
So there is a deadlock:
thread 5 is waiting for thread 1 to ack
thread 1 is waiting for child process to read
child process is waiting for thread 5 to read
We need to understand how we get here.
--
-- Stephe
bug#18420: 24.3; interaction with external process hangs emacs, Eli Zaretskii, 2014/09/09