This is the mail archive of the cygwin mailing list for the Cygwin project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Mar 2 15:44, Corinna Vinschen wrote: > Hi Takashi, > > On Mar 2 20:45, Takashi Yano wrote: > > On Sat, 28 Feb 2015 15:02:51 +0100 > > Corinna Vinschen <corinna-cygwin@cygwin.com> wrote: > > > > > Hmm, I can reproduce this even with stty -echo. The tty code is not > > > > Some shells seem to re-enable echo when it goes back into prompt. > > Please put both 'stty' and 'yes' in one command line, separating > > them with semi-colon. > > Uh, ok, I didn't realize that. > > > > exactly my domain, so I'm not sure at the moment where to look. I guess > > > the locking strategy in the tty code is not robust enough. Did you have > > > a look into the cygwin sources in the meantime, by any chance? > > > > To tell the truth, I have looked into the source code. > > I guess the mechanism of blocking is as follows. > > > > 1) Buffer of named pipe gets full-filled by a lot of data written > > by slave side. > > 2) WriteFile() in fhandler_pty_master::doecho(), which is called > > from master side by key input, is blocked because the buffer > > is full. > > 3) If a handling to read from the pipe is in the same thread as > > key input, the thread falls into deadlock. > > > > To check buffer space before WriteFile() is one idea, > > but it is not smart, I suppose... > > I think that's not it. For testing I added code to convert the > WriteFile calls in fhandler_pty_slave::write, fhandler_pty_master::doecho > and fhandler_pty_slave::write to overlapped I/O and made sure to wait Copy/paste didn't quite work as I expected. Substitute one of these fhandler_pty_slave::write with fhandler_pty_master::accept_input. > for the result after the output mutex has been released. > > This change has no effect at all. Looks like this needs some more > digging. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Maintainer cygwin AT cygwin DOT com Red Hat
Attachment:
pgp71XRczrkrW.pgp
Description: PGP signature
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |