From: Dana Vardi <danat@marvell.com>
Date: Sun, 11 Jul 2021 13:11:43 +0000 (+0300)
Subject: net/mvpp2: fix port speed overflow
X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=8fa07a68a6f842aa81b8949976e8088e2b6318a3;p=dpdk.git

net/mvpp2: fix port speed overflow

ethtool_cmd_speed return uint32 and after the arithmetic
operation in mrvl_get_max_rate func the result is out of range.

Fixes: 429c394417 ("net/mvpp2: support traffic manager")
Cc: stable@dpdk.org

Signed-off-by: Dana Vardi <danat@marvell.com>
Reviewed-by: Liron Himi <lironh@marvell.com>
---

diff --git a/drivers/net/mvpp2/mrvl_tm.c b/drivers/net/mvpp2/mrvl_tm.c
index e98f576cfa..7e3c46f956 100644
--- a/drivers/net/mvpp2/mrvl_tm.c
+++ b/drivers/net/mvpp2/mrvl_tm.c
@@ -57,7 +57,7 @@ mrvl_get_max_rate(struct rte_eth_dev *dev, uint64_t *rate)
 
 	close(fd);
 
-	*rate = ethtool_cmd_speed(&edata) * 1000 * 1000 / 8;
+	*rate = (uint64_t)ethtool_cmd_speed(&edata) * 1000 * 1000 / 8;
 
 	return 0;
 }