Non-Cygwin slaves inside tmux

John Hein 3fbmqnhaz4@snkmail.com
Wed May 27 16:08:00 GMT 2015


Robert Pendell shinji+cygwin-at-elite-systems.org |cygwin_ml_nodigest| wrote at 06:04 -0400 on May 27, 2015:
 > On Tue, May 26, 2015 at 11:33 AM, David Macek <...> wrote:
 > > Hi.
 > >
 > > My testcase: run mintty-bash, run tmux inside and run netsh inside. Try to type.
 > >
 > > Result: horrible lags
 > >
 > > Expected result: it's possible to type normally
 > >
 > > I tried multiple Cygwin snapshots from the last 5 months, hoping that it could be a regression (therefore easily fixable), but all of them exhibit the same issue.
 > >
 > > A quick Google search didn't show any similar errors, so I'm reporting here in hope someone will be able to say "yeah, that's easy, let me fix that".. :)
 > >
 > > Assuming I understand correctly the roles here -- bash does fork+exec(netsh) and Cygwin emulates that by creating a bash subprocess which creates a netsh subprocess; the bash process that is spawned to execute the native executable is creating threads and named pipes like crazy. Every few seconds a new pipe and thread pop up. All the old threads seem to be stuck in:
 > >
 > >  #0 0x00007ffad7f3120a in ntdll!ZwWaitForSingleObject () from /cygdrive/c/Windows/SYSTEM32/ntdll.dll
 > >  #1 0x00007ffad53b1118 in WaitForSingleObjectEx () from /cygdrive/c/Windows/system32/KERNELBASE.dll
 > >  #2 0x0000000180134cfb in muto::acquire (this=0x639363438, ms=ms@entry=4294967295) at /usr/src/debug/cygwin-2.0.2-1/winsup/cygwin/sync.cc:87
 > >  #3 0x00000001800f9ed9 in lock_process (exiting=false, this=) at /usr/src/debug/cygwin-2.0.2-1/winsup/cygwin/sync.h:53
 > >  #4 commune_process (arg=0x6e7cb90) at /usr/src/debug/cygwin-2.0.2-1/winsup/cygwin/pinfo.cc:542
 > > ... several other frames which are related to Cygwin threads, I assume ...
 > >
 > > strace shows tmux getting these:
 > >
 > > seterrno_from_win_error: /usr/src/ports/cygwin/cygwin-2.0.2-1.x86_64/src/newlib-cygwin/winsup/cygwin/pinfo.cc:737 windows error 995
 > >
 > > --
 > > David Macek
 > >
 >
 > Hmm... Error 995 is ERROR_OPERATION_ABORTED.  This could mean
 > something is blocking/killing it.  I don't use tmux locally on a
 > personal basis so while we wait for someone that does to see if the
 > issue is reproducible for them can you please *attach* a cygcheck.out
 > for your system and also check your system for BLODA just in case?

Fails for me, too.  Running netsh in a shell under tmux, then "help"
(in any shell, not just bash - ash, tcsh, too) is very constipated.
And it slows down all other tmux operations (e.g., switching windows,
doing an ls in another window).  screen is not affected.

Reverting cygwin from 2.0.2-1 to 1.7.35 didn't change anything here.

Exiting netsh (or killing it) restores lively tmux behavior.
Sometimes killing netsh also kills the parent shell.

--
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