From: Yevgeny Kliteynik <kliteyn-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
To: Sasha Khapyorsky <sashak-smomgflXvOZWk0Htik3J/w@public.gmane.org>
Cc: Linux RDMA <linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
Subject: Re: opensm/main.c: foce stdout to be line-buffered
Date: Wed, 24 Mar 2010 09:09:45 +0200 [thread overview]
Message-ID: <4BA9BAB9.5040800@dev.mellanox.co.il> (raw)
In-Reply-To: <4BA9344A.6010007-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
On 23/Mar/10 23:36, Yevgeny Kliteynik wrote:
> On 23/Mar/10 18:37, Sasha Khapyorsky wrote:
>> On 14:25 Tue 23 Mar , Yevgeny Kliteynik wrote:
>>>
>>> I'm running "opensm> somefile", and I don't see SM's stdout
>>> (such as "SUBNET UP" message, or new cached options after SIGHUP),
>>> because when stdout is assigned to file and not terminal, it is
>>> handled differently. Instead of flushing on printing '\n',
>>> it becomes buffered, which means that you don't control when
>>> is this buffer flushed.
>>> My fix forces stdout to always flush stdout when printing '\n'.
>>> It has no effect when stdout is assigned to terminal, and it
>>> changes buffering when SM's stdout is redirected.
>>>
>>> More details about stdout/stderr buffering:
>>>
>>> http://www.pixelbeat.org/programming/stdio_buffering/
>>
>> There you can find couple of ways to workaround this issue, for example:
>>
>> stdbuf -o L opensm> somefile
>
> This is not a usual shell command, nor some common
> tool that is used in Linux distros. It's just a tool
> that is provided in some package called "coreutils 7.5".
Correction: the coreutils package is common, stdbuf isn't -
it was added in coreutils 7.5.
For instance, RH 5.3 has version 5.97, SLES 11 has version
6.12
-- Yevgeny
>> I would prefer to not change an external settings so the program would
>> work as expected.
>
> IMHO, on the contrary - the expected behavior
> would be achieved with the patch.
>
> But in any case, what exactly seems problematic here?
>
> I can't see any impact on any aspect whatsoever.
> It is somehow related to performance (more flushes
> when the stream is line-buffered instead of just
> buffered), but we're talking about stdout here, not
> the log file, so the performance is not affected too.
>
> -- Yevgeny
>
>> Sasha
>>
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
prev parent reply other threads:[~2010-03-24 7:09 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-03 8:26 opensm/main.c: foce stdout to be line-buffered Yevgeny Kliteynik
[not found] ` <4B8E1D46.4090106-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2010-03-23 10:37 ` Sasha Khapyorsky
2010-03-23 12:25 ` Yevgeny Kliteynik
[not found] ` <4BA8B33E.8000003-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2010-03-23 16:37 ` Sasha Khapyorsky
2010-03-23 21:36 ` Yevgeny Kliteynik
[not found] ` <4BA9344A.6010007-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2010-03-24 7:09 ` Yevgeny Kliteynik [this message]
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=4BA9BAB9.5040800@dev.mellanox.co.il \
--to=kliteyn-ldsdmyg8hgv8yrgs2mwiifqbs+8scbdb@public.gmane.org \
--cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=sashak-smomgflXvOZWk0Htik3J/w@public.gmane.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.