From: Pedro Alves <palves@redhat.com>
To: Yao Qi <yao@codesourcery.com>
Cc: gdb-patches@sourceware.org, brobecker@adacore.com,
Eli Zaretskii <eliz@gnu.org>
Subject: Re: [PATCH] Unbuffer stdout and stderr on windows
Date: Fri, 16 Aug 2013 13:37:00 -0000 [thread overview]
Message-ID: <520E2B13.8020706@redhat.com> (raw)
In-Reply-To: <520E1C34.2000907@codesourcery.com>
On 08/16/2013 01:33 PM, Yao Qi wrote:
> On 08/16/2013 07:46 PM, Pedro Alves wrote:
>> However, the Windows runtime, in its infinite wisdom, makes stderr
>> fully buffered if connected to a pipe.
>>
>> So all this makes me very much question the desire to detect
>> if a native Win32 GDB is running under Cygwin.
>>
>> IMO, stderr should_always_ be forced to unbuffered.
>
> From this long discussion, people agree that stderr should be unbuffered.
>
>>
>> I can't really imagine that leaving stdout fully buffered to
>> ever be good (which the cygwin detection seems to want to preserve),
>> even for frontends, given GDB is an interactive program, and even
>> MI is text/line based.
>>
>> So I think the "in cygwin" detection is really not necessary
>> or desirable, and this patch should go back to its original form:
>
> However, we didn't have an agreement on what to set for stdout. As you
> posted above, on Win32, stdout can be either full buffered or
> non-buffered. If we change stdout to non-buffered, there are two
> concerns, 1) GDB will slow down, 2) cause troubles to front-end, like Emacs.
How can it cause trouble? If anything, it should be fully buffered
that causes trouble (for output not coming out when it should). I
really can't see when ever would it be desirable to hold GDB output
until the internal buffer fills. So if GDB is supposed to be working when
IO is fully buffered, some other mechanism must be forcing flushes on
line ends (probably the gdb_flush calls). And then, if that is supposed
to work, the testsuite really isn't special, and what we have is that
the flushing mechanism isn't being activated in all the necessary places.
--
Pedro Alves
next prev parent reply other threads:[~2013-08-16 13:37 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-22 3:07 Yao Qi
2013-07-22 15:41 ` Eli Zaretskii
2013-07-23 6:35 ` Yao Qi
2013-07-23 17:52 ` Eli Zaretskii
2013-07-29 19:26 ` Christopher Faylor
2013-07-29 19:30 ` Eli Zaretskii
2013-07-29 19:51 ` Pedro Alves
2013-07-31 3:40 ` Christopher Faylor
2013-08-12 21:11 ` Joel Brobecker
2013-08-13 17:28 ` Christopher Faylor
2013-08-13 18:08 ` Eli Zaretskii
2013-08-14 0:05 ` Joel Brobecker
2013-08-15 17:36 ` Christopher Faylor
2013-08-15 17:44 ` Eli Zaretskii
2013-08-15 17:59 ` Christopher Faylor
2013-08-15 18:44 ` Eli Zaretskii
2013-08-16 11:46 ` Pedro Alves
2013-08-16 12:34 ` Yao Qi
2013-08-16 13:20 ` Eli Zaretskii
2013-08-16 13:37 ` Pedro Alves [this message]
2013-08-16 14:03 ` Eli Zaretskii
2013-08-16 14:21 ` Pedro Alves
2013-08-16 14:57 ` Eli Zaretskii
2013-08-16 15:10 ` Pedro Alves
2013-08-16 15:24 ` Pedro Alves
2013-08-16 15:43 ` Eli Zaretskii
2013-08-16 16:41 ` Christopher Faylor
2013-08-16 15:41 ` Eli Zaretskii
2013-08-22 6:14 ` Yao Qi
2013-08-22 14:18 ` Joel Brobecker
2013-08-23 2:20 ` Yao Qi
2013-08-23 13:38 ` Joel Brobecker
2013-08-27 20:39 ` Pedro Alves
2013-08-28 7:23 ` Yao Qi
2013-08-28 9:39 ` Pedro Alves
2013-08-28 12:25 ` Yao Qi
2013-08-16 13:17 ` Eli Zaretskii
2013-08-16 13:30 ` Pedro Alves
2013-08-16 13:42 ` Eli Zaretskii
2013-08-16 14:13 ` Pedro Alves
2013-08-16 14:44 ` Eli Zaretskii
2013-08-16 15:05 ` Pedro Alves
2013-08-16 15:13 ` Eli Zaretskii
2013-07-29 19:30 ` Christopher Faylor
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=520E2B13.8020706@redhat.com \
--to=palves@redhat.com \
--cc=brobecker@adacore.com \
--cc=eliz@gnu.org \
--cc=gdb-patches@sourceware.org \
--cc=yao@codesourcery.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox