]> rtime.felk.cvut.cz Git - lisovros/iproute2_canprio.git/commitdiff
iproute: fix tc -iec display of Mibit rates
authorAndreas Henriksson <andreas@fatal.se>
Fri, 9 Mar 2012 16:09:19 +0000 (17:09 +0100)
committerStephen Hemminger <shemminger@vyatta.com>
Sat, 10 Mar 2012 17:13:58 +0000 (09:13 -0800)
As reported by Thomas Mühlgrabner <muehltom@cable.vol.at>
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 <muehltom@cable.vol.at>
Signed-off-by: Andreas Henriksson <andreas@fatal.se>
tc/tc_util.c

index 5829d61383c9f8fe3626ef7c95fb59ff2c19ed50..36e3c7df9a2f6711d95073ecef0e6d627062c035 100644 (file)
@@ -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