[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <85woy2ly1i.fsf@mojatatu.com>
Date: Fri, 23 Mar 2018 09:30:17 -0400
From: Roman Mashak <mrv@...atatu.com>
To: Stefano Brivio <sbrivio@...hat.com>
Cc: Stephen Hemminger <stephen@...workplumber.org>,
netdev@...r.kernel.org
Subject: Re: [PATCH iproute2] ss: Fix rendering of continuous output (-E, --events)
Stefano Brivio <sbrivio@...hat.com> writes:
> Roman Mashak reported that ss currently shows no output when it
> should continuously report information about terminated sockets
> (-E, --events switch).
>
> This happens because I missed this case in 691bd854bf4a ("ss:
> Buffer raw fields first, then render them as a table") and the
> rendering function is simply not called.
>
> To fix this, we need to:
>
> - call render() every time we need to display new socket events
> from generic_show_sock(), which is only used to follow events.
> Always call it even if specific socket display functions
> return errors to ensure we clean up buffers
>
> - get the screen width every time we have new events to display,
> thus factor out getting the screen width from main() into a
> function we'll call whenever we calculate columns width
>
> - reset the current field pointer after rendering, more output
> might come after render() is called
>
> Reported-by: Roman Mashak <mrv@...atatu.com>
> Fixes: 691bd854bf4a ("ss: Buffer raw fields first, then render them as a table")
> Signed-off-by: Stefano Brivio <sbrivio@...hat.com>
Thanks Stefano.
Tested-by: Roman Mashak <mrv@...atatu.com>
Powered by blists - more mailing lists