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 7C944A04F5; Thu, 5 Dec 2019 03:13:00 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 4037E1BE84; Thu, 5 Dec 2019 03:13:00 +0100 (CET) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by dpdk.org (Postfix) with ESMTP id 388401BE82 for ; Thu, 5 Dec 2019 03:12:58 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by orsmga105.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 04 Dec 2019 18:12:56 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.69,279,1571727600"; d="scan'208";a="201616540" Received: from dpdk-lihong-ub1604.sh.intel.com ([10.67.118.203]) by orsmga007.jf.intel.com with ESMTP; 04 Dec 2019 18:12:56 -0800 From: lihong To: dts@dpdk.org Cc: lihong Date: Thu, 5 Dec 2019 02:47:25 +0800 Message-Id: <1575485245-9041-1-git-send-email-lihongx.ma@intel.com> X-Mailer: git-send-email 2.7.4 Subject: [dts] [PATCH V2] tests/sriov_kvm: restart testpmd if execute special cmd in cases X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 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 Sender: "dts" if testpmd execute special cmd which maybe effect other cases, restart testpmd Signed-off-by: lihong --- tests/TestSuite_sriov_kvm.py | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/tests/TestSuite_sriov_kvm.py b/tests/TestSuite_sriov_kvm.py index 546b01c..54148af 100644 --- a/tests/TestSuite_sriov_kvm.py +++ b/tests/TestSuite_sriov_kvm.py @@ -51,6 +51,8 @@ class TestSriovKvm(TestCase): self.dut.send_expect('modprobe vfio-pci', '#') self.setup_2vm_2vf_env_flag = 0 self.setup_2vm_prerequisite_flag = 0 + self.vm0_testpmd = None + self.vm1_testpmd = None self.setup_2vm_2vf_env() def set_up(self): @@ -482,6 +484,12 @@ class TestSriovKvm(TestCase): self.vm0_testpmd.execute_cmd('stop') self.vm1_testpmd.execute_cmd('stop') else: + if self.vm0_testpmd: + self.vm0_testpmd.quit() + self.vm0_testpmd = None + if self.vm1_testpmd: + self.vm1_testpmd.quit() + self.vm1_testpmd = None self.vm0_dut_ports = self.vm_dut_0.get_ports('any') self.vm0_testpmd = PmdOutput(self.vm_dut_0) self.vm0_testpmd.start_testpmd(VM_CORES_MASK) @@ -532,7 +540,8 @@ class TestSriovKvm(TestCase): self.vm0_testpmd.execute_cmd("set promisc all off") self.vm0_testpmd.execute_cmd('start') - self.setup_2vm_prerequisite_flag = 1 + # restart testpmd after this cases, because in this case have set some special cmd + self.setup_2vm_prerequisite_flag = 0 time.sleep(2) vm1_start_stats = self.vm1_testpmd.get_pmd_stats(port_id_0) @@ -715,6 +724,7 @@ class TestSriovKvm(TestCase): self.verify(vm1_ret_stats['RX-packets'] == packet_num * 2, "Vlan mirror failed between VM0 and VM1!") def test_two_vms_vlan_and_pool_mirror(self): + self.setup_2vm_prerequisite_flag = 0 self.vm0_testpmd.execute_cmd('vlan set strip on 0') self.vm1_testpmd.execute_cmd('vlan set strip on 0') port_id_0 = 0 @@ -755,11 +765,11 @@ class TestSriovKvm(TestCase): vm0_ret_stats = self.calculate_stats(vm0_start_stats, vm0_end_stats) - self.verify(self.vm0_testpmd.check_tx_bytes(vm0_ret_stats['RX-packets'], 10 * packet_num), - "Vlan mirror failed between VM0 and VM1 when set vlan and pool mirror!") self.host_testpmd.execute_cmd( 'rx_vlan rm %d port %d vf %s' % (vlan_id, port_id_0, vf_mask)) self.reset_port_all_mirror_rule(port_id_0) + self.verify(self.vm0_testpmd.check_tx_bytes(vm0_ret_stats['RX-packets'], 10 * packet_num), + "Vlan mirror failed between VM0 and VM1 when set vlan and pool mirror!") def test_two_vms_uplink_and_downlink_mirror(self): """ @@ -893,6 +903,7 @@ class TestSriovKvm(TestCase): vf_num = 0 packet_num = 10 + self.setup_2vm_prerequisite_flag = 0 for vf_mac in ["00:11:22:33:44:55", "00:55:44:33:22:11"]: if self.nic.startswith('niantic') or self.nic.startswith('sage'): set_mac_cmd = "mac_addr add port %d vf %d %s" @@ -924,6 +935,7 @@ class TestSriovKvm(TestCase): self.dut.logger.warning("NIC is [%s], skip this case" % self.nic) return + self.setup_2vm_prerequisite_flag = 0 port_id_0 = 0 vf_mac = "00:11:22:33:44:55" packet_num = 10 @@ -975,6 +987,7 @@ class TestSriovKvm(TestCase): port_id_0 = 0 packet_num = 10 + self.setup_2vm_prerequisite_flag = 0 for vf_mac in ["00:55:44:33:22:11", "00:55:44:33:22:66"]: self.host_testpmd.execute_cmd("set port %d uta %s on" % (port_id_0, vf_mac)) @@ -1002,6 +1015,7 @@ class TestSriovKvm(TestCase): self.dut.logger.warning("NIC is [%s], skip this case" % self.nic) return + self.setup_2vm_prerequisite_flag = 0 port_id_0 = 0 vf_mac = "00:55:44:33:22:11" packet_num = 10 @@ -1039,6 +1053,7 @@ class TestSriovKvm(TestCase): self.dut.logger.warning("NIC is [%s], skip this case" % self.nic) return + self.setup_2vm_prerequisite_flag = 0 port_id_0 = 0 packet_num = 10 @@ -1080,6 +1095,7 @@ class TestSriovKvm(TestCase): port_id_0 = 0 packet_num = 10 + self.setup_2vm_prerequisite_flag = 0 for switch in ['on', 'off', 'on']: self.host_testpmd.execute_cmd("set port %d vf 0 tx %s" % (port_id_0, switch)) @@ -1114,6 +1130,7 @@ class TestSriovKvm(TestCase): vf_mac = "FF:FF:FF:FF:FF:FF" packet_num = 10 + self.setup_2vm_prerequisite_flag = 0 for switch in ['on', 'off', 'on']: self.host_testpmd.execute_cmd("set port %d vf 0 rxmode BAM %s" % (port_id_0, switch)) -- 2.7.4