From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by dpdk.space (Postfix) with ESMTP id A8A83A0096
	for <public@inbox.dpdk.org>; Thu, 14 Mar 2019 13:27:37 +0100 (CET)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id F17AC3572;
	Thu, 14 Mar 2019 13:27:36 +0100 (CET)
Received: from yy.com (unknown [183.36.123.141])
 by dpdk.org (Postfix) with ESMTP id 5A38E11C5
 for <dev@dpdk.org>; Thu, 14 Mar 2019 13:27:35 +0100 (CET)
Received: from bigo.sg (unknown [14.29.89.90])
 by centos (Coremail) with SMTP id AQAAfwCH57SuSIpc_u8uAA--.6120S2;
 Thu, 14 Mar 2019 20:27:26 +0800 (CST)
Received: from ubuntu.bigo.local (unknown [58.248.226.7])
 by coremail_mail (Coremail) with SMTP id WlkdDgB3fXl_SYpcAORhAA--.0S2;
 Thu, 14 Mar 2019 20:30:59 +0800 (CST)
From: Liang Zhang <zhangliang@bigo.sg>
To: dev@dpdk.org
Cc: Liang Zhang <zhangliang@bigo.sg>
Date: Thu, 14 Mar 2019 20:27:21 +0800
Message-Id: <1552566441-14658-1-git-send-email-zhangliang@bigo.sg>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <b5f940be-1db3-fb86-b102-a24877e22d7c@gmail.com>
References: <b5f940be-1db3-fb86-b102-a24877e22d7c@gmail.com>
X-CM-TRANSID: AQAAfwCH57SuSIpc_u8uAA--.6120S2
Authentication-Results: centos; spf=neutral smtp.mail=zhangliang@bigo.
	sg;
X-Coremail-Antispam: 1UD129KBjvJXoW7tw4DWFW3Aw1UCr4UtF4rGrg_yoW8Cw45pF
 WDCw43Ww1kJa15Z3WxCay8Cr1Uur1xA3W2gFyrAas09Fn0vFyxWw1jqFWjvFWjkrWj9Fsr
 Ar4FkwsI9ayUCrDanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU8nxnvy2
 9KBjDU0xBIdaVrnUUvcSsGvfC2KfnxnUUI43ZEXa7xR_UUUUUUUUU==
X-CM-SenderInfo: x2kd0wxold0w2s6exwnrovw/
Subject: [dpdk-dev] [PATCH v2] bonding: change mac_addr filled position
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>
Content-Type: text/plain; charset="UTF-8"
Message-ID: <20190314122721.wWsMhkkPHmzUwkYkyHhihBTMLmhICE5EdM8gzI0Q0ZE@z>

When mac_address update in bond_mode_8023ad_mac_address_update,
bonding port's mac_addr should update also.

Signed-off-by: Liang Zhang <zhangliang@bigo.sg>
---
 drivers/net/bonding/rte_eth_bond_8023ad.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/drivers/net/bonding/rte_eth_bond_8023ad.c b/drivers/net/bonding/rte_eth_bond_8023ad.c
index e518956..dac23ac 100644
--- a/drivers/net/bonding/rte_eth_bond_8023ad.c
+++ b/drivers/net/bonding/rte_eth_bond_8023ad.c
@@ -791,8 +791,11 @@ rx_machine_update(struct bond_dev_private *internals, uint8_t slave_id,
 		RTE_ASSERT(lacp->lacpdu.subtype == SLOW_SUBTYPE_LACP);
 
 		partner = &lacp->lacpdu.partner;
-		if (is_same_ether_addr(&partner->port_params.system, &internals->mode4.mac_addr)) {
-			/* This is LACP frame to the bonding port so pass it to rx_machine */
+		if (is_same_ether_addr(&partner->port_params.system,
+			&internals->mode4.mac_addr)) {
+			/* This LACP frame is sending to the bonding port
+			 * so pass it to rx_machine.
+			 */
 			rx_machine(internals, slave_id, &lacp->lacpdu);
 		}
 		rte_pktmbuf_free(lacp_pkt);
@@ -1144,7 +1147,6 @@ bond_mode_8023ad_setup(struct rte_eth_dev *dev,
 	bond_mode_8023ad_conf_assign(mode4, conf);
 	mode4->slowrx_cb = conf->slowrx_cb;
 	mode4->agg_selection = AGG_STABLE;
-	rte_eth_macaddr_get(internals->port_id, &mode4->mac_addr);
 
 	if (dev->data->dev_started)
 		bond_mode_8023ad_start(dev);
@@ -1170,6 +1172,7 @@ bond_mode_8023ad_start(struct rte_eth_dev *bond_dev)
 	struct mode8023ad_private *mode4 = &internals->mode4;
 	static const uint64_t us = BOND_MODE_8023AX_UPDATE_TIMEOUT_MS * 1000;
 
+	rte_eth_macaddr_get(internals->port_id, &mode4->mac_addr);
 	if (mode4->slowrx_cb)
 		return rte_eal_alarm_set(us, &bond_mode_8023ad_ext_periodic_cb,
 					 bond_dev);
-- 
2.7.4