[dts][PATCH V2] tests/dcf_lifecycle: check the process status

Zhimin Huang zhiminx.huang at intel.com
Thu Feb 16 11:21:32 CET 2023


when the process is not completely killed, the flow rule in dcf will
take effect and cause the test to fail.
so check the process status after kill DCF process.

Signed-off-by: Zhimin Huang <zhiminx.huang at intel.com>
---
v2:
-format the script

 tests/TestSuite_dcf_lifecycle.py | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/tests/TestSuite_dcf_lifecycle.py b/tests/TestSuite_dcf_lifecycle.py
index cd7e1824..d3758c6c 100644
--- a/tests/TestSuite_dcf_lifecycle.py
+++ b/tests/TestSuite_dcf_lifecycle.py
@@ -1295,13 +1295,22 @@ class TestDcfLifeCycle(TestCase):
         # Kill DCF process
         cmd = "ps aux | grep testpmd"
         self.d_a_con(cmd)
-        cmd = (
-            r"kill -9 `ps -ef | grep %s | grep -v grep | grep cap=dcf | awk '{print $2}'`"
+        grep_key = (
+            "grep %s | grep -v grep | grep cap=dcf | awk '{print $2}'"
             % self.vf_dcf_testpmd.split("/")[-1]
         )
+        cmd = r"kill -9 `ps -ef | %s`" % grep_key
         self.d_a_con(cmd)
+        out = self.check_process_status(grep_key)
+        if out:
+            self.logger.warning("the process failed to kill")
         time.sleep(1)
 
+    def check_process_status(self, process_key):
+        cmd = "ps -aux | grep -v grep | {}".format(process_key)
+        out = self.d_a_con(cmd)
+        return out
+
     def create_acl_rule_by_kernel_cmd(self, port_id=0, stats=True):
         # create an ACL rule on PF0 by kernel command
         intf = self.dut.ports_info[port_id]["port"].intf_name
-- 
2.25.1



More information about the dts mailing list