[dts][PATCH V1] tests/port_control: optimize the test script to make run stably

Weiyuan Li weiyuanx.li at intel.com
Mon Aug 1 07:27:34 CEST 2022


The case of VF binds PF port to kernel driver, and the next test case
of PF needs to be bound to the dpdk driver, but it does not test failed.
So, add check whether the PF port is bound to the dpdk driver.

Signed-off-by: Weiyuan Li <weiyuanx.li at intel.com>
---
 tests/TestSuite_port_control.py | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/tests/TestSuite_port_control.py b/tests/TestSuite_port_control.py
index d571b01f..7d5b2b7b 100644
--- a/tests/TestSuite_port_control.py
+++ b/tests/TestSuite_port_control.py
@@ -37,6 +37,7 @@ class TestPortControl(TestCase):
         self.socket = self.dut.get_numa_id(self.dut_ports[0])
         port = self.dut.ports_info[0]["port"]
         self.pf_default_driver = port.get_nic_driver()
+        self.driver = self.get_suite_cfg()["vf_driver"]
 
     def set_up(self):
         """
@@ -191,6 +192,14 @@ class TestPortControl(TestCase):
         )
 
     def test_pf_start_stop_reset_close(self):
+        # check PF whether bind to vfio-pci
+        res = self.dut.send_expect("usertools/dpdk-devbind.py -s", "#")
+        pattern = f"({self.dut.nic.pci}).*drv=vfio-pci"
+        regex = re.compile(pattern)
+        mo = regex.search(res)
+        if mo is None:
+            self.bind_nic_driver(self.dut_ports[:1], driver=self.driver)
+
         self.start_testpmd(self.host_testpmd)
         # start port
         self.start_pmd_port(self.host_testpmd)
-- 
2.27.0



More information about the dts mailing list