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]

Re: gdb pty problem [Was: emacs gud-interface is not updated after gdb command execution (maybe because of incomplete output from gdb)]


On 5/31/2016 5:41 AM, Corinna Vinschen wrote:
Any chance you could bisect Cygwin to help finding the culprit?

The culprit is

commit 252a07b0ad3353abcd0fcd9b1b65ff977acd679e
Author: Takashi Yano <takashi.yano@nifty.ne.jp>
Date:   Fri Apr 3 13:07:35 2015 +0900

   Cygwin hangs up if several keys are typed during outputting a lot of texts.

       * fhandler_tty.cc (fhandler_pty_slave::read): Change calculation of
       "readlen" not to use "bytes_in_pipe" value directly.


Reverting that commit fixes the problem.  To test, compile and run the attached file.

$ gcc gdbstc.cc

$ ./a
1-inferior-tty-set /dev/pty3
2-gdb-set height 0
3-gdb-set non-stop 1
4-file-list-exec-source-files
5-file-list-exec-source-file
6-gdb-show prompt
7-stack-info-frame
8-thread-info
9-break-list
q
*** using gdb
=thread-group-added,id="i1"
~"GNU gdb (GDB) (Cygwin 7.10.1-1) 7.10.1\n"
~"Copyright (C) 2015 Free Software Foundation, Inc.\n"
~"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law.  Type \"show copying\"\nand \"show warranty\" for details.\n"
~"This GDB was configured as \"i686-pc-cygwin\".\nType \"show configuration\" for configuration details."
~"\nFor bug reporting instructions, please see:\n"
~"<http://www.gnu.org/software/gdb/bugs/>.\n"
~"Find the GDB manual and other documentation resources online at:\n<http://www.gnu.org/software/gdb/documentation/>.\n"
~"For help, type \"help\".\n"
~"Type \"apropos word\" to search for commands related to \"word\".\n"
=cmd-param-changed,param="auto-load safe-path",value="/"
(gdb)
...

In bad cases (bug present), the program hangs and doesn't complete until the gdb process is killed from a different terminal.  In good cases it runs to completion.

Ken

Attachment: gdbstc.cc
Description: Text document

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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]