From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by dpdk.org (Postfix) with ESMTP id D9BBF5F65 for ; Thu, 31 May 2018 18:17:04 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga105.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 31 May 2018 09:17:03 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,463,1520924400"; d="scan'208";a="55495320" Received: from silpixa00383879.ir.intel.com (HELO silpixa00383879.ger.corp.intel.com) ([10.237.223.127]) by orsmga003.jf.intel.com with ESMTP; 31 May 2018 09:17:01 -0700 From: Radu Nicolau To: dev@dpdk.org Cc: declan.doherty@intel.com, ferruh.yigit@intel.com, Radu Nicolau Date: Thu, 31 May 2018 17:10:47 +0100 Message-Id: <1527783047-18201-1-git-send-email-radu.nicolau@intel.com> X-Mailer: git-send-email 2.7.5 In-Reply-To: <1525867586-23328-1-git-send-email-radu.nicolau@intel.com> References: <1525867586-23328-1-git-send-email-radu.nicolau@intel.com> Subject: [dpdk-dev] [PATCH v3] net/bonding: fix slave add for mode 4 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 31 May 2018 16:17:05 -0000 Add a call to rte_eth_link_get_nowait on every slave to update the internal link status struct. Otherwise slave add will fail for mode 4 if the ports are all stopped but only one of them checked. Fixes: b77d21cc2364 ("ethdev: add link status get/set helper functions") Bugzilla ID: 52 Signed-off-by: Radu Nicolau --- v3: updated commit msg v2: add fix and Bugzilla references drivers/net/bonding/rte_eth_bond_api.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/bonding/rte_eth_bond_api.c b/drivers/net/bonding/rte_eth_bond_api.c index d558df8..cad08b9 100644 --- a/drivers/net/bonding/rte_eth_bond_api.c +++ b/drivers/net/bonding/rte_eth_bond_api.c @@ -296,6 +296,8 @@ __eth_bond_slave_add_lock_free(uint16_t bonded_port_id, uint16_t slave_port_id) return -1; } + rte_eth_link_get_nowait(slave_port_id, &link_props); + slave_add(internals, slave_eth_dev); /* We need to store slaves reta_size to be able to synchronize RETA for all -- 2.7.5