From patchwork Fri Feb 17 12:20:19 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Jiale, SongX" X-Patchwork-Id: 124102 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id B60FD41CB9; Fri, 17 Feb 2023 05:23:17 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id AD83640F18; Fri, 17 Feb 2023 05:23:17 +0100 (CET) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mails.dpdk.org (Postfix) with ESMTP id 5338440A8B for ; Fri, 17 Feb 2023 05:23:15 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1676607795; x=1708143795; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=n6n9hRRm43CXH+bBGY6Mb6wDOmgSYS40tWLrS+Xu22c=; b=lq8CkOKWFc0cHDYwff0LiPDa4o6BDM9Gr8HEIogTMLsORo9IvAw5+l6T ldY8gT8UIZbeTYMpEO0jHFuV9+I6TsOWEYVO3Z9ZNQl1iZJRN3Wt3Y8at d6yi2NbDymi5YK0PPMSQltU5Mv0g0OCniN/lJXZi9YSg0JJIf6Mki32fN vTk2zfzvGMNwD9SybcqqLqP7VmKJJbbtd83yo2gidV6dx4IF4BpvPX3oA oFY3DjuvLbH+rkY27EKIT4RQF7QWyYOoyGseYxPyVwrEbMvAeqpluN7Ct jVL4MHRyIXsvexYd/rnkxOwQYqyKo8b/wpqX4+f/6UWEhC3OplsyqzP9q w==; X-IronPort-AV: E=McAfee;i="6500,9779,10623"; a="359353883" X-IronPort-AV: E=Sophos;i="5.97,304,1669104000"; d="scan'208";a="359353883" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Feb 2023 20:23:14 -0800 X-IronPort-AV: E=McAfee;i="6500,9779,10623"; a="663757836" X-IronPort-AV: E=Sophos;i="5.97,304,1669104000"; d="scan'208";a="663757836" Received: from unknown (HELO localhost.localdomain) ([10.239.252.20]) by orsmga007-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Feb 2023 20:23:13 -0800 From: Song Jiale To: dts@dpdk.org Cc: Song Jiale Subject: [dts] [PATCH V2 1/5] tests/bonding: modify script to adapt changes in dpdk Date: Fri, 17 Feb 2023 12:20:19 +0000 Message-Id: <20230217122023.2345221-2-songx.jiale@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230217122023.2345221-1-songx.jiale@intel.com> References: <20230217122023.2345221-1-songx.jiale@intel.com> MIME-Version: 1.0 X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dts-bounces@dpdk.org the display information of the binding port in dpdk-testpmd has changed. modify the script to adapt to this change. According to dpdk commit f3b5f3d35c59e1("app/testpmd: use dump API to show bonding info"). Signed-off-by: Song Jiale --- tests/bonding.py | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/tests/bonding.py b/tests/bonding.py index 30f55c7f..c2c13b2a 100644 --- a/tests/bonding.py +++ b/tests/bonding.py @@ -19,13 +19,13 @@ from framework.pmd_output import PmdOutput from framework.settings import HEADER_SIZE # define bonding mode -MODE_ROUND_ROBIN = 0 -MODE_ACTIVE_BACKUP = 1 -MODE_XOR_BALANCE = 2 -MODE_BROADCAST = 3 -MODE_LACP = 4 -MODE_TLB_BALANCE = 5 -MODE_ALB_BALANCE = 6 +MODE_ROUND_ROBIN = "ROUND_ROBIN(0)" +MODE_ACTIVE_BACKUP = "ACTIVE_BACKUP(1)" +MODE_XOR_BALANCE = "BALANCE(2)" +MODE_BROADCAST = "BROADCAST(3)" +MODE_LACP = "8023AD(4)" +MODE_TLB_BALANCE = "TLB(5)" +MODE_ALB_BALANCE = "ALB(6)" # define packet size FRAME_SIZE_64 = 64 @@ -643,7 +643,7 @@ class PmdBonding(object): def get_bonding_info(self, bond_port, info_types): """Get the specified port information by its output message format""" info_set = { - "mode": ["Bonding mode: ", "\d*"], + "mode": ["Bonding mode: ", "\S*"], "agg_mode": ["IEEE802.3AD Aggregator Mode: ", "\S*"], "balance_policy": ["Balance Xmit Policy: ", "\S+"], "slaves": [ @@ -654,7 +654,7 @@ class PmdBonding(object): ["Active Slaves \(\d\): \[", "\d*( \d*)*"], ["Acitve Slaves: \[", "\d*( \d*)*"], ], - "primary": ["Primary: \[", "\d*"], + "current_primary": ["Current Primary: \[", "\d*"], } # get all config information config_content = self.d_console("show bonding config %d" % bond_port) @@ -684,18 +684,20 @@ class PmdBonding(object): return None def get_active_slaves(self, bond_port): - primary_port = int(self.get_bonding_info(bond_port, "primary")) + primary_port = int(self.get_bonding_info(bond_port, "current_primary")) active_slaves = self.get_bonding_info(bond_port, "active_slaves") return int(primary_port), [int(slave) for slave in active_slaves] - def create_bonded_device(self, mode=0, socket=0, verify_detail=False): + def create_bonded_device(self, mode="", socket=0, verify_detail=False): """ Create a bonding device with the parameters you specified. """ - cmd = "create bonded device %d %d" % (mode, socket) + p = r"\w+\((\d+)\)" + mode_id = int(re.match(p, mode).group(1)) + cmd = "create bonded device %d %d" % (mode_id, socket) out = self.d_console(cmd) - err_fmt = "Create bonded device on mode [%d] socket [%d] failed" + err_fmt = "Create bonded device on mode [%s] socket [%d] failed" self.verify("Created new bonded device" in out, err_fmt % (mode, socket)) fmts = [ "Created new bonded device net_bond_testpmd_[\d] on \(port ", @@ -708,7 +710,7 @@ class PmdBonding(object): if verify_detail: out = self.d_console("show bonding config %d" % bond_port) self.verify( - "Bonding mode: %d" % mode in out, + "Bonding mode: %s" % mode in out, "Bonding mode display error when create bonded device", ) self.verify( @@ -719,8 +721,8 @@ class PmdBonding(object): "Active Slaves display error when create bonded device", ) self.verify( - "Primary: []" not in out, - "Primary display error when create bonded device", + "Current Primary: []" not in out, + "Current Primary display error when create bonded device", ) out = self.d_console("show port info %d" % bond_port) self.verify( @@ -796,7 +798,7 @@ class PmdBonding(object): """ cmd = "set bonding primary %d %d" % (slave_port, bond_port) self.d_console(cmd) - out = self.get_bonding_info(bond_port, "primary") + out = self.get_bonding_info(bond_port, "current_primary") if not invert_verify: self.verify(str(slave_port) in out, "Set bonding primary port failed") else: From patchwork Fri Feb 17 12:20:20 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Jiale, SongX" X-Patchwork-Id: 124103 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id E798F41CB9; Fri, 17 Feb 2023 05:23:18 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id DD928410F6; Fri, 17 Feb 2023 05:23:18 +0100 (CET) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mails.dpdk.org (Postfix) with ESMTP id BF2D2410EE for ; Fri, 17 Feb 2023 05:23:16 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1676607796; x=1708143796; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=7XgdXrdqh5hId593unuk6qRievmBBll1JKxTOlAdPrA=; b=Rw3Jz/rDS3qvz0JDBlW0afjc0KMFM2q5LD4mKH/aVfP1NRDK/utZ4cIr jFabFQe9xasAeF4AQW4bx9ijBwZU9Bn9rKweFoGLMoD6PUy/taRRVJUgD 27C3r3BJJTuHNZjCB+DS4k6omdDTWLruKau7kOPmgOJ1jHkz50XtbCVH7 syzfzr35/xKpZFMEvXRC6P3Y06hQsrHS9WxFIHc8mLvjjkuxWZ6GRN2JX H6vgh3iKeNNPjsAZIGF9FArTMUA7VMqvG9CZH2mOqb8KSaikOJNjjVcVK XtKu8kptYzyqWtHKDDhJasdNLOUFw2VCzRY7MkW5z0ILV2CJrDXzySFC0 Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10623"; a="359353884" X-IronPort-AV: E=Sophos;i="5.97,304,1669104000"; d="scan'208";a="359353884" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Feb 2023 20:23:16 -0800 X-IronPort-AV: E=McAfee;i="6500,9779,10623"; a="663757839" X-IronPort-AV: E=Sophos;i="5.97,304,1669104000"; d="scan'208";a="663757839" Received: from unknown (HELO localhost.localdomain) ([10.239.252.20]) by orsmga007-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Feb 2023 20:23:15 -0800 From: Song Jiale To: dts@dpdk.org Cc: Song Jiale Subject: [dts] [PATCH V2 2/5] test_plans/pmd_bonded_8023ad: modify script to adapt changes in dpdk Date: Fri, 17 Feb 2023 12:20:20 +0000 Message-Id: <20230217122023.2345221-3-songx.jiale@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230217122023.2345221-1-songx.jiale@intel.com> References: <20230217122023.2345221-1-songx.jiale@intel.com> MIME-Version: 1.0 X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dts-bounces@dpdk.org the display information of the binding port in dpdk-testpmd has changed. modify the script to adapt to this change. According to dpdk commit f3b5f3d35c59e1("app/testpmd: use dump API to show bonding info"). Signed-off-by: Song Jiale --- test_plans/pmd_bonded_8023ad_test_plan.rst | 82 +++++++++++++++++++--- 1 file changed, 72 insertions(+), 10 deletions(-) diff --git a/test_plans/pmd_bonded_8023ad_test_plan.rst b/test_plans/pmd_bonded_8023ad_test_plan.rst index f54c51d2..7c4a4d69 100644 --- a/test_plans/pmd_bonded_8023ad_test_plan.rst +++ b/test_plans/pmd_bonded_8023ad_test_plan.rst @@ -293,11 +293,60 @@ steps #. check if agg_mode set successful:: testpmd> show bonding config 2 - Bonding mode: 4 - IEEE802.3AD Aggregator Mode: - Slaves (2): [0 1] - Active Slaves (2): [0 1] - Primary: [0] + - Dev basic: + Bonding mode: 8023AD(4) + Balance Xmit Policy: BALANCE_XMIT_POLICY_LAYER2 + IEEE802.3AD Aggregator Mode: + Slaves (2): [0 1] + Active Slaves (2): [0 1] + Current Primary: [0] + - Lacp info: + IEEE802.3 port: 2 + fast period: 900 ms + slow period: 29000 ms + short timeout: 3000 ms + long timeout: 90000 ms + aggregate wait timeout: 2000 ms + tx period: 500 ms + rx marker period: 2000 ms + update timeout: 100 ms + aggregation mode: count + + Slave Port: 0 + Aggregator port id: 0 + selection: SELECTED + Actor detail info: + system priority: 65535 + system mac address: 7A:1A:91:74:32:46 + port key: 8448 + port priority: 65280 + port number: 256 + port state: ACTIVE AGGREGATION DEFAULTED + Partner detail info: + system priority: 65535 + system mac address: 00:00:00:00:00:00 + port key: 256 + port priority: 65280 + port number: 0 + port state: ACTIVE + + Slave Port: 1 + Aggregator port id: 0 + selection: SELECTED + Actor detail info: + system priority: 65535 + system mac address: 5E:F7:F5:3E:58:D8 + port key: 8448 + port priority: 65280 + port number: 512 + port state: ACTIVE AGGREGATION DEFAULTED + Partner detail info: + system priority: 65535 + system mac address: 00:00:00:00:00:00 + port key: 256 + port priority: 65280 + port number: 0 + port state: ACTIVE #. quit testpmd:: @@ -384,11 +433,24 @@ steps #. check if bonded device has been created and slaves have been bonded successful:: testpmd> show bonding config 2 - Bonding mode: 4 - IEEE802.3AD Aggregator Mode: - Slaves (2): [0 1] - Active Slaves (2): [0 1] - Primary: [0] + - Dev basic: + Bonding mode: 8023AD(4) + Balance Xmit Policy: BALANCE_XMIT_POLICY_LAYER2 + IEEE802.3AD Aggregator Mode: + Slaves (2): [0 1] + Active Slaves (2): [0 1] + Current Primary: [0] + - Lacp info: + IEEE802.3 port: 2 + fast period: 900 ms + slow period: 29000 ms + short timeout: 3000 ms + long timeout: 90000 ms + aggregate wait timeout: 2000 ms + tx period: 500 ms + rx marker period: 2000 ms + update timeout: 100 ms + aggregation mode: #. check if bonded port can start:: From patchwork Fri Feb 17 12:20:21 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Jiale, SongX" X-Patchwork-Id: 124104 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 494D441CBA; Fri, 17 Feb 2023 05:23:19 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 174AC41143; Fri, 17 Feb 2023 05:23:19 +0100 (CET) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mails.dpdk.org (Postfix) with ESMTP id 3FAA040A8B for ; Fri, 17 Feb 2023 05:23:18 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1676607798; x=1708143798; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=DRIH+ugGBeX5jb2SQgwJ9DwutN7bbA2Cd4r+d27T/uw=; b=InJHHa6Kizf3a+rjrrIWk1AhMejY/dRVSTGdnlsBsfrsGXyNl4OxhArH ivQfZbna7vnlmdE2sv56C4+41V9GsAZfrgzYoCqBKvF/iY17RZrUr6xgU 50L59ht278DGJznqn2nAX2cEBPmSyVx0AihQTOK3/z+ysR63YIbWMb368 7NB1fvxTePAgDPJnqKUrIc588fT4OXz2ZaWxb4krAuovHKk/7S2BlGVZi cfmABYeRaDpSdARXIaKAxP9bhqbXCMWDMjPpsrDj+hm6fyhmKvFLYYCbH Mq2KAd2pSkbGSCLkv/ggPBQRd9LwhEljXDCISygEZ+BDldSrMIA9sMMmv Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10623"; a="359353886" X-IronPort-AV: E=Sophos;i="5.97,304,1669104000"; d="scan'208";a="359353886" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Feb 2023 20:23:17 -0800 X-IronPort-AV: E=McAfee;i="6500,9779,10623"; a="663757844" X-IronPort-AV: E=Sophos;i="5.97,304,1669104000"; d="scan'208";a="663757844" Received: from unknown (HELO localhost.localdomain) ([10.239.252.20]) by orsmga007-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Feb 2023 20:23:16 -0800 From: Song Jiale To: dts@dpdk.org Cc: Song Jiale Subject: [dts] [PATCH V2 3/5] tests/pmd_bonded_8023ad: modify script to adapt changes in dpdk Date: Fri, 17 Feb 2023 12:20:21 +0000 Message-Id: <20230217122023.2345221-4-songx.jiale@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230217122023.2345221-1-songx.jiale@intel.com> References: <20230217122023.2345221-1-songx.jiale@intel.com> MIME-Version: 1.0 X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dts-bounces@dpdk.org the display information of the binding port in dpdk-testpmd has changed. modify the script to adapt to this change. According to dpdk commit f3b5f3d35c59e1("app/testpmd: use dump API to show bonding info"). Signed-off-by: Song Jiale --- tests/TestSuite_pmd_bonded_8023ad.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/TestSuite_pmd_bonded_8023ad.py b/tests/TestSuite_pmd_bonded_8023ad.py index c1bf2759..1921a942 100644 --- a/tests/TestSuite_pmd_bonded_8023ad.py +++ b/tests/TestSuite_pmd_bonded_8023ad.py @@ -362,7 +362,9 @@ class TestBonding8023AD(TestCase): # create commandline option format bonding_name = "net_bonding0" slaves_pci = ["slave=" + pci for pci in slave_pcis] - bonding_mode = "mode={0}".format(str(MODE_LACP)) + p = r"\w+\((\d+)\)" + mode_id = int(re.match(p, str(MODE_LACP)).group(1)) + bonding_mode = "mode={0}".format(mode_id) agg_config = "agg_mode={0}" vdev_format = ",".join([bonding_name] + slaves_pci + [bonding_mode, agg_config]) # command line option From patchwork Fri Feb 17 12:20:22 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Jiale, SongX" X-Patchwork-Id: 124105 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 4B1C941CB9; Fri, 17 Feb 2023 05:23:21 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 427044113F; Fri, 17 Feb 2023 05:23:21 +0100 (CET) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mails.dpdk.org (Postfix) with ESMTP id AA95F40A8B for ; Fri, 17 Feb 2023 05:23:19 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1676607799; x=1708143799; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=20N4b55c61ltiIKTX87Gx6pymfWNYoGcX5i+zBirY/Y=; b=WXfq6mdcSKlgXlvSbqBsgLLjOZqz84GTFFbvKTCmZAbvChW+1hRUnQlz mK+6m8L934+2fiwxZ5nsa4QtJ1PmneYxGJaFx5yGOZwElZWmP9Zd+bb51 x6vy2WwbgDA5Up4yR/BUB9EQ2fX17Y/rR9/gzilnuFBtGAJTzs25qN9xR eH0Yhkw8EcdSyDWIdHgeG6hqEvvJof+yCIv+8AkBM++aQ0B/FDMRDV7Yp 4z/Unf1VNTzyaTaReKYs8pMhXwhGOmObiuo5+mG/ZRmcTl5xfwqSiwytk QrElbmHOpuhgXXNrOJdbK2WNduGKgfJHVWgnGFvXQUjWQAlO5r7pq2IHx Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10623"; a="359353889" X-IronPort-AV: E=Sophos;i="5.97,304,1669104000"; d="scan'208";a="359353889" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Feb 2023 20:23:19 -0800 X-IronPort-AV: E=McAfee;i="6500,9779,10623"; a="663757848" X-IronPort-AV: E=Sophos;i="5.97,304,1669104000"; d="scan'208";a="663757848" Received: from unknown (HELO localhost.localdomain) ([10.239.252.20]) by orsmga007-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Feb 2023 20:23:18 -0800 From: Song Jiale To: dts@dpdk.org Cc: Song Jiale Subject: [dts] [PATCH V2 4/5] test_plans/pmd_bonded: modify script to adapt changes in dpdk Date: Fri, 17 Feb 2023 12:20:22 +0000 Message-Id: <20230217122023.2345221-5-songx.jiale@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230217122023.2345221-1-songx.jiale@intel.com> References: <20230217122023.2345221-1-songx.jiale@intel.com> MIME-Version: 1.0 X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dts-bounces@dpdk.org the display information of the binding port in dpdk-testpmd has changed. modify the script to adapt to this change. According to dpdk commit f3b5f3d35c59e1("app/testpmd: use dump API to show bonding info"). Signed-off-by: Song Jiale --- test_plans/pmd_bonded_test_plan.rst | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/test_plans/pmd_bonded_test_plan.rst b/test_plans/pmd_bonded_test_plan.rst index a76ac6b8..dde885d2 100644 --- a/test_plans/pmd_bonded_test_plan.rst +++ b/test_plans/pmd_bonded_test_plan.rst @@ -105,18 +105,20 @@ Create bonded device, add first slave, verify default bonded device has default testpmd> add bonding slave 1 4 Adding port 1 as slave testpmd> show bonding config 4 - Bonding mode: 1 - Slaves: [1] - Active Slaves: [] - Failed to get primary slave for port=4 + - Dev basic: + Bonding mode: ACTIVE_BACKUP(1) + Slaves (1): [1] + Active Slaves: [] + Current Primary: [1] testpmd> port start 4 ...... Done testpmd> show bonding config 4 - Bonding mode: 1 - Slaves: [1] - Active Slaves: [1] - Primary: [1] + - Dev basic: + Bonding mode: ACTIVE_BACKUP(1) + Slaves (1): [1] + Active Slaves: [1] + Current Primary: [1] Create another bonded device, and check if the slave added to bonded device1 can't be added to bonded device2:: From patchwork Fri Feb 17 12:20:23 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Jiale, SongX" X-Patchwork-Id: 124106 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 7396941CB9; Fri, 17 Feb 2023 05:23:23 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6AB79410F1; Fri, 17 Feb 2023 05:23:23 +0100 (CET) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mails.dpdk.org (Postfix) with ESMTP id 449F141141 for ; Fri, 17 Feb 2023 05:23:21 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1676607801; x=1708143801; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=eU2e7Hoock1wxkUsOZY+qd+4JXumGGibIciOQF0PalM=; b=OR9Ei+Xj3ecpRWC5dB+t7VBbvLcSQbGdUWe+uyzK/OHxMIgcNBSd93MP 2chGMzNDDuywG6OgFRYV41etcZyYMF+kqqs68vPJn6+fyM9UwIU5BPMxS 9LhtVTTqz5FNLPxXQn+FtVZG1VVVZi87+izCEDqkYIMiyeNDeg86JOJfJ 6rEHRiWxUt0Rlw/9VUhlbodBOF/qlqqsCN8bQ4/gTIUH0LwejcKEtFb9r 5uP1AyOtwya8EUTzfB8JXFmsMm1j3jFgiad/eOJdVmMOokcPSY776MKGK gWByjNO3l4x3KOkEtWEsoOGn9/7CPJtbP0qWsHOpNXNWxi4WmJG735gp1 w==; X-IronPort-AV: E=McAfee;i="6500,9779,10623"; a="359353892" X-IronPort-AV: E=Sophos;i="5.97,304,1669104000"; d="scan'208";a="359353892" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Feb 2023 20:23:20 -0800 X-IronPort-AV: E=McAfee;i="6500,9779,10623"; a="663757851" X-IronPort-AV: E=Sophos;i="5.97,304,1669104000"; d="scan'208";a="663757851" Received: from unknown (HELO localhost.localdomain) ([10.239.252.20]) by orsmga007-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Feb 2023 20:23:19 -0800 From: Song Jiale To: dts@dpdk.org Cc: Song Jiale Subject: [dts] [PATCH V2 5/5] tests/pmd_bonded: modify script to adapt changes in dpdk Date: Fri, 17 Feb 2023 12:20:23 +0000 Message-Id: <20230217122023.2345221-6-songx.jiale@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230217122023.2345221-1-songx.jiale@intel.com> References: <20230217122023.2345221-1-songx.jiale@intel.com> MIME-Version: 1.0 X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dts-bounces@dpdk.org the display information of the binding port in dpdk-testpmd has changed. modify the script to adapt to this change. According to dpdk commit f3b5f3d35c59e1("app/testpmd: use dump API to show bonding info"). Signed-off-by: Song Jiale Reviewed-by: Lijuan Tu --- tests/TestSuite_pmd_bonded.py | 53 ++++++++++++++++++----------------- 1 file changed, 28 insertions(+), 25 deletions(-) diff --git a/tests/TestSuite_pmd_bonded.py b/tests/TestSuite_pmd_bonded.py index 97f76e93..a27a991a 100644 --- a/tests/TestSuite_pmd_bonded.py +++ b/tests/TestSuite_pmd_bonded.py @@ -25,13 +25,13 @@ from framework.test_case import TestCase SOCKET_0 = 0 SOCKET_1 = 1 -MODE_ROUND_ROBIN = 0 -MODE_ACTIVE_BACKUP = 1 -MODE_XOR_BALANCE = 2 -MODE_BROADCAST = 3 -MODE_LACP = 4 -MODE_TLB_BALANCE = 5 -MODE_ALB_BALANCE = 6 +MODE_ROUND_ROBIN = "ROUND_ROBIN(0)" +MODE_ACTIVE_BACKUP = "ACTIVE_BACKUP(1)" +MODE_XOR_BALANCE = "BALANCE(2)" +MODE_BROADCAST = "BROADCAST(3)" +MODE_LACP = "8023AD(4)" +MODE_TLB_BALANCE = "TLB(5)" +MODE_ALB_BALANCE = "ALB(6)" FRAME_SIZE_64 = 64 FRAME_SIZE_65 = 65 @@ -413,7 +413,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)' """ Get the mode of the bonding device which you choose. """ - return self.get_info_from_bond_config("Bonding mode: ", "\d*", bond_port) + return self.get_info_from_bond_config("Bonding mode: ", "\S*", bond_port) def get_bond_balance_policy(self, bond_port): """ @@ -449,7 +449,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)' """ Get the primary slave of the bonding device which you choose. """ - return self.get_info_from_bond_config("Primary: \[", "\d*", bond_port) + return self.get_info_from_bond_config("Current Primary: \[", "\d*", bond_port) def launch_app(self, pmd_param=" "): """ @@ -457,16 +457,18 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)' """ self.pmdout.start_testpmd("all", param=pmd_param) - def create_bonded_device(self, mode=0, socket=0, verify_detail=False): + def create_bonded_device(self, mode="", socket=0, verify_detail=False): """ Create a bonding device with the parameters you specified. """ + p = r"\w+\((\d+)\)" + mode_id = int(re.match(p, mode).group(1)) out = self.dut.send_expect( - "create bonded device %d %d" % (mode, socket), "testpmd> " + "create bonded device %d %d" % (mode_id, socket), "testpmd> " ) self.verify( "Created new bonded device" in out, - "Create bonded device on mode [%d] socket [%d] failed" % (mode, socket), + "Create bonded device on mode [%s] socket [%d] failed" % (mode, socket), ) bond_port = self.get_value_from_str( "Created new bonded device net_bonding_testpmd_[\d] on \(port ", "\d+", out @@ -478,7 +480,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)' "show bonding config %d" % bond_port, "testpmd> " ) self.verify( - "Bonding mode: %d" % mode in out, + "Bonding mode: %s" % mode in out, "Bonding mode display error when create bonded device", ) self.verify( @@ -911,19 +913,20 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)' Do some basic operations to bonded devices and slaves, such as adding, removing, setting primary or setting mode. """ + p = r"\w+\((\d+)\)" + mode_id = int(re.match(p, mode_set).group(1)) bond_port_0 = self.create_bonded_device(mode_set, SOCKET_0, True) self.add_slave_to_bonding_device(bond_port_0, False, self.dut_ports[1]) - mode_value = self.get_bond_mode(bond_port_0) - self.verify("%d" % mode_set in mode_value, "Setting bonding mode error") + self.verify("%s" % mode_set in mode_value, "Setting bonding mode error") bond_port_1 = self.create_bonded_device(mode_set, SOCKET_0) self.add_slave_to_bonding_device(bond_port_0, False, self.dut_ports[0]) self.add_slave_to_bonding_device(bond_port_1, True, self.dut_ports[0]) - OTHER_MODE = mode_set + 1 if not mode_set else mode_set - 1 + OTHER_MODE = mode_id + 1 if not mode_id else mode_id - 1 self.set_mode_for_bonding_device(bond_port_0, OTHER_MODE) - self.set_mode_for_bonding_device(bond_port_0, mode_set) + self.set_mode_for_bonding_device(bond_port_0, mode_id) self.add_slave_to_bonding_device(bond_port_0, False, self.dut_ports[2]) time.sleep(5) @@ -968,14 +971,14 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)' self.verify( mac_address_1_orig == mac_address_bond_now and mac_address_bond_now == mac_address_2_now, - "NOT all slaves MAC address same with bonding device in mode %d" + "NOT all slaves MAC address same with bonding device in mode %s" % mode_set, ) else: self.verify( mac_address_1_orig == mac_address_bond_now and mac_address_bond_now != mac_address_2_now, - "All slaves should not be the same in mode %d" % mode_set, + "All slaves should not be the same in mode %s" % mode_set, ) new_mac = "00:11:22:00:33:44" @@ -990,7 +993,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)' == mac_address_2_now == mac_address_bond_now == new_mac, - "Set mac failed for bonding device in mode %d" % mode_set, + "Set mac failed for bonding device in mode %s" % mode_set, ) elif mode_set == MODE_LACP: self.verify( @@ -998,14 +1001,14 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)' and mac_address_1_now != new_mac and mac_address_2_now != new_mac and mac_address_1_now != mac_address_2_now, - "Set mac failed for bonding device in mode %d" % mode_set, + "Set mac failed for bonding device in mode %s" % mode_set, ) elif mode_set in [MODE_ACTIVE_BACKUP, MODE_TLB_BALANCE]: self.verify( mac_address_bond_now == new_mac and mac_address_1_now == new_mac and mac_address_bond_now != mac_address_2_now, - "Set mac failed for bonding device in mode %d" % mode_set, + "Set mac failed for bonding device in mode %s" % mode_set, ) self.set_primary_for_bonding_device(bond_port, self.dut_ports[2], False) @@ -1117,18 +1120,18 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)' if mode_set in [MODE_ROUND_ROBIN, MODE_XOR_BALANCE, MODE_BROADCAST]: self.verify( port_disabled_num == 4, - "Not all slaves of bonded device turn promiscuous mode off in mode %d." + "Not all slaves of bonded device turn promiscuous mode off in mode %s." % mode_set, ) elif mode_set == MODE_LACP: self.verify( port_disabled_num == 1, - "Not only turn bound device promiscuous mode off in mode %d" % mode_set, + "Not only turn bound device promiscuous mode off in mode %s" % mode_set, ) else: self.verify( port_disabled_num == 2, - "Not only the primary slave turn promiscous mode off in mode %d, " + "Not only the primary slave turn promiscous mode off in mode %s, " % mode_set + " when bonded device promiscous disabled.", )