Hi Yevgeny, On 10:26 Wed 03 Mar , Yevgeny Kliteynik wrote: > When stdout is assigned to a terminal, it is line-buffered. > But when opensm's stdout is redirected to a file, stdout > becomes block-buffered, which means that '\n' won't cause > the buffer to be flushed.
Such redirection happens in daemon mode. Another case would be 'opensm > somefile '. Where do you see the problem? Would '-d2' option be related to the issue? > > Forcing stdout to always be line-buffered. > > Signed-off-by: Yevgeny Kliteynik <klit...@dev.mellanox.co.il> > --- > opensm/opensm/main.c | 3 +++ > 1 files changed, 3 insertions(+), 0 deletions(-) > > diff --git a/opensm/opensm/main.c b/opensm/opensm/main.c > index f9a33af..5ea65dd 100644 > --- a/opensm/opensm/main.c > +++ b/opensm/opensm/main.c > @@ -613,6 +613,9 @@ int main(int argc, char *argv[]) > {NULL, 0, NULL, 0} /* Required at the end of the array */ > }; > > + /* force stdout to be line-buffered */ > + setlinebuf(stdout); What about stderr? IOW describe your problem in more details (see above). Sasha > + > /* Make sure that the opensm and complib were compiled using > same modes (debug/free) */ > if (osm_is_debug() != cl_is_debug()) { > -- > 1.5.1.4 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-rdma" in > the body of a message to majord...@vger.kernel.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 majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html