cygwin-2 process handling

Ken Brown kbrown@cornell.edu
Tue May 19 17:36:00 GMT 2015


On 5/18/2015 1:15 PM, Michael Mauger wrote:
> Since the upgrade to cygwin-2 I've been having consistent problems using emacs.  My emacs config has not changed and the most recent update to cygwin-2 has helped.  I'm using the emacs-w32 executable and have numerous remote cygwin ssh sessions running underneath emacs so that I can edit remote files and run remote shell sessions within emacs.
>
> When I then start up a Windows console executable (in my case Oracles sqlplus.exe, but cmd.exe works too), I start getting hanging in the cygwin ssh sessions.  Filename completion (which involves emacs interacting with a ssh session) or opening a remote file (which involves emacs transferring the file locally via scp or inline) will both hang.  It generally requires that I send a SIGUSR2 signal to the emacs-w32 process which emacs responds to by halting whatever is running and returning to the top level interaction loop.  When it does so, the process appears to be waiting for input. If I then end the console session, the interaction returns to normal.  Trying to start a second Windows console session will also hang.
>
> In Emacs *scratch* buffer
>    (shell "*One*")  C-j
>    #<buffer *One*>
>    (shell "*Two*")  C-j
>    #<buffer *Two*>
>
>
>    (let ((explicit-shell-file-name "/c/Windows/System32/cmd.exe")) (shell "*Three*"))  C-j
>
>    #<buffer *Three*>  (let ((explicit-shell-file-name "/c/Windows/System32/cmd.exe")) (shell "*Four*"))  C-j
>    *** HANGS ***

I can reproduce this, and even more simply.  If I start a single shell 
running cmd.exe, then emacs hangs on the next attempt to call a 
subprocess.  For example, I first evaluate the following in the 
*scratch* buffer

(let ((explicit-shell-file-name "/c/Windows/System32/cmd.exe")) (shell))

I then try to list a directory with 'C-x d', and emacs hangs.

The problem appears in the 2015-03-17 cygwin snapshot but not in the 
2015-03-11 snapshot.  I'm trying to do a git bisection to narrow it down 
further, but so far I haven't succeeded because I get errors when I try 
to build the git checkouts from around that time.  I'll keep trying.

Ken

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list