From 6f4ae7f5d97a295100fa541fd59ba0b4c96a8d9c Mon Sep 17 00:00:00 2001 From: Lee Daly Date: Fri, 16 Nov 2018 16:48:02 +0000 Subject: [PATCH] net/bonding: fix possible silent failure in configuration 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@dpdk.org Signed-off-by: Lee Daly Reviewed-by: Ferruh Yigit --- 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 2661620abd..44deaf1193 100644 --- a/drivers/net/bonding/rte_eth_bond_pmd.c +++ b/drivers/net/bonding/rte_eth_bond_pmd.c @@ -3423,9 +3423,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.20.1