Re: [PATCH] iproute: fix tc -iec display of Mibit rates
From: Stephen Hemminger <hidden>
Date: 2012-03-10 17:14:28
On Fri, 9 Mar 2012 17:09:19 +0100 Andreas Henriksson [off-list ref] wrote:
quoted hunk ↗ jump to hunk
As reported by Thomas Mühlgrabner [off-list ref] in http://bugs.debian.org/662979 : When showing htb class configuration with "tc -iec class show", the output for Mibit is actually the value for bit. Example: configure a class with a ceil of 1000Mibit. Output states 1048576000 Mibit. The cause is missing parenteses in the display code of tc.... (Please also note that a lower value of 100Mibit will be displayed as 102400 Kibit, which I think is kind of ugly.) Reported-by: Thomas Mühlgrabner <redacted> Signed-off-by: Andreas Henriksson <redacted>diff --git a/tc/tc_util.c b/tc/tc_util.c index 5829d61..36e3c7d 100644 --- a/tc/tc_util.c +++ b/tc/tc_util.c@@ -203,7 +203,7 @@ void print_rate(char *buf, int len, __u32 rate) if (use_iec) { if (tmp >= 1000.0*1024.0*1024.0) - snprintf(buf, len, "%.0fMibit", tmp/1024.0*1024.0); + snprintf(buf, len, "%.0fMibit", tmp/(1024.0*1024.0)); else if (tmp >= 1000.0*1024) snprintf(buf, len, "%.0fKibit", tmp/1024); else
Applied