From: Andreas Henriksson Date: Fri, 9 Mar 2012 16:09:19 +0000 (+0100) Subject: iproute: fix tc -iec display of Mibit rates X-Git-Tag: v3.3.0~11 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f526af995e4b610334ddea250686643b2d6e9729;p=thirdparty%2Fiproute2.git iproute: fix tc -iec display of Mibit rates As reported by Thomas Mühlgrabner 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 Signed-off-by: Andreas Henriksson --- diff --git a/tc/tc_util.c b/tc/tc_util.c index 5829d6138..36e3c7df9 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