get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/111373/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 111373,
    "url": "https://patches.dpdk.org/api/patches/111373/?format=api",
    "web_url": "https://patches.dpdk.org/project/dts/patch/20220519074337.2815352-1-weix.ling@intel.com/",
    "project": {
        "id": 3,
        "url": "https://patches.dpdk.org/api/projects/3/?format=api",
        "name": "DTS",
        "link_name": "dts",
        "list_id": "dts.dpdk.org",
        "list_email": "dts@dpdk.org",
        "web_url": "",
        "scm_url": "git://dpdk.org/tools/dts",
        "webscm_url": "http://git.dpdk.org/tools/dts/",
        "list_archive_url": "https://inbox.dpdk.org/dts",
        "list_archive_url_format": "https://inbox.dpdk.org/dts/{}",
        "commit_url_format": ""
    },
    "msgid": "<20220519074337.2815352-1-weix.ling@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dts/20220519074337.2815352-1-weix.ling@intel.com",
    "date": "2022-05-19T07:43:37",
    "name": "[V2,2/2] tests/loopback_virtio_user_server_mode: delete CBDMA related testcases and code",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "f875448df442a72e7f5041c84a1fee61d6b42249",
    "submitter": {
        "id": 1828,
        "url": "https://patches.dpdk.org/api/people/1828/?format=api",
        "name": "Ling, WeiX",
        "email": "weix.ling@intel.com"
    },
    "delegate": null,
    "mbox": "https://patches.dpdk.org/project/dts/patch/20220519074337.2815352-1-weix.ling@intel.com/mbox/",
    "series": [
        {
            "id": 23024,
            "url": "https://patches.dpdk.org/api/series/23024/?format=api",
            "web_url": "https://patches.dpdk.org/project/dts/list/?series=23024",
            "date": "2022-05-19T07:43:13",
            "name": "delete CBDMA related testcases and code",
            "version": 2,
            "mbox": "https://patches.dpdk.org/series/23024/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/111373/comments/",
    "check": "warning",
    "checks": "https://patches.dpdk.org/api/patches/111373/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dts-bounces@dpdk.org>",
        "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])\n\tby inbox.dpdk.org (Postfix) with ESMTP id F22D8A0503;\n\tThu, 19 May 2022 09:45:18 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id E992840150;\n\tThu, 19 May 2022 09:45:18 +0200 (CEST)",
            "from mga18.intel.com (mga18.intel.com [134.134.136.126])\n by mails.dpdk.org (Postfix) with ESMTP id 967F14161A\n for <dts@dpdk.org>; Thu, 19 May 2022 09:45:14 +0200 (CEST)",
            "from fmsmga001.fm.intel.com ([10.253.24.23])\n by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 19 May 2022 00:45:01 -0700",
            "from unknown (HELO localhost.localdomain) ([10.239.251.222])\n by fmsmga001-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 19 May 2022 00:44:58 -0700"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple;\n d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n t=1652946315; x=1684482315;\n h=from:to:cc:subject:date:message-id:mime-version:\n content-transfer-encoding;\n bh=gxy+FbDY1taoYzNLl5GD2QMqbT1lH8vHKvRDiwIj7ig=;\n b=l8S9ApzvNijszCWVrU6OKYt1IN1CnXamkH2n84n93cQQZwuHEAx7l93p\n /Lsgv/V4QjHiFxS1mLgEsJLF+N5ujUB0J2yCqgZJVBBlyhgHIqeRot/zO\n LN1Dgfm5Aj4r+cjCg6NHUz6esXwz2tlPM9CzpTKfHjASLBpWan6c0HAhZ\n khTWeUPdJvv8Ry9zHZ40KGCpdq731aJs86kMq4Pcca7JlQVdqTLwePKO5\n MTrbuSqmQ7IWDojq1gAa5oMlTHM3i/Y+oi8b7JCG8rm72llzwNweHVro2\n urzamDpjHD8IT0d6XhzFZqZ6py4paUvr8GCx4Trk0SvviA5Fxl70SbBtg w==;",
        "X-IronPort-AV": [
            "E=McAfee;i=\"6400,9594,10351\"; a=\"254123149\"",
            "E=Sophos;i=\"5.91,237,1647327600\"; d=\"scan'208\";a=\"254123149\"",
            "E=Sophos;i=\"5.91,237,1647327600\"; d=\"scan'208\";a=\"714861248\""
        ],
        "From": "Wei Ling <weix.ling@intel.com>",
        "To": "dts@dpdk.org",
        "Cc": "Wei Ling <weix.ling@intel.com>",
        "Subject": "[dts][PATCH V2 2/2] tests/loopback_virtio_user_server_mode: delete\n CBDMA related testcases and code",
        "Date": "Thu, 19 May 2022 03:43:37 -0400",
        "Message-Id": "<20220519074337.2815352-1-weix.ling@intel.com>",
        "X-Mailer": "git-send-email 2.25.1",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "X-BeenThere": "dts@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "test suite reviews and discussions <dts.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dts>,\n <mailto:dts-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dts/>",
        "List-Post": "<mailto:dts@dpdk.org>",
        "List-Help": "<mailto:dts-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dts>,\n <mailto:dts-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dts-bounces@dpdk.org"
    },
    "content": "Delete CBDMA related testcases and code.\n\nSigned-off-by: Wei Ling <weix.ling@intel.com>\n---\n ...tSuite_loopback_virtio_user_server_mode.py | 784 ++++++------------\n 1 file changed, 254 insertions(+), 530 deletions(-)",
    "diff": "diff --git a/tests/TestSuite_loopback_virtio_user_server_mode.py b/tests/TestSuite_loopback_virtio_user_server_mode.py\nindex a59d34b1..870c7258 100644\n--- a/tests/TestSuite_loopback_virtio_user_server_mode.py\n+++ b/tests/TestSuite_loopback_virtio_user_server_mode.py\n@@ -39,7 +39,6 @@ import copy\n import re\n import time\n \n-import framework.utils as utils\n from framework.packet import Packet\n from framework.pmd_output import PmdOutput\n from framework.test_case import TestCase\n@@ -70,8 +69,13 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         self.testpmd_name = self.path.split(\"/\")[-1]\n         self.app_pdump = self.dut.apps_name[\"pdump\"]\n         self.dump_pcap = \"/root/pdump-rx.pcap\"\n-        self.device_str = \"\"\n-        self.cbdma_dev_infos = []\n+        self.dump_pcap_q0 = \"/root/pdump-rx-q0.pcap\"\n+        self.dump_pcap_q1 = \"/root/pdump-rx-q1.pcap\"\n+\n+        self.vhost_user = self.dut.new_session(suite=\"vhost_user\")\n+        self.virtio_user = self.dut.new_session(suite=\"virtio-user\")\n+        self.vhost_user_pmd = PmdOutput(self.dut, self.vhost_user)\n+        self.virtio_user_pmd = PmdOutput(self.dut, self.virtio_user)\n \n     def set_up(self):\n         \"\"\"\n@@ -90,11 +94,6 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         ]\n         self.result_table_create(self.table_header)\n \n-        self.vhost = self.dut.new_session(suite=\"vhost\")\n-        self.virtio_user = self.dut.new_session(suite=\"virtio-user\")\n-        self.vhost_pmd = PmdOutput(self.dut, self.vhost)\n-        self.virtio_user_pmd = PmdOutput(self.dut, self.virtio_user)\n-\n     def lanuch_vhost_testpmd(self, queue_number=1, nb_cores=1, extern_params=\"\"):\n         \"\"\"\n         start testpmd on vhost\n@@ -105,7 +104,7 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         param = \"--rxq={} --txq={} --nb-cores={} {}\".format(\n             queue_number, queue_number, nb_cores, extern_params\n         )\n-        self.vhost_pmd.start_testpmd(\n+        self.vhost_user_pmd.start_testpmd(\n             self.core_list_host,\n             param=param,\n             no_pci=True,\n@@ -114,7 +113,7 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n             prefix=\"vhost\",\n             fixed_prefix=True,\n         )\n-        self.vhost_pmd.execute_cmd(\"set fwd mac\", \"testpmd> \", 120)\n+        self.vhost_user_pmd.execute_cmd(\"set fwd mac\", \"testpmd> \", 120)\n \n     @property\n     def check_2M_env(self):\n@@ -158,7 +157,7 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         param = \"--rxq={} --txq={} --nb-cores={} {}\".format(\n             self.queue_number, self.queue_number, self.nb_cores, extern_params\n         )\n-        self.vhost_pmd.start_testpmd(\n+        self.vhost_user_pmd.start_testpmd(\n             self.core_list_host,\n             param=param,\n             no_pci=True,\n@@ -168,7 +167,7 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n             fixed_prefix=True,\n         )\n         if set_fwd_mac:\n-            self.vhost_pmd.execute_cmd(\"set fwd mac\", \"testpmd> \", 120)\n+            self.vhost_user_pmd.execute_cmd(\"set fwd mac\", \"testpmd> \", 120)\n \n     def lanuch_virtio_user_testpmd_with_multi_queue(\n         self, mode, extern_params=\"\", set_fwd_mac=True, vectorized_path=False\n@@ -227,36 +226,23 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         session_tx.send_expect(\"start tx_first 1\", \"testpmd> \", 10)\n         session_tx.send_expect(\"stop\", \"testpmd> \", 10)\n \n-    def start_to_send_960_packets_csum(self, session_tx, cbdma=False):\n+    def start_to_send_960_packets_csum(self, session_tx):\n         \"\"\"\n         start the testpmd of vhost-user, start to send 8k packets\n         \"\"\"\n-        if cbdma:\n-            session_tx.send_expect(\"vhost enable tx all\", \"testpmd> \", 10)\n         session_tx.send_expect(\"set fwd csum\", \"testpmd> \", 10)\n         session_tx.send_expect(\"set txpkts 64,128,256,512\", \"testpmd> \", 10)\n         session_tx.send_expect(\"set burst 1\", \"testpmd> \", 10)\n         session_tx.send_expect(\"start tx_first 1\", \"testpmd> \", 3)\n         session_tx.send_expect(\"stop\", \"testpmd> \", 10)\n \n-    def start_to_send_6192_packets_csum_cbdma(self, session_tx):\n-        \"\"\"\n-        start the testpmd of vhost-user, start to send 8k packets\n-        \"\"\"\n-        session_tx.send_expect(\"vhost enable tx all\", \"testpmd> \", 30)\n-        session_tx.send_expect(\"set fwd csum\", \"testpmd> \", 30)\n-        session_tx.send_expect(\"set txpkts 64,64,64,2000,2000,2000\", \"testpmd> \", 30)\n-        session_tx.send_expect(\"set burst 1\", \"testpmd> \", 30)\n-        session_tx.send_expect(\"start tx_first 1\", \"testpmd> \", 5)\n-        session_tx.send_expect(\"stop\", \"testpmd> \", 30)\n-\n     def check_port_throughput_after_port_stop(self):\n         \"\"\"\n         check the throughput after port stop\n         \"\"\"\n         loop = 1\n         while loop <= 5:\n-            out = self.vhost_pmd.execute_cmd(\"show port stats 0\", \"testpmd>\", 60)\n+            out = self.vhost_user_pmd.execute_cmd(\"show port stats 0\", \"testpmd>\", 60)\n             lines = re.search(\"Rx-pps:\\s*(\\d*)\", out)\n             result = lines.group(1)\n             if result == \"0\":\n@@ -273,7 +259,9 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         \"\"\"\n         loop = 1\n         while loop <= 5:\n-            out = self.vhost_pmd.execute_cmd(\"show port info all\", \"testpmd> \", 120)\n+            out = self.vhost_user_pmd.execute_cmd(\n+                \"show port info all\", \"testpmd> \", 120\n+            )\n             port_status = re.findall(\"Link\\s*status:\\s*([a-z]*)\", out)\n             if \"down\" not in port_status:\n                 break\n@@ -292,101 +280,122 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         )\n \n     def port_restart(self):\n-        self.vhost_pmd.execute_cmd(\"stop\", \"testpmd> \", 120)\n-        self.vhost_pmd.execute_cmd(\"port stop 0\", \"testpmd> \", 120)\n+        self.vhost_user_pmd.execute_cmd(\"stop\", \"testpmd> \", 120)\n+        self.vhost_user_pmd.execute_cmd(\"port stop 0\", \"testpmd> \", 120)\n         self.check_port_throughput_after_port_stop()\n-        self.vhost_pmd.execute_cmd(\"clear port stats all\", \"testpmd> \", 120)\n-        self.vhost_pmd.execute_cmd(\"port start 0\", \"testpmd> \", 120)\n+        self.vhost_user_pmd.execute_cmd(\"clear port stats all\", \"testpmd> \", 120)\n+        self.vhost_user_pmd.execute_cmd(\"port start 0\", \"testpmd> \", 120)\n         self.check_port_link_status_after_port_restart()\n-        self.vhost_pmd.execute_cmd(\"start tx_first 32\", \"testpmd> \", 120)\n+        self.vhost_user_pmd.execute_cmd(\"start tx_first 32\", \"testpmd> \", 120)\n \n     def port_restart_send_8k_packets(self):\n-        self.vhost_pmd.execute_cmd(\"stop\", \"testpmd> \", 120)\n-        self.vhost_pmd.execute_cmd(\"port stop 0\", \"testpmd> \", 120)\n+        self.vhost_user_pmd.execute_cmd(\"stop\", \"testpmd> \", 120)\n+        self.vhost_user_pmd.execute_cmd(\"port stop 0\", \"testpmd> \", 120)\n         self.check_port_throughput_after_port_stop()\n-        self.vhost_pmd.execute_cmd(\"clear port stats all\", \"testpmd> \", 120)\n-        self.vhost_pmd.execute_cmd(\"port start 0\", \"testpmd> \", 120)\n+        self.vhost_user_pmd.execute_cmd(\"clear port stats all\", \"testpmd> \", 120)\n+        self.vhost_user_pmd.execute_cmd(\"port start 0\", \"testpmd> \", 120)\n         self.check_port_link_status_after_port_restart()\n-        self.vhost_pmd.execute_cmd(\"set txpkts 2000,2000,2000,2000\", \"testpmd> \", 120)\n-        self.vhost_pmd.execute_cmd(\"start tx_first 32\", \"testpmd> \", 120)\n+        self.vhost_user_pmd.execute_cmd(\n+            \"set txpkts 2000,2000,2000,2000\", \"testpmd> \", 120\n+        )\n+        self.vhost_user_pmd.execute_cmd(\"start tx_first 32\", \"testpmd> \", 120)\n \n-    def launch_pdump_to_capture_pkt(self, dump_port):\n+    def launch_pdump_to_capture_pkt(self, multi_queue=False):\n         \"\"\"\n         bootup pdump in dut\n         \"\"\"\n         self.pdump_session = self.dut.new_session(suite=\"pdump\")\n-        cmd = (\n-            self.app_pdump\n-            + \" \"\n-            + \"-v --file-prefix=virtio -- \"\n-            + \"--pdump  'device_id=%s,queue=*,rx-dev=%s,mbuf-size=8000'\"\n-        )\n-        self.pdump_session.send_expect(cmd % (dump_port, self.dump_pcap), \"Port\")\n+        if not multi_queue:\n+            cmd = (\n+                self.app_pdump\n+                + \" \"\n+                + \"-v --file-prefix=virtio -- \"\n+                + \"--pdump  'device_id=net_virtio_user0,queue=*,rx-dev=%s,mbuf-size=8000'\"\n+            )\n+            self.pdump_session.send_expect(cmd % (self.dump_pcap), \"Port\")\n+        else:\n+            cmd = (\n+                self.app_pdump\n+                + \" \"\n+                + \"-v --file-prefix=virtio -- \"\n+                + \"--pdump  'device_id=net_virtio_user0,queue=0,rx-dev=%s,mbuf-size=8000' \"\n+                + \"--pdump  'device_id=net_virtio_user0,queue=1,rx-dev=%s,mbuf-size=8000'\"\n+            )\n+            self.pdump_session.send_expect(\n+                cmd % (self.dump_pcap_q0, self.dump_pcap_q1), \"Port\"\n+            )\n \n-    def check_packet_payload_valid(self, pkt_len):\n+    def check_packet_payload_valid(self, pkt_len, multi_queue=False):\n         \"\"\"\n         check the payload is valid\n         \"\"\"\n         self.pdump_session.send_expect(\"^c\", \"# \", 60)\n         time.sleep(3)\n-        self.dut.session.copy_file_from(\n-            src=\"%s\" % self.dump_pcap, dst=\"%s\" % self.dump_pcap\n-        )\n-        pkt = Packet()\n-        pkts = pkt.read_pcapfile(self.dump_pcap)\n-        expect_data = str(pkts[0][\"Raw\"])\n-\n-        for i in range(len(pkts)):\n-            self.verify(\n-                len(pkts[i]) == pkt_len,\n-                \"virtio-user0 receive packet's length not equal %s Byte\" % pkt_len,\n+        if not multi_queue:\n+            self.dut.session.copy_file_from(\n+                src=\"%s\" % self.dump_pcap, dst=\"%s\" % self.dump_pcap\n             )\n-            check_data = str(pkts[i][\"Raw\"])\n-            self.verify(\n-                check_data == expect_data,\n-                \"the payload in receive packets has been changed from %s\" % i,\n-            )\n-        self.dut.send_expect(\"rm -rf %s\" % self.dump_pcap, \"#\")\n-\n-    def relanuch_vhost_testpmd_send_packets(\n-        self, extern_params, cbdma=False, iova=\"va\"\n-    ):\n+            pkt = Packet()\n+            pkts = pkt.read_pcapfile(self.dump_pcap)\n+            expect_data = str(pkts[0][\"Raw\"])\n+\n+            for i in range(len(pkts)):\n+                self.verify(\n+                    len(pkts[i]) == pkt_len,\n+                    \"virtio-user0 receive packet's length not equal %s Byte\" % pkt_len,\n+                )\n+                check_data = str(pkts[i][\"Raw\"])\n+                self.verify(\n+                    check_data == expect_data,\n+                    \"the payload in receive packets has been changed from %s\" % i,\n+                )\n \n-        self.vhost_pmd.execute_cmd(\"quit\", \"#\", 60)\n-        self.logger.info(\"now reconnet from vhost\")\n-        if cbdma:\n-            self.lanuch_vhost_testpmd_with_cbdma(extern_params=extern_params, iova=iova)\n         else:\n-            self.lanuch_vhost_testpmd_with_multi_queue(\n-                extern_params=extern_params, set_fwd_mac=False\n-            )\n-        self.launch_pdump_to_capture_pkt(self.vuser0_port)\n-        if cbdma:\n-            self.start_to_send_6192_packets_csum_cbdma(self.vhost)\n-        else:\n-            self.start_to_send_8k_packets_csum(self.vhost)\n-        self.check_packet_payload_valid(self.pkt_len)\n+            for pacp in [self.dump_pcap_q0, self.dump_pcap_q1]:\n+                self.dut.session.copy_file_from(src=\"%s\" % pacp, dst=\"%s\" % pacp)\n+                pkt = Packet()\n+                pkts = pkt.read_pcapfile(pacp)\n+                expect_data = str(pkts[0][\"Raw\"])\n+\n+                for i in range(len(pkts)):\n+                    self.verify(\n+                        len(pkts[i]) == pkt_len,\n+                        \"virtio-user0 receive packet's length not equal %s Byte\"\n+                        % pkt_len,\n+                    )\n+                    check_data = str(pkts[i][\"Raw\"])\n+                    self.verify(\n+                        check_data == expect_data,\n+                        \"the payload in receive packets has been changed from %s\" % i,\n+                    )\n+\n+    def relanuch_vhost_testpmd_send_packets(self, extern_params):\n+\n+        self.vhost_user_pmd.execute_cmd(\"stop\")\n+        self.vhost_user_pmd.execute_cmd(\"quit\", \"#\", 60)\n+        self.logger.info(\"now reconnet from vhost\")\n+        self.lanuch_vhost_testpmd_with_multi_queue(\n+            extern_params=extern_params, set_fwd_mac=False\n+        )\n+        self.launch_pdump_to_capture_pkt(multi_queue=True)\n+        self.start_to_send_8k_packets_csum(self.vhost_user)\n+        self.check_packet_payload_valid(self.pkt_len, multi_queue=True)\n \n-    def relanuch_vhost_testpmd_send_960_packets(\n-        self, extern_params, cbdma=False, iova=\"va\"\n-    ):\n+    def relanuch_vhost_testpmd_send_960_packets(self, extern_params):\n \n-        self.vhost_pmd.execute_cmd(\"quit\", \"#\", 60)\n+        self.vhost_user_pmd.execute_cmd(\"stop\")\n+        self.vhost_user_pmd.execute_cmd(\"quit\", \"#\", 60)\n         self.logger.info(\"now reconnet from vhost\")\n-        if cbdma:\n-            self.lanuch_vhost_testpmd_with_cbdma(extern_params=extern_params, iova=iova)\n-        else:\n-            self.lanuch_vhost_testpmd_with_multi_queue(\n-                extern_params=extern_params, set_fwd_mac=False\n-            )\n-        self.launch_pdump_to_capture_pkt(self.vuser0_port)\n-        self.start_to_send_960_packets_csum(self.vhost, cbdma=cbdma)\n-        self.check_packet_payload_valid(pkt_len=960)\n+        self.lanuch_vhost_testpmd_with_multi_queue(\n+            extern_params=extern_params, set_fwd_mac=False\n+        )\n+        self.launch_pdump_to_capture_pkt(multi_queue=True)\n+        self.start_to_send_960_packets_csum(self.vhost_user)\n+        self.check_packet_payload_valid(pkt_len=960, multi_queue=True)\n \n-    def relanuch_virtio_testpmd_with_multi_path(\n-        self, mode, case_info, extern_params, cbdma=False, iova=\"va\"\n-    ):\n+    def relanuch_virtio_testpmd_with_multi_path(self, mode, case_info, extern_params):\n \n+        self.virtio_user_pmd.execute_cmd(\"stop\")\n         self.virtio_user_pmd.execute_cmd(\"quit\", \"#\", 60)\n         self.logger.info(case_info)\n         self.lanuch_virtio_user_testpmd_with_multi_queue(\n@@ -394,25 +403,20 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         )\n         self.virtio_user_pmd.execute_cmd(\"set fwd csum\")\n         self.virtio_user_pmd.execute_cmd(\"start\")\n-        self.launch_pdump_to_capture_pkt(self.vuser0_port)\n-        if cbdma:\n-            self.start_to_send_6192_packets_csum_cbdma(self.vhost)\n-        else:\n-            self.start_to_send_8k_packets_csum(self.vhost)\n-        self.check_packet_payload_valid(self.pkt_len)\n+        self.launch_pdump_to_capture_pkt(multi_queue=True)\n+        self.start_to_send_8k_packets_csum(self.vhost_user)\n+        self.check_packet_payload_valid(self.pkt_len, multi_queue=True)\n \n-        self.relanuch_vhost_testpmd_send_packets(extern_params, cbdma, iova=iova)\n+        self.relanuch_vhost_testpmd_send_packets(extern_params)\n \n     def relanuch_virtio_testpmd_with_non_mergeable_path(\n         self,\n         mode,\n         case_info,\n         extern_params,\n-        cbdma=False,\n-        iova=\"va\",\n         vectorized_path=False,\n     ):\n-\n+        self.virtio_user_pmd.execute_cmd(\"stop\")\n         self.virtio_user_pmd.execute_cmd(\"quit\", \"#\", 60)\n         self.logger.info(case_info)\n         self.lanuch_virtio_user_testpmd_with_multi_queue(\n@@ -423,21 +427,29 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         )\n         self.virtio_user_pmd.execute_cmd(\"set fwd csum\")\n         self.virtio_user_pmd.execute_cmd(\"start\")\n-        self.launch_pdump_to_capture_pkt(self.vuser0_port)\n+        self.launch_pdump_to_capture_pkt(multi_queue=True)\n \n-        self.start_to_send_960_packets_csum(self.vhost, cbdma=cbdma)\n-        self.check_packet_payload_valid(pkt_len=960)\n+        self.start_to_send_960_packets_csum(\n+            self.vhost_user,\n+        )\n+        self.check_packet_payload_valid(pkt_len=960, multi_queue=True)\n \n-        self.relanuch_vhost_testpmd_send_960_packets(extern_params, cbdma, iova=iova)\n+        self.relanuch_vhost_testpmd_send_960_packets(extern_params)\n \n     def relanuch_vhost_testpmd_with_multi_queue(self):\n-        self.vhost_pmd.execute_cmd(\"quit\", \"#\", 60)\n+        self.vhost_user_pmd.execute_cmd(\n+            \"stop\",\n+        )\n+        self.vhost_user_pmd.execute_cmd(\"quit\", \"#\", 60)\n         self.check_link_status(self.virtio_user, \"down\")\n         self.lanuch_vhost_testpmd_with_multi_queue()\n \n     def relanuch_virtio_testpmd_with_multi_queue(self, mode, extern_params=\"\"):\n+        self.virtio_user_pmd.execute_cmd(\n+            \"stop\",\n+        )\n         self.virtio_user_pmd.execute_cmd(\"quit\", \"#\", 60)\n-        self.check_link_status(self.vhost, \"down\")\n+        self.check_link_status(self.vhost_user, \"down\")\n         self.lanuch_virtio_user_testpmd_with_multi_queue(mode, extern_params)\n \n     def calculate_avg_throughput(self, case_info, cycle, Pkt_size=True):\n@@ -446,9 +458,9 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         \"\"\"\n         results = 0.0\n         results_row = []\n-        self.vhost_pmd.execute_cmd(\"show port stats all\", \"testpmd>\", 60)\n+        self.vhost_user_pmd.execute_cmd(\"show port stats all\", \"testpmd>\", 60)\n         for i in range(10):\n-            out = self.vhost_pmd.execute_cmd(\"show port stats all\", \"testpmd>\", 60)\n+            out = self.vhost_user_pmd.execute_cmd(\"show port stats all\", \"testpmd>\", 60)\n             time.sleep(1)\n             lines = re.search(\"Rx-pps:\\s*(\\d*)\", out)\n             result = lines.group(1)\n@@ -472,7 +484,7 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         \"\"\"\n         check all the queue has receive packets\n         \"\"\"\n-        out = self.vhost_pmd.execute_cmd(\"stop\", \"testpmd> \", 60)\n+        out = self.vhost_user_pmd.execute_cmd(\"stop\", \"testpmd> \", 60)\n         for queue_index in range(0, self.queue_number):\n             queue = \"Queue= %d\" % queue_index\n             index = out.find(queue)\n@@ -490,24 +502,24 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         \"\"\"\n         close testpmd about vhost-user and virtio-user\n         \"\"\"\n-        self.vhost_pmd.execute_cmd(\"quit\", \"#\", 60)\n         self.virtio_user_pmd.execute_cmd(\"quit\", \"#\", 60)\n+        self.vhost_user_pmd.execute_cmd(\"quit\", \"#\", 60)\n \n     def close_all_session(self):\n         \"\"\"\n         close session of vhost-user and virtio-user\n         \"\"\"\n-        self.dut.close_session(self.vhost)\n         self.dut.close_session(self.virtio_user)\n+        self.dut.close_session(self.vhost_user)\n \n-    def test_server_mode_launch_virtio_first(self):\n+    def test_server_mode_launch_virtio11_first(self):\n         \"\"\"\n-        Test Case 2: basic test for split ring server mode, launch virtio-user first\n+        Test Case 1: basic test for packed ring server mode, launch virtio-user first\n         \"\"\"\n         self.queue_number = 1\n         self.nb_cores = 1\n         virtio_pmd_arg = {\n-            \"version\": \"packed_vq=0,in_order=0,mrg_rxbuf=1\",\n+            \"version\": \"packed_vq=1,in_order=0,mrg_rxbuf=1\",\n             \"path\": \"--tx-offloads=0x0 --enable-hw-vlan-strip\",\n         }\n         self.lanuch_virtio_user_testpmd(\n@@ -517,19 +529,19 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         )\n         self.lanuch_vhost_testpmd()\n         self.virtio_user_pmd.execute_cmd(\"set fwd mac\", \"testpmd> \", 120)\n-        self.start_to_send_packets(self.virtio_user, self.vhost)\n+        self.start_to_send_packets(self.virtio_user, self.vhost_user)\n         self.calculate_avg_throughput(\"lanuch virtio first\", \"\")\n         self.result_table_print()\n         self.close_all_testpmd()\n \n-    def test_server_mode_launch_virtio11_first(self):\n+    def test_server_mode_launch_virtio_first(self):\n         \"\"\"\n-        Test Case 1: basic test for packed ring server mode, launch virtio-user first\n+        Test Case 2: basic test for split ring server mode, launch virtio-user first\n         \"\"\"\n         self.queue_number = 1\n         self.nb_cores = 1\n         virtio_pmd_arg = {\n-            \"version\": \"packed_vq=1,in_order=0,mrg_rxbuf=1\",\n+            \"version\": \"packed_vq=0,in_order=0,mrg_rxbuf=1\",\n             \"path\": \"--tx-offloads=0x0 --enable-hw-vlan-strip\",\n         }\n         self.lanuch_virtio_user_testpmd(\n@@ -539,31 +551,31 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         )\n         self.lanuch_vhost_testpmd()\n         self.virtio_user_pmd.execute_cmd(\"set fwd mac\", \"testpmd> \", 120)\n-        self.start_to_send_packets(self.virtio_user, self.vhost)\n+        self.start_to_send_packets(self.virtio_user, self.vhost_user)\n         self.calculate_avg_throughput(\"lanuch virtio first\", \"\")\n         self.result_table_print()\n         self.close_all_testpmd()\n \n-    def test_server_mode_reconnect_with_virtio11_mergeable_path(self):\n+    def test_server_mode_reconnect_with_virtio10_mergeable_path(self):\n         \"\"\"\n-        Test Case 8: reconnect test with virtio 1.1 mergeable path and server mode\n+        Test Case 3: reconnect test with virtio 1.0 mergeable path and server mode\n         \"\"\"\n-        self.queue_number = 2\n+        self.queue_number = 8\n         self.nb_cores = 2\n-        case_info = \"virtio1.1 mergeable path\"\n-        mode = \"packed_vq=1,in_order=0,mrg_rxbuf=1\"\n+        case_info = \"virtio1.0 mergeable path\"\n+        mode = \"in_order=0,mrg_rxbuf=1\"\n         extern_params = \"--tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip\"\n         self.lanuch_vhost_testpmd_with_multi_queue()\n         self.lanuch_virtio_user_testpmd_with_multi_queue(\n             mode=mode, extern_params=extern_params\n         )\n-        self.start_to_send_8k_packets(self.vhost, self.virtio_user)\n+        self.start_to_send_8k_packets(self.vhost_user, self.virtio_user)\n         self.calculate_avg_throughput(case_info, \"before reconnet\", Pkt_size=False)\n \n-        # reconnect from vhost\n+        # reconnet from vhost\n         self.logger.info(\"now reconnet from vhost\")\n         self.relanuch_vhost_testpmd_with_multi_queue()\n-        self.start_to_send_8k_packets(self.virtio_user, self.vhost)\n+        self.start_to_send_8k_packets(self.virtio_user, self.vhost_user)\n         self.calculate_avg_throughput(case_info, \"reconnet from vhost\", Pkt_size=False)\n \n         # reconnet from virtio\n@@ -571,9 +583,9 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         self.relanuch_virtio_testpmd_with_multi_queue(\n             mode=mode, extern_params=extern_params\n         )\n-        self.start_to_send_8k_packets(self.vhost, self.virtio_user)\n+        self.start_to_send_8k_packets(self.vhost_user, self.virtio_user)\n         self.calculate_avg_throughput(\n-            case_info, \"reconnet from virtio user\", Pkt_size=False\n+            case_info, \"reconnet from virtio_user\", Pkt_size=False\n         )\n \n         # port restart\n@@ -585,106 +597,106 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         self.check_packets_of_each_queue()\n         self.close_all_testpmd()\n \n-    def test_server_mode_reconnect_with_virtio11_non_mergeable_path(self):\n+    def test_server_mode_reconnect_with_virtio10_inorder_mergeable_path(self):\n         \"\"\"\n-        Test Case 9: reconnect test with virtio 1.1 non_mergeable path and server mode\n+        Test Case 4: reconnect test with virtio 1.0 inorder mergeable path and server mode\n         \"\"\"\n         self.queue_number = 2\n         self.nb_cores = 2\n-        case_info = \"virtio1.1 non_mergeable path\"\n-        mode = \"packed_vq=1,in_order=0,mrg_rxbuf=0\"\n+        case_info = \"virtio1.0 inorder mergeable path\"\n+        mode = \"in_order=1,mrg_rxbuf=1\"\n         extern_params = \"--tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip\"\n         self.lanuch_vhost_testpmd_with_multi_queue()\n         self.lanuch_virtio_user_testpmd_with_multi_queue(\n             mode=mode, extern_params=extern_params\n         )\n-        self.start_to_send_packets(self.vhost, self.virtio_user)\n-        self.calculate_avg_throughput(case_info, \"before reconnet\")\n+        self.start_to_send_8k_packets(self.vhost_user, self.virtio_user)\n+        self.calculate_avg_throughput(case_info, \"before reconnet\", Pkt_size=False)\n \n-        # reconnect from vhost\n+        # reconnet from vhost\n         self.logger.info(\"now reconnet from vhost\")\n         self.relanuch_vhost_testpmd_with_multi_queue()\n-        self.start_to_send_packets(self.virtio_user, self.vhost)\n-        self.calculate_avg_throughput(case_info, \"reconnet from vhost\")\n+        self.start_to_send_8k_packets(self.virtio_user, self.vhost_user)\n+        self.calculate_avg_throughput(case_info, \"reconnet from vhost\", Pkt_size=False)\n \n         # reconnet from virtio\n         self.logger.info(\"now reconnet from virtio_user\")\n         self.relanuch_virtio_testpmd_with_multi_queue(\n             mode=mode, extern_params=extern_params\n         )\n-        self.start_to_send_packets(self.vhost, self.virtio_user)\n-        self.calculate_avg_throughput(case_info, \"reconnet from virtio_user\")\n+        self.start_to_send_8k_packets(self.vhost_user, self.virtio_user)\n+        self.calculate_avg_throughput(\n+            case_info, \"reconnet from virtio_user\", Pkt_size=False\n+        )\n \n         # port restart\n         self.logger.info(\"now vhost port restart\")\n-        self.port_restart()\n-        self.calculate_avg_throughput(case_info, \"after port restart\")\n+        self.port_restart_send_8k_packets()\n+        self.calculate_avg_throughput(case_info, \"after port restart\", Pkt_size=False)\n \n         self.result_table_print()\n         self.check_packets_of_each_queue()\n         self.close_all_testpmd()\n \n-    def test_server_mode_reconnect_with_virtio11_inorder_mergeable_path(self):\n+    def test_server_mode_reconnect_with_virtio10_inorder_non_mergeable_path(self):\n         \"\"\"\n-        Test Case 10: reconnect test with virtio 1.1 inorder mergeable path and server mode\n+        Test Case 5: reconnect test with virtio 1.0 inorder non_mergeable path and server mode\n         \"\"\"\n-        self.queue_number = 8\n+        self.queue_number = 2\n         self.nb_cores = 2\n-        case_info = \"virtio1.1 inorder mergeable path\"\n-        mode = \"packed_vq=1,in_order=1,mrg_rxbuf=1\"\n+        case_info = \"virtio1.0 inorder non_mergeable path\"\n+        mode = \"in_order=1,mrg_rxbuf=0\"\n         extern_params = \"--tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip\"\n         self.lanuch_vhost_testpmd_with_multi_queue()\n         self.lanuch_virtio_user_testpmd_with_multi_queue(\n             mode=mode, extern_params=extern_params\n         )\n-        self.start_to_send_8k_packets(self.vhost, self.virtio_user)\n-        self.calculate_avg_throughput(case_info, \"before reconnet\", Pkt_size=False)\n+        self.start_to_send_packets(self.vhost_user, self.virtio_user)\n+        self.calculate_avg_throughput(case_info, \"before reconnet\")\n \n-        # reconnect from vhost\n+        # reconnet from vhost\n         self.logger.info(\"now reconnet from vhost\")\n         self.relanuch_vhost_testpmd_with_multi_queue()\n-        self.start_to_send_8k_packets(self.virtio_user, self.vhost)\n-        self.calculate_avg_throughput(case_info, \"reconnet from vhost\", Pkt_size=False)\n+        self.start_to_send_packets(self.virtio_user, self.vhost_user)\n+        self.calculate_avg_throughput(case_info, \"reconnet from vhost\")\n \n         # reconnet from virtio\n         self.logger.info(\"now reconnet from virtio_user\")\n         self.relanuch_virtio_testpmd_with_multi_queue(\n             mode=mode, extern_params=extern_params\n         )\n-        self.start_to_send_8k_packets(self.vhost, self.virtio_user)\n-        self.calculate_avg_throughput(\n-            case_info, \"reconnet from virtio user\", Pkt_size=False\n-        )\n+        self.start_to_send_packets(self.vhost_user, self.virtio_user)\n+        self.calculate_avg_throughput(case_info, \"reconnet from virtio_user\")\n \n         # port restart\n         self.logger.info(\"now vhost port restart\")\n-        self.port_restart_send_8k_packets()\n-        self.calculate_avg_throughput(case_info, \"after port restart\", Pkt_size=False)\n+        self.port_restart()\n+        self.calculate_avg_throughput(case_info, \"after port restart\")\n \n         self.result_table_print()\n         self.check_packets_of_each_queue()\n         self.close_all_testpmd()\n \n-    def test_server_mode_reconnect_with_virtio11_inorder_non_mergeable_path(self):\n+    def test_server_mode_reconnect_with_virtio10_non_mergeable_path(self):\n         \"\"\"\n-        Test Case 11: reconnect test with virtio 1.1 inorder non_mergeable path and server mode\n+        Test Case 6: reconnect test with virtio 1.0 non_mergeable path and server mode\n         \"\"\"\n         self.queue_number = 2\n         self.nb_cores = 2\n-        case_info = \"virtio1.1 inorder non_mergeable path\"\n-        mode = \"packed_vq=1,in_order=1,mrg_rxbuf=0,vectorized=1\"\n-        extern_params = \"--rx-offloads=0x10 --enable-hw-vlan-strip --rss-ip\"\n+        case_info = \"virtio1.0 non_mergeable path\"\n+        mode = \"in_order=0,mrg_rxbuf=0,vectorized=1\"\n+        extern_params = \"--tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip\"\n         self.lanuch_vhost_testpmd_with_multi_queue()\n         self.lanuch_virtio_user_testpmd_with_multi_queue(\n             mode=mode, extern_params=extern_params\n         )\n-        self.start_to_send_packets(self.vhost, self.virtio_user)\n+        self.start_to_send_packets(self.vhost_user, self.virtio_user)\n         self.calculate_avg_throughput(case_info, \"before reconnet\")\n \n-        # reconnect from vhost\n+        # reconnet from vhost\n         self.logger.info(\"now reconnet from vhost\")\n         self.relanuch_vhost_testpmd_with_multi_queue()\n-        self.start_to_send_packets(self.virtio_user, self.vhost)\n+        self.start_to_send_packets(self.virtio_user, self.vhost_user)\n         self.calculate_avg_throughput(case_info, \"reconnet from vhost\")\n \n         # reconnet from virtio\n@@ -692,7 +704,7 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         self.relanuch_virtio_testpmd_with_multi_queue(\n             mode=mode, extern_params=extern_params\n         )\n-        self.start_to_send_packets(self.vhost, self.virtio_user)\n+        self.start_to_send_packets(self.vhost_user, self.virtio_user)\n         self.calculate_avg_throughput(case_info, \"reconnet from virtio_user\")\n \n         # port restart\n@@ -704,34 +716,29 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         self.check_packets_of_each_queue()\n         self.close_all_testpmd()\n \n-    def test_server_mode_reconnect_with_virtio11_inorder_vectorized_path(self):\n+    def test_server_mode_reconnect_with_virtio10_vector_rx_path(self):\n         \"\"\"\n-        Test Case 12: reconnect test with virtio 1.1 inorder vectorized path and server mode\n+        Test Case 7: reconnect test with virtio 1.0 vector_rx path and server mode\n         \"\"\"\n         self.queue_number = 2\n         self.nb_cores = 2\n-        case_info = \"virtio1.1 inorder vectorized path\"\n-        mode = \"packed_vq=1,in_order=1,mrg_rxbuf=0,vectorized=1\"\n-        extern_params = \"--tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip\"\n+        case_info = \"virtio1.0 vector_rx path\"\n+        mode = \"in_order=0,mrg_rxbuf=0,vectorized=1\"\n         self.lanuch_vhost_testpmd_with_multi_queue()\n-        self.lanuch_virtio_user_testpmd_with_multi_queue(\n-            mode=mode, extern_params=extern_params\n-        )\n-        self.start_to_send_packets(self.vhost, self.virtio_user)\n+        self.lanuch_virtio_user_testpmd_with_multi_queue(mode=mode)\n+        self.start_to_send_packets(self.vhost_user, self.virtio_user)\n         self.calculate_avg_throughput(case_info, \"before reconnet\")\n \n-        # reconnect from vhost\n+        # reconnet from vhost\n         self.logger.info(\"now reconnet from vhost\")\n         self.relanuch_vhost_testpmd_with_multi_queue()\n-        self.start_to_send_packets(self.virtio_user, self.vhost)\n+        self.start_to_send_packets(self.virtio_user, self.vhost_user)\n         self.calculate_avg_throughput(case_info, \"reconnet from vhost\")\n \n         # reconnet from virtio\n         self.logger.info(\"now reconnet from virtio_user\")\n-        self.relanuch_virtio_testpmd_with_multi_queue(\n-            mode=mode, extern_params=extern_params\n-        )\n-        self.start_to_send_packets(self.vhost, self.virtio_user)\n+        self.relanuch_virtio_testpmd_with_multi_queue(mode=mode)\n+        self.start_to_send_packets(self.vhost_user, self.virtio_user)\n         self.calculate_avg_throughput(case_info, \"reconnet from virtio_user\")\n \n         # port restart\n@@ -743,26 +750,26 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         self.check_packets_of_each_queue()\n         self.close_all_testpmd()\n \n-    def test_server_mode_reconnect_with_virtio10_inorder_mergeable_path(self):\n+    def test_server_mode_reconnect_with_virtio11_mergeable_path(self):\n         \"\"\"\n-        Test Case 4: reconnect test with virtio 1.0 inorder mergeable path and server mode\n+        Test Case 8: reconnect test with virtio 1.1 mergeable path and server mode\n         \"\"\"\n         self.queue_number = 2\n         self.nb_cores = 2\n-        case_info = \"virtio1.0 inorder mergeable path\"\n-        mode = \"in_order=1,mrg_rxbuf=1\"\n+        case_info = \"virtio1.1 mergeable path\"\n+        mode = \"packed_vq=1,in_order=0,mrg_rxbuf=1\"\n         extern_params = \"--tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip\"\n         self.lanuch_vhost_testpmd_with_multi_queue()\n         self.lanuch_virtio_user_testpmd_with_multi_queue(\n             mode=mode, extern_params=extern_params\n         )\n-        self.start_to_send_8k_packets(self.vhost, self.virtio_user)\n+        self.start_to_send_8k_packets(self.vhost_user, self.virtio_user)\n         self.calculate_avg_throughput(case_info, \"before reconnet\", Pkt_size=False)\n \n-        # reconnet from vhost\n+        # reconnect from vhost\n         self.logger.info(\"now reconnet from vhost\")\n         self.relanuch_vhost_testpmd_with_multi_queue()\n-        self.start_to_send_8k_packets(self.virtio_user, self.vhost)\n+        self.start_to_send_8k_packets(self.virtio_user, self.vhost_user)\n         self.calculate_avg_throughput(case_info, \"reconnet from vhost\", Pkt_size=False)\n \n         # reconnet from virtio\n@@ -770,9 +777,9 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         self.relanuch_virtio_testpmd_with_multi_queue(\n             mode=mode, extern_params=extern_params\n         )\n-        self.start_to_send_8k_packets(self.vhost, self.virtio_user)\n+        self.start_to_send_8k_packets(self.vhost_user, self.virtio_user)\n         self.calculate_avg_throughput(\n-            case_info, \"reconnet from virtio_user\", Pkt_size=False\n+            case_info, \"reconnet from virtio user\", Pkt_size=False\n         )\n \n         # port restart\n@@ -784,26 +791,26 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         self.check_packets_of_each_queue()\n         self.close_all_testpmd()\n \n-    def test_server_mode_reconnect_with_virtio10_inorder_non_mergeable_path(self):\n+    def test_server_mode_reconnect_with_virtio11_non_mergeable_path(self):\n         \"\"\"\n-        Test Case 5: reconnect test with virtio 1.0 inorder non_mergeable path and server mode\n+        Test Case 9: reconnect test with virtio 1.1 non_mergeable path and server mode\n         \"\"\"\n         self.queue_number = 2\n         self.nb_cores = 2\n-        case_info = \"virtio1.0 inorder non_mergeable path\"\n-        mode = \"in_order=1,mrg_rxbuf=0\"\n+        case_info = \"virtio1.1 non_mergeable path\"\n+        mode = \"packed_vq=1,in_order=0,mrg_rxbuf=0\"\n         extern_params = \"--tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip\"\n         self.lanuch_vhost_testpmd_with_multi_queue()\n         self.lanuch_virtio_user_testpmd_with_multi_queue(\n             mode=mode, extern_params=extern_params\n         )\n-        self.start_to_send_packets(self.vhost, self.virtio_user)\n+        self.start_to_send_packets(self.vhost_user, self.virtio_user)\n         self.calculate_avg_throughput(case_info, \"before reconnet\")\n \n-        # reconnet from vhost\n+        # reconnect from vhost\n         self.logger.info(\"now reconnet from vhost\")\n         self.relanuch_vhost_testpmd_with_multi_queue()\n-        self.start_to_send_packets(self.virtio_user, self.vhost)\n+        self.start_to_send_packets(self.virtio_user, self.vhost_user)\n         self.calculate_avg_throughput(case_info, \"reconnet from vhost\")\n \n         # reconnet from virtio\n@@ -811,7 +818,7 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         self.relanuch_virtio_testpmd_with_multi_queue(\n             mode=mode, extern_params=extern_params\n         )\n-        self.start_to_send_packets(self.vhost, self.virtio_user)\n+        self.start_to_send_packets(self.vhost_user, self.virtio_user)\n         self.calculate_avg_throughput(case_info, \"reconnet from virtio_user\")\n \n         # port restart\n@@ -823,26 +830,26 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         self.check_packets_of_each_queue()\n         self.close_all_testpmd()\n \n-    def test_server_mode_reconnect_with_virtio10_mergeable_path(self):\n+    def test_server_mode_reconnect_with_virtio11_inorder_mergeable_path(self):\n         \"\"\"\n-        Test Case 3: reconnect test with virtio 1.0 mergeable path and server mode\n+        Test Case 10: reconnect test with virtio 1.1 inorder mergeable path and server mode\n         \"\"\"\n         self.queue_number = 8\n         self.nb_cores = 2\n-        case_info = \"virtio1.0 mergeable path\"\n-        mode = \"in_order=0,mrg_rxbuf=1\"\n+        case_info = \"virtio1.1 inorder mergeable path\"\n+        mode = \"packed_vq=1,in_order=1,mrg_rxbuf=1\"\n         extern_params = \"--tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip\"\n         self.lanuch_vhost_testpmd_with_multi_queue()\n         self.lanuch_virtio_user_testpmd_with_multi_queue(\n             mode=mode, extern_params=extern_params\n         )\n-        self.start_to_send_8k_packets(self.vhost, self.virtio_user)\n+        self.start_to_send_8k_packets(self.vhost_user, self.virtio_user)\n         self.calculate_avg_throughput(case_info, \"before reconnet\", Pkt_size=False)\n \n-        # reconnet from vhost\n+        # reconnect from vhost\n         self.logger.info(\"now reconnet from vhost\")\n         self.relanuch_vhost_testpmd_with_multi_queue()\n-        self.start_to_send_8k_packets(self.virtio_user, self.vhost)\n+        self.start_to_send_8k_packets(self.virtio_user, self.vhost_user)\n         self.calculate_avg_throughput(case_info, \"reconnet from vhost\", Pkt_size=False)\n \n         # reconnet from virtio\n@@ -850,9 +857,9 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         self.relanuch_virtio_testpmd_with_multi_queue(\n             mode=mode, extern_params=extern_params\n         )\n-        self.start_to_send_8k_packets(self.vhost, self.virtio_user)\n+        self.start_to_send_8k_packets(self.vhost_user, self.virtio_user)\n         self.calculate_avg_throughput(\n-            case_info, \"reconnet from virtio_user\", Pkt_size=False\n+            case_info, \"reconnet from virtio user\", Pkt_size=False\n         )\n \n         # port restart\n@@ -864,26 +871,26 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         self.check_packets_of_each_queue()\n         self.close_all_testpmd()\n \n-    def test_server_mode_reconnect_with_virtio10_non_mergeable_path(self):\n+    def test_server_mode_reconnect_with_virtio11_inorder_non_mergeable_path(self):\n         \"\"\"\n-        Test Case 6: reconnect test with virtio 1.0 non_mergeable path and server mode\n+        Test Case 11: reconnect test with virtio 1.1 inorder non_mergeable path and server mode\n         \"\"\"\n         self.queue_number = 2\n         self.nb_cores = 2\n-        case_info = \"virtio1.0 non_mergeable path\"\n-        mode = \"in_order=0,mrg_rxbuf=0,vectorized=1\"\n-        extern_params = \"--tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip\"\n+        case_info = \"virtio1.1 inorder non_mergeable path\"\n+        mode = \"packed_vq=1,in_order=1,mrg_rxbuf=0,vectorized=1\"\n+        extern_params = \"--rx-offloads=0x10 --enable-hw-vlan-strip --rss-ip\"\n         self.lanuch_vhost_testpmd_with_multi_queue()\n         self.lanuch_virtio_user_testpmd_with_multi_queue(\n             mode=mode, extern_params=extern_params\n         )\n-        self.start_to_send_packets(self.vhost, self.virtio_user)\n+        self.start_to_send_packets(self.vhost_user, self.virtio_user)\n         self.calculate_avg_throughput(case_info, \"before reconnet\")\n \n-        # reconnet from vhost\n+        # reconnect from vhost\n         self.logger.info(\"now reconnet from vhost\")\n         self.relanuch_vhost_testpmd_with_multi_queue()\n-        self.start_to_send_packets(self.virtio_user, self.vhost)\n+        self.start_to_send_packets(self.virtio_user, self.vhost_user)\n         self.calculate_avg_throughput(case_info, \"reconnet from vhost\")\n \n         # reconnet from virtio\n@@ -891,7 +898,7 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         self.relanuch_virtio_testpmd_with_multi_queue(\n             mode=mode, extern_params=extern_params\n         )\n-        self.start_to_send_packets(self.vhost, self.virtio_user)\n+        self.start_to_send_packets(self.vhost_user, self.virtio_user)\n         self.calculate_avg_throughput(case_info, \"reconnet from virtio_user\")\n \n         # port restart\n@@ -903,29 +910,34 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         self.check_packets_of_each_queue()\n         self.close_all_testpmd()\n \n-    def test_server_mode_reconnect_with_virtio10_vector_rx_path(self):\n+    def test_server_mode_reconnect_with_virtio11_inorder_vectorized_path(self):\n         \"\"\"\n-        Test Case 7: reconnect test with virtio 1.0 vector_rx path and server mode\n+        Test Case 12: reconnect test with virtio 1.1 inorder vectorized path and server mode\n         \"\"\"\n         self.queue_number = 2\n         self.nb_cores = 2\n-        case_info = \"virtio1.0 vector_rx path\"\n-        mode = \"in_order=0,mrg_rxbuf=0,vectorized=1\"\n+        case_info = \"virtio1.1 inorder vectorized path\"\n+        mode = \"packed_vq=1,in_order=1,mrg_rxbuf=0,vectorized=1\"\n+        extern_params = \"--tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip\"\n         self.lanuch_vhost_testpmd_with_multi_queue()\n-        self.lanuch_virtio_user_testpmd_with_multi_queue(mode=mode)\n-        self.start_to_send_packets(self.vhost, self.virtio_user)\n+        self.lanuch_virtio_user_testpmd_with_multi_queue(\n+            mode=mode, extern_params=extern_params\n+        )\n+        self.start_to_send_packets(self.vhost_user, self.virtio_user)\n         self.calculate_avg_throughput(case_info, \"before reconnet\")\n \n-        # reconnet from vhost\n+        # reconnect from vhost\n         self.logger.info(\"now reconnet from vhost\")\n         self.relanuch_vhost_testpmd_with_multi_queue()\n-        self.start_to_send_packets(self.virtio_user, self.vhost)\n+        self.start_to_send_packets(self.virtio_user, self.vhost_user)\n         self.calculate_avg_throughput(case_info, \"reconnet from vhost\")\n \n         # reconnet from virtio\n         self.logger.info(\"now reconnet from virtio_user\")\n-        self.relanuch_virtio_testpmd_with_multi_queue(mode=mode)\n-        self.start_to_send_packets(self.vhost, self.virtio_user)\n+        self.relanuch_virtio_testpmd_with_multi_queue(\n+            mode=mode, extern_params=extern_params\n+        )\n+        self.start_to_send_packets(self.vhost_user, self.virtio_user)\n         self.calculate_avg_throughput(case_info, \"reconnet from virtio_user\")\n \n         # port restart\n@@ -956,14 +968,12 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         )\n         self.virtio_user_pmd.execute_cmd(\"set fwd csum\")\n         self.virtio_user_pmd.execute_cmd(\"start\")\n-        # 3. Attach pdump secondary process to primary process by same file-prefix::\n-        self.vuser0_port = \"net_virtio_user0\"\n-        self.launch_pdump_to_capture_pkt(self.vuser0_port)\n-        self.start_to_send_8k_packets_csum(self.vhost)\n+        self.launch_pdump_to_capture_pkt(multi_queue=True)\n+        self.start_to_send_8k_packets_csum(self.vhost_user)\n \n         # 5. Check all the packets length is 8000 Byte in the pcap file\n         self.pkt_len = 8000\n-        self.check_packet_payload_valid(self.pkt_len)\n+        self.check_packet_payload_valid(self.pkt_len, multi_queue=True)\n \n         # reconnet from vhost\n         self.relanuch_vhost_testpmd_send_packets(extern_params)\n@@ -1020,14 +1030,12 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n         )\n         self.virtio_user_pmd.execute_cmd(\"set fwd csum\")\n         self.virtio_user_pmd.execute_cmd(\"start\")\n-        # 3. Attach pdump secondary process to primary process by same file-prefix::\n-        self.vuser0_port = \"net_virtio_user0\"\n-        self.launch_pdump_to_capture_pkt(self.vuser0_port)\n-        self.start_to_send_8k_packets_csum(self.vhost)\n+        self.launch_pdump_to_capture_pkt(multi_queue=True)\n+        self.start_to_send_8k_packets_csum(self.vhost_user)\n \n         # 5. Check all the packets length is 8000 Byte in the pcap file\n         self.pkt_len = 8000\n-        self.check_packet_payload_valid(self.pkt_len)\n+        self.check_packet_payload_valid(self.pkt_len, multi_queue=True)\n \n         # reconnet from vhost\n         self.relanuch_vhost_testpmd_send_packets(extern_params)\n@@ -1059,298 +1067,14 @@ class TestLoopbackVirtioUserServerMode(TestCase):\n \n         self.close_all_testpmd()\n \n-    def test_server_mode_reconnect_with_packed_all_path_cbdma_payload_check(self):\n-        \"\"\"\n-        Test Case 15: loopback packed ring all path cbdma test payload check with server mode and multi-queues\n-        \"\"\"\n-        self.cbdma_nic_dev_num = 8\n-        self.get_cbdma_ports_info_and_bind_to_dpdk()\n-        self.queue_number = 8\n-        self.vdev = f\"--vdev 'eth_vhost0,iface=vhost-net,queues={self.queue_number},client=1,dmas=[txq0@{self.cbdma_dev_infos[0]};txq1@{self.cbdma_dev_infos[1]};txq2@{self.cbdma_dev_infos[2]};txq3@{self.cbdma_dev_infos[3]};txq4@{self.cbdma_dev_infos[4]};txq5@{self.cbdma_dev_infos[5]};txq6@{self.cbdma_dev_infos[6]};txq7@{self.cbdma_dev_infos[7]}]' \"\n-\n-        self.nb_cores = 1\n-        extern_params = \"--txd=1024 --rxd=1024\"\n-        case_info = \"packed ring mergeable inorder path\"\n-        mode = \"mrg_rxbuf=1,in_order=1,packed_vq=1\"\n-\n-        self.lanuch_vhost_testpmd_with_cbdma(extern_params=extern_params)\n-        self.logger.info(case_info)\n-        self.lanuch_virtio_user_testpmd_with_multi_queue(\n-            mode=mode, extern_params=extern_params, set_fwd_mac=False\n-        )\n-        self.virtio_user_pmd.execute_cmd(\"set fwd csum\")\n-        self.virtio_user_pmd.execute_cmd(\"start\")\n-        # 3. Attach pdump secondary process to primary process by same file-prefix::\n-        self.vuser0_port = \"net_virtio_user0\"\n-        self.launch_pdump_to_capture_pkt(self.vuser0_port)\n-        self.start_to_send_6192_packets_csum_cbdma(self.vhost)\n-\n-        # 5. Check all the packets length is 6192 Byte in the pcap file\n-        self.pkt_len = 6192\n-        self.check_packet_payload_valid(self.pkt_len)\n-        # reconnet from vhost\n-        self.relanuch_vhost_testpmd_send_packets(extern_params, cbdma=True)\n-\n-        # reconnet from virtio\n-        self.logger.info(\"now reconnet from virtio_user with other path\")\n-        case_info = \"packed ring mergeable path\"\n-        mode = \"mrg_rxbuf=1,in_order=0,packed_vq=1\"\n-        self.relanuch_virtio_testpmd_with_multi_path(\n-            mode, case_info, extern_params, cbdma=True\n-        )\n-\n-        case_info = \"packed ring non-mergeable path\"\n-        mode = \"mrg_rxbuf=0,in_order=0,packed_vq=1\"\n-        self.relanuch_virtio_testpmd_with_non_mergeable_path(\n-            mode, case_info, extern_params, cbdma=True\n-        )\n-\n-        case_info = \"packed ring inorder non-mergeable path\"\n-        mode = \"mrg_rxbuf=0,in_order=1,packed_vq=1\"\n-        self.relanuch_virtio_testpmd_with_non_mergeable_path(\n-            mode, case_info, extern_params, cbdma=True\n-        )\n-\n-        case_info = \"packed ring vectorized path\"\n-        mode = \"mrg_rxbuf=0,in_order=1,packed_vq=1,vectorized=1\"\n-        self.relanuch_virtio_testpmd_with_non_mergeable_path(\n-            mode, case_info, extern_params, cbdma=True, vectorized_path=True\n-        )\n-\n-        case_info = \"packed ring vectorized path and ring size is not power of 2\"\n-        mode = \"mrg_rxbuf=0,in_order=1,packed_vq=1,vectorized=1,queue_size=1025\"\n-        extern_param = \"--txd=1025 --rxd=1025\"\n-        self.relanuch_virtio_testpmd_with_non_mergeable_path(\n-            mode, case_info, extern_param, cbdma=True, vectorized_path=True\n-        )\n-\n-        if not self.check_2M_env:\n-            self.relanuch_vhost_testpmd_iova_pa(extern_params=extern_params)\n-\n-        self.close_all_testpmd()\n-\n-    def test_server_mode_reconnect_with_split_all_path_cbdma_payload_check(self):\n-        \"\"\"\n-        Test Case 16: loopback split ring all path cbdma test payload check with server mode and multi-queues\n-        \"\"\"\n-        self.cbdma_nic_dev_num = 8\n-        self.get_cbdma_ports_info_and_bind_to_dpdk()\n-        self.queue_number = 8\n-        self.vdev = f\"--vdev 'eth_vhost0,iface=vhost-net,queues={self.queue_number},client=1,dmas=[txq0@{self.cbdma_dev_infos[0]};txq1@{self.cbdma_dev_infos[1]};txq2@{self.cbdma_dev_infos[2]};txq3@{self.cbdma_dev_infos[3]};txq4@{self.cbdma_dev_infos[4]};txq5@{self.cbdma_dev_infos[5]};txq6@{self.cbdma_dev_infos[6]};txq7@{self.cbdma_dev_infos[7]}]' \"\n-\n-        self.nb_cores = 1\n-        extern_params = \"--txd=1024 --rxd=1024\"\n-        case_info = \"split ring mergeable inorder path\"\n-        mode = \"mrg_rxbuf=1,in_order=1\"\n-\n-        self.lanuch_vhost_testpmd_with_cbdma(extern_params=extern_params)\n-        self.logger.info(case_info)\n-        self.lanuch_virtio_user_testpmd_with_multi_queue(\n-            mode=mode, extern_params=extern_params, set_fwd_mac=False\n-        )\n-        self.virtio_user_pmd.execute_cmd(\"set fwd csum\")\n-        self.virtio_user_pmd.execute_cmd(\"start\")\n-        # 3. Attach pdump secondary process to primary process by same file-prefix::\n-        self.vuser0_port = \"net_virtio_user0\"\n-        self.launch_pdump_to_capture_pkt(self.vuser0_port)\n-        self.start_to_send_6192_packets_csum_cbdma(self.vhost)\n-\n-        # 5. Check all the packets length is 6192 Byte in the pcap file\n-        self.pkt_len = 6192\n-        self.check_packet_payload_valid(self.pkt_len)\n-        # reconnet from vhost\n-        self.relanuch_vhost_testpmd_send_packets(extern_params, cbdma=True)\n-\n-        # reconnet from virtio\n-        self.logger.info(\"now reconnet from virtio_user with other path\")\n-        case_info = \"split ring mergeable path\"\n-        mode = \"mrg_rxbuf=1,in_order=0\"\n-        self.relanuch_virtio_testpmd_with_multi_path(\n-            mode, case_info, extern_params, cbdma=True\n-        )\n-\n-        case_info = \"split ring non-mergeable path\"\n-        mode = \"mrg_rxbuf=0,in_order=0\"\n-        extern_param = extern_params + \" --enable-hw-vlan-strip\"\n-        self.relanuch_virtio_testpmd_with_non_mergeable_path(\n-            mode, case_info, extern_param, cbdma=True\n-        )\n-\n-        case_info = \"split ring inorder non-mergeable path\"\n-        mode = \"mrg_rxbuf=0,in_order=1\"\n-        self.relanuch_virtio_testpmd_with_non_mergeable_path(\n-            mode, case_info, extern_params, cbdma=True\n-        )\n-\n-        case_info = \"split ring vectorized path\"\n-        mode = \"mrg_rxbuf=0,in_order=0,vectorized=1\"\n-        self.relanuch_virtio_testpmd_with_non_mergeable_path(\n-            mode, case_info, extern_params, cbdma=True\n-        )\n-\n-        if not self.check_2M_env:\n-            self.relanuch_vhost_testpmd_iova_pa(extern_params=extern_params)\n-\n-        self.close_all_testpmd()\n-\n-    def relanuch_vhost_testpmd_iova_pa(self, extern_params=\"\"):\n-        self.vhost_pmd.execute_cmd(\"quit\", \"#\", 60)\n-        self.logger.info(\"now relaunch vhost iova=pa\")\n-        self.lanuch_vhost_testpmd_with_cbdma(extern_params=extern_params, iova=\"pa\")\n-\n-        if \"packed\" in self.running_case:\n-            case_info = \"packed ring mergeable inorder path\"\n-            mode = \"mrg_rxbuf=1,in_order=1,packed_vq=1\"\n-            self.relanuch_virtio_testpmd_with_multi_path(\n-                mode, case_info, extern_params, cbdma=True, iova=\"pa\"\n-            )\n-\n-            case_info = \"packed ring mergeable path\"\n-            mode = \"mrg_rxbuf=1,in_order=0,packed_vq=1\"\n-            self.relanuch_virtio_testpmd_with_multi_path(\n-                mode, case_info, extern_params, cbdma=True, iova=\"pa\"\n-            )\n-\n-            case_info = \"packed ring non-mergeable path\"\n-            mode = \"mrg_rxbuf=0,in_order=0,packed_vq=1\"\n-            self.relanuch_virtio_testpmd_with_non_mergeable_path(\n-                mode, case_info, extern_params, cbdma=True, iova=\"pa\"\n-            )\n-\n-            case_info = \"packed ring inorder non-mergeable path\"\n-            mode = \"mrg_rxbuf=0,in_order=1,packed_vq=1\"\n-            self.relanuch_virtio_testpmd_with_non_mergeable_path(\n-                mode, case_info, extern_params, cbdma=True, iova=\"pa\"\n-            )\n-\n-            case_info = \"packed ring vectorized path\"\n-            mode = \"mrg_rxbuf=0,in_order=1,packed_vq=1,vectorized=1\"\n-            self.relanuch_virtio_testpmd_with_non_mergeable_path(\n-                mode,\n-                case_info,\n-                extern_params,\n-                cbdma=True,\n-                vectorized_path=True,\n-                iova=\"pa\",\n-            )\n-\n-            case_info = \"packed ring vectorized path and ring size is not power of 2\"\n-            mode = \"mrg_rxbuf=0,in_order=1,packed_vq=1,vectorized=1,queue_size=1025\"\n-            extern_param = \"--txd=1025 --rxd=1025\"\n-            self.relanuch_virtio_testpmd_with_non_mergeable_path(\n-                mode,\n-                case_info,\n-                extern_param,\n-                cbdma=True,\n-                vectorized_path=True,\n-                iova=\"pa\",\n-            )\n-\n-        if \"split\" in self.running_case:\n-            case_info = \"split ring mergeable inorder path\"\n-            mode = \"mrg_rxbuf=1,in_order=1\"\n-            self.relanuch_virtio_testpmd_with_multi_path(\n-                mode, case_info, extern_params, cbdma=True, iova=\"pa\"\n-            )\n-\n-            case_info = \"split ring mergeable path\"\n-            mode = \"mrg_rxbuf=1,in_order=0\"\n-            self.relanuch_virtio_testpmd_with_multi_path(\n-                mode, case_info, extern_params, cbdma=True, iova=\"pa\"\n-            )\n-\n-            case_info = \"split ring non-mergeable path\"\n-            mode = \"mrg_rxbuf=0,in_order=0\"\n-            extern_param = extern_params + \" --enable-hw-vlan-strip\"\n-            self.relanuch_virtio_testpmd_with_non_mergeable_path(\n-                mode, case_info, extern_param, cbdma=True, iova=\"pa\"\n-            )\n-\n-            case_info = \"split ring inorder non-mergeable path\"\n-            mode = \"mrg_rxbuf=0,in_order=1\"\n-            self.relanuch_virtio_testpmd_with_non_mergeable_path(\n-                mode, case_info, extern_params, cbdma=True, iova=\"pa\"\n-            )\n-\n-            case_info = \"split ring vectorized path\"\n-            mode = \"mrg_rxbuf=0,in_order=0,vectorized=1\"\n-            self.relanuch_virtio_testpmd_with_non_mergeable_path(\n-                mode, case_info, extern_params, cbdma=True, iova=\"pa\"\n-            )\n-\n-    def lanuch_vhost_testpmd_with_cbdma(self, extern_params=\"\", iova=\"va\"):\n-        \"\"\"\n-        start testpmd with cbdma\n-        \"\"\"\n-        eal_params = self.vdev + \" --iova={}\".format(iova)\n-        param = \"--rxq={} --txq={} --nb-cores={} {}\".format(\n-            self.queue_number, self.queue_number, self.nb_cores, extern_params\n-        )\n-        self.vhost_pmd.start_testpmd(\n-            self.core_list_host,\n-            param=param,\n-            no_pci=False,\n-            ports=[],\n-            eal_param=eal_params,\n-            prefix=\"vhost\",\n-            fixed_prefix=True,\n-        )\n-\n-    def get_cbdma_ports_info_and_bind_to_dpdk(self):\n-        \"\"\"\n-        get all cbdma ports\n-        \"\"\"\n-        out = self.dut.send_expect(\n-            \"./usertools/dpdk-devbind.py --status-dev dma\", \"# \", 30\n-        )\n-        device_info = out.split(\"\\n\")\n-        for device in device_info:\n-            pci_info = re.search(\"\\s*(0000:\\S*:\\d*.\\d*)\", device)\n-            if pci_info is not None:\n-                dev_info = pci_info.group(1)\n-                # the numa id of ioat dev, only add the device which on same socket with nic dev\n-                bus = int(dev_info[5:7], base=16)\n-                if bus >= 128:\n-                    cur_socket = 1\n-                else:\n-                    cur_socket = 0\n-                if self.ports_socket == cur_socket:\n-                    self.cbdma_dev_infos.append(pci_info.group(1))\n-        self.verify(\n-            len(self.cbdma_dev_infos) >= 8,\n-            \"There no enough cbdma device to run this suite\",\n-        )\n-        self.device_str = \" \".join(self.cbdma_dev_infos[0 : self.cbdma_nic_dev_num])\n-        self.dut.send_expect(\n-            \"./usertools/dpdk-devbind.py --force --bind=%s %s\"\n-            % (self.drivername, self.device_str),\n-            \"# \",\n-            60,\n-        )\n-\n-    def bind_cbdma_device_to_kernel(self):\n-        if self.device_str is not None:\n-            self.dut.send_expect(\"modprobe ioatdma\", \"# \")\n-            self.dut.send_expect(\n-                \"./usertools/dpdk-devbind.py -u %s\" % self.device_str, \"# \", 30\n-            )\n-            self.dut.send_expect(\n-                \"./usertools/dpdk-devbind.py --force --bind=ioatdma  %s\"\n-                % self.device_str,\n-                \"# \",\n-                60,\n-            )\n-\n     def tear_down(self):\n         \"\"\"\n         Run after each test case.\n         \"\"\"\n         self.dut.send_expect(\"killall -s INT %s\" % self.testpmd_name, \"#\")\n-        self.close_all_session()\n-        time.sleep(2)\n \n     def tear_down_all(self):\n         \"\"\"\n         Run after each test suite.\n         \"\"\"\n-        self.bind_cbdma_device_to_kernel()\n+        self.close_all_session()\n",
    "prefixes": [
        "V2",
        "2/2"
    ]
}