From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from foss.arm.com (foss.arm.com [217.140.101.70]) by dpdk.org (Postfix) with ESMTP id 94F521B60E for ; Mon, 16 Oct 2017 12:22:51 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 945171435; Mon, 16 Oct 2017 03:22:50 -0700 (PDT) Received: from phil-VirtualBox.shanghai.arm.com (phil-virtualbox.shanghai.arm.com [10.169.38.30]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id B9CF33F483; Mon, 16 Oct 2017 03:22:49 -0700 (PDT) From: Phil Yang To: dts@dpdk.org Cc: nd@arm.com, Jianbo.Liu@arm.com, Herbert.Guan@arm.com, huilongx.xu@intel.com Date: Mon, 16 Oct 2017 18:22:41 +0800 Message-Id: <1508149361-7628-1-git-send-email-phil.yang@arm.com> X-Mailer: git-send-email 2.7.4 Subject: [dts] [PATCH] tests/hotplug: fix some failure 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: , X-List-Received-Date: Mon, 16 Oct 2017 10:22:52 -0000 1. Updated testpmd path for multiarch. 2. Fix port binding timeout in tear-down process. 3. Modified acceptance criteria to avoid test errors caused by broadcast packets. Signed-off-by: Phil Yang --- tests/TestSuite_hotplug.py | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/tests/TestSuite_hotplug.py b/tests/TestSuite_hotplug.py index 7704253..99d3f3b 100644 --- a/tests/TestSuite_hotplug.py +++ b/tests/TestSuite_hotplug.py @@ -69,8 +69,8 @@ class TestPortHotPlug(TestCase): """ attach port """ - # dpdk hotplug discern NIC by pci bus not include domid - self.dut.send_expect("port attach %s" % self.dut.ports_info[port]['pci'][len("0000:"):],"is attached",60) + # dpdk hotplug discern NIC by pci bus and include domid + self.dut.send_expect("port attach %s" % self.dut.ports_info[port]['pci'],"is attached",60) self.dut.send_expect("port start %s" % port,"Configuring Port",120) # sleep 10 seconds for fortville update link stats time.sleep(10) @@ -90,7 +90,7 @@ class TestPortHotPlug(TestCase): """ first run testpmd after attach port """ - cmd = "./x86_64-native-linuxapp-gcc/app/testpmd -c %s -n %s -- -i" % (self.coremask,self.dut.get_memory_channels()) + cmd = "./%s/app/testpmd -c %s -n %s -- -i" % (self.target,self.coremask,self.dut.get_memory_channels()) self.dut.send_expect(cmd,"testpmd>",60) session_secondary = self.dut.new_session() session_secondary.send_expect("./usertools/dpdk-devbind.py --bind=igb_uio %s" % self.dut.ports_info[self.port]['pci'], "#", 60) @@ -104,11 +104,12 @@ class TestPortHotPlug(TestCase): self.dut.send_expect("start","testpmd>",60) self.dut.send_expect("port detach %s" % self.port,"Please close port first",60) + self.dut.send_expect("clear port stats %s" % self.port ,"testpmd>",60) self.send_packet(self.port) out = self.dut.send_expect("show port stats %s" % self.port ,"testpmd>",60) packet = re.search("RX-packets:\s*(\d*)",out) sum_packet = packet.group(1) - self.verify(int(sum_packet) == 1, "Insufficient the received package") + self.verify(int(sum_packet) > 0, "Insufficient the received package") self.dut.send_expect("quit","#",60) def send_packet(self, port): @@ -129,17 +130,19 @@ class TestPortHotPlug(TestCase): session_secondary = self.dut.new_session() session_secondary.send_expect("./usertools/dpdk-devbind.py --bind=igb_uio %s" % self.dut.ports_info[self.port]['pci'], "#", 60) self.dut.close_session(session_secondary) - cmd = "./x86_64-native-linuxapp-gcc/app/testpmd -c %s -n %s -- -i" % (self.coremask,self.dut.get_memory_channels()) + cmd = "./%s/app/testpmd -c %s -n %s -- -i" % (self.target,self.coremask,self.dut.get_memory_channels()) self.dut.send_expect(cmd,"testpmd>",60) self.detach(self.port) self.attach(self.port) + self.dut.send_expect("start","testpmd>",60) self.dut.send_expect("port detach %s" % self.port, "Please close port first",60) + self.dut.send_expect("clear port stats %s" % self.port ,"testpmd>",60) self.send_packet(self.port) out = self.dut.send_expect("show port stats %s" % self.port ,"testpmd>",60) packet = re.search("RX-packets:\s*(\d*)",out) sum_packet = packet.group(1) - self.verify(int(sum_packet) == 1, "Insufficient the received package") + self.verify(int(sum_packet) > 0, "Insufficient the received package") self.dut.send_expect("quit","#",60) @@ -147,8 +150,8 @@ class TestPortHotPlug(TestCase): """ Run after each test case. """ - self.dut.send_expect("./usertools/dpdk-devbind.py --bind=igb_uio %s" % self.dut.ports_info[self.port]['pci'],"#",60) self.dut.kill_all() + self.dut.send_expect("./usertools/dpdk-devbind.py --bind=igb_uio %s" % self.dut.ports_info[self.port]['pci'],"#",60) time.sleep(2) -- 2.7.4