[dpdk-dev] [PATCH v2] net/bonding: fix possible silent failure in configuration

Lee Daly lee.daly at intel.com
Fri Nov 16 17:48:02 CET 2018


This patch checks the return value of function
rte_eth_bond_8023ad_agg_selection_set() in bond_ethdev_configure
for error return value.

Fixes: 6d72657ce379 ("net/bonding: add other aggregator modes")
Cc: stable at dpdk.org

V2:
syntax changes.
commit message update.

Signed-off-by: Lee Daly <lee.daly at intel.com>
---
 drivers/net/bonding/rte_eth_bond_pmd.c | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c b/drivers/net/bonding/rte_eth_bond_pmd.c
index 156f31c..953cee5 100644
--- a/drivers/net/bonding/rte_eth_bond_pmd.c
+++ b/drivers/net/bonding/rte_eth_bond_pmd.c
@@ -3420,9 +3420,16 @@ bond_ethdev_configure(struct rte_eth_dev *dev)
 				     "Failed to parse agg selection mode for bonded device %s",
 				     name);
 		}
-		if (internals->mode == BONDING_MODE_8023AD)
-			rte_eth_bond_8023ad_agg_selection_set(port_id,
-							      agg_mode);
+		if (internals->mode == BONDING_MODE_8023AD) {
+			int ret = rte_eth_bond_8023ad_agg_selection_set(port_id,
+					agg_mode);
+			if (ret < 0) {
+				RTE_BOND_LOG(ERR,
+					"Invalid args for agg selection set for bonded device %s",
+					name);
+				return -1;
+			}
+		}
 	}
 
 	/* Parse/add slave ports to bonded device */
-- 
2.7.4



More information about the dev mailing list