This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: Non-Cygwin slaves inside tmux
- From: "John Hein" <3fbmqnhaz4 at snkmail dot com>
- To: cygwin at cygwin dot com
- Date: Wed, 27 May 2015 09:59:11 -0600
- Subject: Re: Non-Cygwin slaves inside tmux
- Authentication-results: sourceware.org; auth=none
- References: <55649249 dot 6010602 at gmail dot com> <CAAeCd-MJML73cASLcPRpsE7KWe8oTwuepSqYtBdnwDs26fBovA at mail dot gmail dot com>
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