[dpdk-dev] [PATCH 1/2] net/bonding: fix more incorrect slave id types
David Marchand
david.marchand at redhat.com
Thu Mar 21 21:28:13 CET 2019
From: Zhaohui <zhaohui8 at huawei.com>
mode_bond_id and mode_band_id are slave ids, stored on 16bits.
Fixes: f8244c6399d9 ("ethdev: increase port id range")
Cc: stable at dpdk.org
Signed-off-by: Zhaohui <zhaohui8 at huawei.com>
Signed-off-by: David Marchand <david.marchand at redhat.com>
---
drivers/net/bonding/rte_eth_bond_8023ad.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/drivers/net/bonding/rte_eth_bond_8023ad.c b/drivers/net/bonding/rte_eth_bond_8023ad.c
index 1e6a3fc..3943ec1 100644
--- a/drivers/net/bonding/rte_eth_bond_8023ad.c
+++ b/drivers/net/bonding/rte_eth_bond_8023ad.c
@@ -638,7 +638,7 @@
SM_FLAG_CLR(port, NTT);
}
-static uint8_t
+static uint16_t
max_index(uint64_t *a, int n)
{
if (n <= 0)
@@ -672,7 +672,8 @@
uint64_t agg_bandwidth[8] = {0};
uint64_t agg_count[8] = {0};
uint16_t default_slave = 0;
- uint8_t mode_count_id, mode_band_id;
+ uint16_t mode_count_id;
+ uint16_t mode_band_id;
struct rte_eth_link link_info;
slaves = internals->active_slaves;
@@ -708,13 +709,11 @@
switch (internals->mode4.agg_selection) {
case AGG_COUNT:
- mode_count_id = max_index(
- (uint64_t *)agg_count, slaves_count);
+ mode_count_id = max_index(agg_count, slaves_count);
new_agg_id = mode_count_id;
break;
case AGG_BANDWIDTH:
- mode_band_id = max_index(
- (uint64_t *)agg_bandwidth, slaves_count);
+ mode_band_id = max_index(agg_bandwidth, slaves_count);
new_agg_id = mode_band_id;
break;
case AGG_STABLE:
--
1.8.3.1
More information about the dev
mailing list