From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 33488A0565; Mon, 2 Mar 2020 01:59:12 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 496381C06B; Mon, 2 Mar 2020 01:59:11 +0100 (CET) Received: from m12-11.163.com (m12-11.163.com [220.181.12.11]) by dpdk.org (Postfix) with ESMTP id 958E51C06A for ; Mon, 2 Mar 2020 01:59:08 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=Subject:From:Message-ID:Date:MIME-Version; bh=fDc+d XYibILjh/kvD0xoI0tdB1Rb36NR4bc9erw5KyE=; b=g/HxUA894pkMN1S8d9Ulb WtJu14I7PhcW0RU6gE3dGwVDCoNXL7VA86dNF/WkNXzhs9cwWmgR1kuTH1EO7Rrb Qw8JJiKCY6U7gIWCvZH/b/11tRb+9XxXRHN+tM3Mlh5hfNhPuklttaxXokwlHvk+ MnRhKSD9kM1p8IIhEjhRdo= Received: from [192.168.1.199] (unknown [139.159.243.11]) by smtp7 (Coremail) with SMTP id C8CowABnbalSWlxeMoWACw--.42244S2; Mon, 02 Mar 2020 08:58:59 +0800 (CST) To: Ferruh Yigit , "Wei Hu (Xavier)" , dev@dpdk.org, chas3@gmail.com Cc: Chas Williams References: <20200225092903.38455-1-huwei013@chinasoftinc.com> <20200225092903.38455-2-huwei013@chinasoftinc.com> <23f61a09-bba3-cccb-3ea6-52956a62ee37@intel.com> <913f85e0-7d43-2883-ea3c-adbaddf68b6b@163.com> From: "Wei Hu (Xavier)" Message-ID: Date: Mon, 2 Mar 2020 08:58:58 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Thunderbird/68.3.0 MIME-Version: 1.0 In-Reply-To: <913f85e0-7d43-2883-ea3c-adbaddf68b6b@163.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit X-CM-TRANSID: C8CowABnbalSWlxeMoWACw--.42244S2 X-Coremail-Antispam: 1Uf129KBjvJXoWxWr17Xw1fCryUAw13JF4kCrg_yoW5WF4rpa 95JayktrWkXr17CanFgF4DuFWakFZ8JFWUGryDtw13uws0qrya9a4jkw1jkayUXry8G3W2 yF4j9anrXF1UAaDanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x07b7xhLUUUUU= X-Originating-IP: [139.159.243.11] X-CM-SenderInfo: 50dyxv5ubk34lhl6il2tof0z/1tbiNhXao1WBiWee6gAAsU Subject: Re: [dpdk-dev] [PATCH 1/2] net/bonding: fix MAC address when switching active port 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Hi, Chas Williams Could you please give some suggestion on these patches? Thanks. Regards Xavier On 2020/2/28 9:31, Wei Hu (Xavier) wrote: > Hi,Ferruh Yigit > > On 2020/2/28 1:03, Ferruh Yigit wrote: >> On 2/25/2020 9:29 AM, Wei Hu (Xavier) wrote: >>> From: "Wei Hu (Xavier)" >>> >>> Currently, based on a active-backup bond device, when the link status of >>> the primary port changes from up to down, one slave port changes to the >>> primary port, but the new primary port's MAC address cannot change to >>> the >>> bond device's MAC address. And we can't continue receive packets whose >>> destination MAC addresses are the same as the bond devices's MAC >>> address. >>> >>> The current bonding PMD driver call mac_address_slaves_update >>> function to >>> modify the MAC address of all slaves devices: the primary port using >>> bond >>> device's MAC address, and other slaves devices using the respective MAC >>> address. We found that one error using primary_port instead of >>> current_primary_port in mac_address_slaves_update function. >>> >>> On the other hand, The current bonding PMD driver sets slave >>> devices's MAC >>> address according to the variable named current_primary_port. The >>> variable >>> named current_primary_port changes in the following scenario: >>> 1. Add the slave devices to bond, the first slave port will be >>> regardes as >>>     the current_primary_port. If changing the order of adding the slave >>>     devices, the value of the variable named current_primary_port >>> will be >>>     different. >>> 2. The upper application specifies primary_port via calling the >>>     rte_eth_bond_primary_set API function. >>> 3. Delete the primary slave device. >>> 4. The link status of the primary port changes from up to down. >>> >>> We have tested the above 4 cases and found that there are problems that >>> the new primary port's MAC address didn't change to the bond device's >>> MAC >>> address when running case 3 and 4. When current_primary_port changes, >>> the >>> new primary port's MAC address should change at the same time. We >>> also need >>> to call mac_address_slaves_update function to update MAC addresses in >>> case >>> 3 and 4. >>> >>> For more details please refer to: >>> https://bugs.dpdk.org/show_bug.cgi?id=256 >>> >>> Bugzilla ID: 256 >>> Fixes: 2efb58cbab6e ("bond: new link bonding library") >>> Cc: stable@dpdk.org >>> >>> Reported-by: Chunsong Feng >>> Signed-off-by: Chunsong Feng >>> Signed-off-by: Wei Hu (Xavier) >> >> Please cc the maintainer on the patches. cc'ed Chas for this one. >> >> I am using './devtools/get-maintainer.sh' script, once you set it up, >> it helps a >> lot. >> > Thanks for your suggestion. >   Regards > Xavier