From: Jarek Poplawski <jarkao2@gmail.com>
To: Satoru SATOH <satoru.satoh@gmail.com>
Cc: netdev@vger.kernel.org
Subject: Re: [PATCH] [IPROUTE]: A workaround to make larger rto_min printed correctly
Date: Fri, 21 Dec 2007 09:34:31 +0100 [thread overview]
Message-ID: <20071221083431.GA1708@ff.dom.local> (raw)
In-Reply-To: <d72b7ace0712201824k3754962cse377256cb5452b8a@mail.gmail.com>
On 21-12-2007 03:24, Satoru SATOH wrote:
> 2007/12/21, Jarek Poplawski <jarkao2@gmail.com>:
>> Jarek Poplawski wrote, On 12/20/2007 09:24 PM:
>> ...
>>
>>> but since it's your patch, I hope you do some additional checking
>>> if it's always like this...
>>
>> ...or maybe only changing this all a little bit will make it look safer!
>>
>> Jarek P.
>
>
> OK, how about this?
>
> Signed-off-by: Satoru SATOH <satoru.satoh@gmail.com>
>
> ip/iproute.c | 12 ++++++++----
> 1 files changed, 8 insertions(+), 4 deletions(-)
>
> diff --git a/ip/iproute.c b/ip/iproute.c
> index f4200ae..c771b34 100644
> --- a/ip/iproute.c
> +++ b/ip/iproute.c
> @@ -510,16 +510,20 @@ int print_route(const struct sockaddr_nl *who,
> struct nlmsghdr *n, void *arg)
> fprintf(fp, " %u", *(unsigned*)RTA_DATA(mxrta[i]));
> else {
> unsigned val = *(unsigned*)RTA_DATA(mxrta[i]);
> + unsigned hz1 = hz;
> + if (hz1 > 1000)
Looks OK (safe) to me: it's compatible both with old and new way.
I'd only suggest to maybe change this to '(hz1 > 1024)', because
it's the biggest HZ currently in the kernel, so this compatibility
should be 100%. I think, you could leave 1 empty line before this
'if', as well. (Btw., aren't these overflows connected with
CONFIG_HIGH_RES_TIMERS?)
On the other hand this 'hz' still looks 'strange' here - I don't
understand, why, a bit earlier it's:
if (!hz)
hz = get_hz();
while 'else' would use: hz == get_user_hz();
So, probably I miss something, but even after your patch, there
could be different outputs here...
Thanks,
Jarek P.
PS: did you CC Stephen Hemminger on this?
> + hz1 /= 1000;
> + else
> + val *= 1000;
>
> - val *= 1000;
> if (i == RTAX_RTT)
> val /= 8;
> else if (i == RTAX_RTTVAR)
> val /= 4;
> - if (val >= hz)
> - fprintf(fp, " %ums", val/hz);
> + if (val >= hz1)
> + fprintf(fp, " %ums", val/hz1);
> else
> - fprintf(fp, " %.2fms", (float)val/hz);
> + fprintf(fp, " %.2fms", (float)val/hz1);
> }
> }
> }
>
>
> Thanks,
> Satoru SATOH
next prev parent reply other threads:[~2007-12-21 8:29 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-20 3:31 [PATCH] [IPROUTE]: A workaround to make larger rto_min printed correctly Satoru SATOH
2007-12-20 8:35 ` YOSHIFUJI Hideaki / 吉藤英明
2007-12-20 9:12 ` Jarek Poplawski
2007-12-20 16:21 ` Satoru SATOH
2007-12-20 20:24 ` Jarek Poplawski
2007-12-20 20:31 ` Jarek Poplawski
2007-12-21 2:24 ` Satoru SATOH
2007-12-21 8:34 ` Jarek Poplawski [this message]
2007-12-21 8:53 ` YOSHIFUJI Hideaki / 吉藤英明
2007-12-21 11:18 ` Bill Fink
2007-12-21 13:49 ` Satoru SATOH
2007-12-21 13:58 ` YOSHIFUJI Hideaki / 吉藤英明
2007-12-21 17:14 ` Stephen Hemminger
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=20071221083431.GA1708@ff.dom.local \
--to=jarkao2@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=satoru.satoh@gmail.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 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.