cxgb4: fix the wrong conversion of Mbps to Kbps
authorGanesh Goudar <ganeshgr@chelsio.com>
Thu, 10 May 2018 10:37:23 +0000 (16:07 +0530)
committerDavid S. Miller <davem@davemloft.net>
Thu, 10 May 2018 21:52:02 +0000 (17:52 -0400)
fix the wrong conversion where 1 Mbps was converted to
1024 Kbps.

Signed-off-by: Ganesh Goudar <ganeshgr@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c

index 24d2865..1efcc85 100644 (file)
@@ -2886,13 +2886,13 @@ static int cxgb_set_tx_maxrate(struct net_device *dev, int index, u32 rate)
        }
 
        /* Convert from Mbps to Kbps */
-       req_rate = rate << 10;
+       req_rate = rate * 1000;
 
        /* Max rate is 100 Gbps */
-       if (req_rate >= SCHED_MAX_RATE_KBPS) {
+       if (req_rate > SCHED_MAX_RATE_KBPS) {
                dev_err(adap->pdev_dev,
                        "Invalid rate %u Mbps, Max rate is %u Mbps\n",
-                       rate, SCHED_MAX_RATE_KBPS >> 10);
+                       rate, SCHED_MAX_RATE_KBPS / 1000);
                return -ERANGE;
        }