Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/114517/?format=api
https://patches.dpdk.org/api/patches/114517/?format=api", "web_url": "https://patches.dpdk.org/project/dts/patch/20220802061312.1099353-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": "<20220802061312.1099353-1-weix.ling@intel.com>", "list_archive_url": "https://inbox.dpdk.org/dts/20220802061312.1099353-1-weix.ling@intel.com", "date": "2022-08-02T06:13:12", "name": "[V1,2/2] tests/vhost_virtio_pmd_interrupt_cbdma: modify testsuite to test virtio dequeue", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": false, "hash": "1f9389935f9505773e4e8b28b32f0d96aa9ef16d", "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/20220802061312.1099353-1-weix.ling@intel.com/mbox/", "series": [ { "id": 24164, "url": "https://patches.dpdk.org/api/series/24164/?format=api", "web_url": "https://patches.dpdk.org/project/dts/list/?series=24164", "date": "2022-08-02T06:12:16", "name": "modify vhost_virtio_pmd_interrupt_cbdma to test virito dequeue", "version": 1, "mbox": "https://patches.dpdk.org/series/24164/mbox/" } ], "comments": "https://patches.dpdk.org/api/patches/114517/comments/", "check": "warning", "checks": "https://patches.dpdk.org/api/patches/114517/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 008DBA0543;\n\tTue, 2 Aug 2022 08:18:46 +0200 (CEST)", "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id EEB1C40141;\n\tTue, 2 Aug 2022 08:18:45 +0200 (CEST)", "from mga07.intel.com (mga07.intel.com [134.134.136.100])\n by mails.dpdk.org (Postfix) with ESMTP id 6B130400D7\n for <dts@dpdk.org>; Tue, 2 Aug 2022 08:18:43 +0200 (CEST)", "from fmsmga005.fm.intel.com ([10.253.24.32])\n by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 01 Aug 2022 23:18:42 -0700", "from unknown (HELO localhost.localdomain) ([10.239.252.222])\n by fmsmga005-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 01 Aug 2022 23:18:41 -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=1659421123; x=1690957123;\n h=from:to:cc:subject:date:message-id:mime-version:\n content-transfer-encoding;\n bh=r14Dw3WKBvT7wHaEdjFZMd/TpWrcoLkmHnEcJsxftxs=;\n b=TUHa0YO1ncwPdoMnzJ1GZaSV7LtR+AfUtYXOoSMadYmqoZ2pEkIKTqir\n Qk9p6RKy67R8do270vToFdUsaDYXkUfpsZKSNs7PFusRV/YSsAMwgP6+D\n lMfrjXiSGx9ZlmuRFOB4T76iY3RCb+bnODLOLgxGVQHNy2hvbyecS6lLZ\n RZppjFHKXONnzDlUH14bRB0gVGV64/wXu7mcymSdnd5PiFD/m/IkusFIa\n H7eRa4G0Jt3TIa6KgPWUwmhj5Esz3JvnXDFlFQFN8zQWfnSq+rHnfZMaX\n wOH0qMc95s6DjGlE7jHKg0BXvLH9f/X8rIgO+KY8HsPr7nSpspLFXlLhF Q==;", "X-IronPort-AV": [ "E=McAfee;i=\"6400,9594,10426\"; a=\"353335704\"", "E=Sophos;i=\"5.93,210,1654585200\";\n d=\"scan'208,223\";a=\"353335704\"", "E=Sophos;i=\"5.93,210,1654585200\";\n d=\"scan'208,223\";a=\"929843797\"" ], "From": "Wei Ling <weix.ling@intel.com>", "To": "dts@dpdk.org", "Cc": "Wei Ling <weix.ling@intel.com>", "Subject": "[dts][PATCH V1 2/2] tests/vhost_virtio_pmd_interrupt_cbdma: modify\n testsuite to test virtio dequeue", "Date": "Tue, 2 Aug 2022 02:13:12 -0400", "Message-Id": "<20220802061312.1099353-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": "From DPDK-22.07, virtio support async dequeue for split and packed ring\npath, so modify vhost_virtio_pmd_interrupt_cbdma testsuite to test the\nsplit and packed ring async dequeue feature.\n\nSigned-off-by: Wei Ling <weix.ling@intel.com>\n---\n ...tSuite_vhost_virtio_pmd_interrupt_cbdma.py | 234 +++++++++++++-----\n 1 file changed, 170 insertions(+), 64 deletions(-)", "diff": "diff --git a/tests/TestSuite_vhost_virtio_pmd_interrupt_cbdma.py b/tests/TestSuite_vhost_virtio_pmd_interrupt_cbdma.py\nindex 779010ba..4c4fd7af 100644\n--- a/tests/TestSuite_vhost_virtio_pmd_interrupt_cbdma.py\n+++ b/tests/TestSuite_vhost_virtio_pmd_interrupt_cbdma.py\n@@ -1,6 +1,31 @@\n # SPDX-License-Identifier: BSD-3-Clause\n # Copyright(c) 2022 Intel Corporation\n #\n+# Redistribution and use in source and binary forms, with or without\n+# modification, are permitted provided that the following conditions\n+# are met:\n+#\n+# * Redistributions of source code must retain the above copyright\n+# notice, this list of conditions and the following disclaimer.\n+# * Redistributions in binary form must reproduce the above copyright\n+# notice, this list of conditions and the following disclaimer in\n+# the documentation and/or other materials provided with the\n+# distribution.\n+# * Neither the name of Intel Corporation nor the names of its\n+# contributors may be used to endorse or promote products derived\n+# from this software without specific prior written permission.\n+#\n+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n+# \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n \n \"\"\"\n DPDK Test suite.\n@@ -33,7 +58,7 @@ class TestVhostVirtioPmdInterruptCbdma(TestCase):\n [n for n in self.dut.cores if int(n[\"socket\"]) == self.ports_socket]\n )\n self.core_list = self.dut.get_core_list(\"all\", socket=self.ports_socket)\n- self.core_list_vhost = self.core_list[0:17]\n+ self.vhost_core_list = self.core_list[0:17]\n self.tx_port = self.tester.get_local_port(self.dut_ports[0])\n self.dst_mac = self.dut.get_mac_address(self.dut_ports[0])\n self.logger.info(\n@@ -138,7 +163,7 @@ class TestVhostVirtioPmdInterruptCbdma(TestCase):\n 2 * self.queues + 2\n )\n if mode == 0:\n- vm_params[\"opt_settings\"] = \"disable-modern=true,\" + opt_param\n+ vm_params[\"opt_settings\"] = opt_param\n elif mode == 1:\n vm_params[\"opt_settings\"] = \"disable-modern=false,\" + opt_param\n self.vm.set_vm_device(**vm_params)\n@@ -301,38 +326,74 @@ class TestVhostVirtioPmdInterruptCbdma(TestCase):\n self.dut.close_session(vm_dut2)\n self.vhost_pmd.quit()\n \n- def test_perf_virtio_interrupt_with_16_queues_and_cbdma_enabled(self):\n+ def test_perf_virtio95_interrupt_test_with_16_queues_and_cbdma_enable(self):\n \"\"\"\n- Test Case1: Basic virtio interrupt test with 16 queues and cbdma enabled\n+ Test Case1: Basic virtio0.95 interrupt test with 16 queues and cbdma enable\n \"\"\"\n- self.get_cbdma_ports_info_and_bind_to_dpdk(16, allow_diff_socket=True)\n+ self.get_cbdma_ports_info_and_bind_to_dpdk(cbdma_num=16, allow_diff_socket=True)\n lcore_dma = (\n- f\"[lcore{self.core_list_vhost[1]}@{self.cbdma_list[0]},\"\n- f\"lcore{self.core_list[2]}@{self.cbdma_list[0]},\"\n- f\"lcore{self.core_list[3]}@{self.cbdma_list[1]},\"\n- f\"lcore{self.core_list[3]}@{self.cbdma_list[2]},\"\n- f\"lcore{self.core_list[4]}@{self.cbdma_list[3]},\"\n- f\"lcore{self.core_list[5]}@{self.cbdma_list[4]},\"\n- f\"lcore{self.core_list[6]}@{self.cbdma_list[5]},\"\n- f\"lcore{self.core_list[7]}@{self.cbdma_list[6]},\"\n- f\"lcore{self.core_list[8]}@{self.cbdma_list[7]},\"\n- f\"lcore{self.core_list[9]}@{self.cbdma_list[8]},\"\n- f\"lcore{self.core_list[10]}@{self.cbdma_list[9]},\"\n- f\"lcore{self.core_list[11]}@{self.cbdma_list[10]},\"\n- f\"lcore{self.core_list[12]}@{self.cbdma_list[11]},\"\n- f\"lcore{self.core_list[13]}@{self.cbdma_list[12]},\"\n- f\"lcore{self.core_list[14]}@{self.cbdma_list[13]},\"\n- f\"lcore{self.core_list[15]}@{self.cbdma_list[14]},\"\n- f\"lcore{self.core_list[16]}@{self.cbdma_list[15]}]\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s\"\n+ % (\n+ self.vhost_core_list[1],\n+ self.cbdma_list[0],\n+ self.vhost_core_list[2],\n+ self.cbdma_list[0],\n+ self.vhost_core_list[3],\n+ self.cbdma_list[1],\n+ self.vhost_core_list[3],\n+ self.cbdma_list[2],\n+ self.vhost_core_list[4],\n+ self.cbdma_list[3],\n+ self.vhost_core_list[5],\n+ self.cbdma_list[4],\n+ self.vhost_core_list[6],\n+ self.cbdma_list[5],\n+ self.vhost_core_list[7],\n+ self.cbdma_list[6],\n+ self.vhost_core_list[8],\n+ self.cbdma_list[7],\n+ self.vhost_core_list[9],\n+ self.cbdma_list[8],\n+ self.vhost_core_list[10],\n+ self.cbdma_list[9],\n+ self.vhost_core_list[11],\n+ self.cbdma_list[10],\n+ self.vhost_core_list[12],\n+ self.cbdma_list[11],\n+ self.vhost_core_list[13],\n+ self.cbdma_list[12],\n+ self.vhost_core_list[14],\n+ self.cbdma_list[13],\n+ self.vhost_core_list[15],\n+ self.cbdma_list[14],\n+ self.vhost_core_list[16],\n+ self.cbdma_list[15],\n+ )\n )\n- vhost_param = \"--nb-cores=16 --rxq=16 --txq=16 --rss-ip --lcore-dma={}\".format(\n- lcore_dma\n+ vhost_param = (\n+ \"--nb-cores=16 --rxq=16 --txq=16 --rss-ip --lcore-dma=[%s]\" % lcore_dma\n )\n- vhost_eal_param = \"--vdev 'eth_vhost0,iface=vhost-net,queues=16,dmas=[txq0;txq1;txq2;txq3;txq4;txq5;txq6;txq7;txq8;txq9;txq10;txq11;txq12;txq13;txq14;txq15]'\"\n+ vhost_eal_param = \"--vdev 'eth_vhost0,iface=vhost-net,queues=16,dmas=[txq0;txq1;txq2;txq3;txq4;txq5;txq6;txq7;txq8;txq9;txq10;txq11;txq12;txq13;txq14;txq15;rxq0;rxq1;rxq2;rxq3;rxq4;rxq5;rxq6;rxq7;rxq8;rxq9;rxq10;rxq11;rxq12;rxq13;rxq14;rxq15]'\"\n ports = self.cbdma_list\n ports.append(self.dut.ports_info[0][\"pci\"])\n self.vhost_pmd.start_testpmd(\n- cores=self.core_list_vhost,\n+ cores=self.vhost_core_list,\n ports=ports,\n prefix=\"vhost\",\n eal_param=vhost_eal_param,\n@@ -346,28 +407,35 @@ class TestVhostVirtioPmdInterruptCbdma(TestCase):\n self.launch_l3fwd_power_in_vm()\n self.send_and_verify()\n \n- def test_perf_virtio10_interrupt_with_4_queues_and_cbdma_enabled(self):\n+ def test_perf_virtio10_interrupt_test_with_4_queues_and_cbdma_enable(self):\n \"\"\"\n- Test Case2: Basic virtio-1.0 interrupt test with 4 queues and cbdma enabled\n+ Test Case2: Basic virtio-1.0 interrupt test with 4 queues and cbdma enable\n \"\"\"\n- self.get_cbdma_ports_info_and_bind_to_dpdk(4)\n+ self.get_cbdma_ports_info_and_bind_to_dpdk(cbdma_num=4)\n lcore_dma = (\n- f\"[lcore{self.core_list_vhost[1]}@{self.cbdma_list[0]},\"\n- f\"lcore{self.core_list_vhost[2]}@{self.cbdma_list[0]},\"\n- f\"lcore{self.core_list_vhost[3]}@{self.cbdma_list[0]},\"\n- f\"lcore{self.core_list_vhost[3]}@{self.cbdma_list[1]},\"\n- f\"lcore{self.core_list_vhost[4]}@{self.cbdma_list[1]}]\"\n- )\n- vhost_param = \"--nb-cores=4 --rxq=4 --txq=4 --rss-ip --lcore-dma={}\".format(\n- lcore_dma\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ % (\n+ self.vhost_core_list[1],\n+ self.cbdma_list[0],\n+ self.vhost_core_list[2],\n+ self.cbdma_list[1],\n+ self.vhost_core_list[3],\n+ self.cbdma_list[2],\n+ self.vhost_core_list[4],\n+ self.cbdma_list[3],\n+ )\n )\n- vhost_eal_param = (\n- \"--vdev 'net_vhost0,iface=vhost-net,queues=4,dmas=[txq0;txq1;txq2;txq3]'\"\n+ vhost_param = (\n+ \"--nb-cores=4 --rxq=4 --txq=4 --rss-ip --lcore-dma=[%s]\" % lcore_dma\n )\n+ vhost_eal_param = \"--vdev 'net_vhost0,iface=vhost-net,queues=4,dmas=[txq0;txq1;txq2;txq3;rxq0;rxq1;rxq2;rxq3]'\"\n ports = self.cbdma_list\n ports.append(self.dut.ports_info[0][\"pci\"])\n self.vhost_pmd.start_testpmd(\n- cores=self.core_list_vhost,\n+ cores=self.vhost_core_list,\n ports=ports,\n prefix=\"vhost\",\n eal_param=vhost_eal_param,\n@@ -381,38 +449,76 @@ class TestVhostVirtioPmdInterruptCbdma(TestCase):\n self.launch_l3fwd_power_in_vm()\n self.send_and_verify()\n \n- def test_perf_packed_ring_virtio_interrupt_with_16_queues_and_cbdma_enabled(self):\n+ def test_perf_packed_ring_virtio_interrupt_test_with_16_queues_and_cbdma_enable(\n+ self,\n+ ):\n \"\"\"\n- Test Case3: Packed ring virtio interrupt test with 16 queues and cbdma enabled\n+ Test Case3: Packed ring virtio interrupt test with 16 queues and cbdma enable\n \"\"\"\n- self.get_cbdma_ports_info_and_bind_to_dpdk(16, allow_diff_socket=True)\n+ self.get_cbdma_ports_info_and_bind_to_dpdk(cbdma_num=16, allow_diff_socket=True)\n lcore_dma = (\n- f\"[lcore{self.core_list_vhost[1]}@{self.cbdma_list[0]},\"\n- f\"lcore{self.core_list[2]}@{self.cbdma_list[0]},\"\n- f\"lcore{self.core_list[3]}@{self.cbdma_list[1]},\"\n- f\"lcore{self.core_list[3]}@{self.cbdma_list[2]},\"\n- f\"lcore{self.core_list[4]}@{self.cbdma_list[3]},\"\n- f\"lcore{self.core_list[5]}@{self.cbdma_list[4]},\"\n- f\"lcore{self.core_list[6]}@{self.cbdma_list[5]},\"\n- f\"lcore{self.core_list[7]}@{self.cbdma_list[6]},\"\n- f\"lcore{self.core_list[8]}@{self.cbdma_list[7]},\"\n- f\"lcore{self.core_list[9]}@{self.cbdma_list[8]},\"\n- f\"lcore{self.core_list[10]}@{self.cbdma_list[9]},\"\n- f\"lcore{self.core_list[11]}@{self.cbdma_list[10]},\"\n- f\"lcore{self.core_list[12]}@{self.cbdma_list[11]},\"\n- f\"lcore{self.core_list[13]}@{self.cbdma_list[12]},\"\n- f\"lcore{self.core_list[14]}@{self.cbdma_list[13]},\"\n- f\"lcore{self.core_list[15]}@{self.cbdma_list[14]},\"\n- f\"lcore{self.core_list[16]}@{self.cbdma_list[15]}]\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s,\"\n+ \"lcore%s@%s\"\n+ % (\n+ self.vhost_core_list[1],\n+ self.cbdma_list[0],\n+ self.vhost_core_list[2],\n+ self.cbdma_list[0],\n+ self.vhost_core_list[3],\n+ self.cbdma_list[1],\n+ self.vhost_core_list[3],\n+ self.cbdma_list[2],\n+ self.vhost_core_list[4],\n+ self.cbdma_list[3],\n+ self.vhost_core_list[5],\n+ self.cbdma_list[4],\n+ self.vhost_core_list[6],\n+ self.cbdma_list[5],\n+ self.vhost_core_list[7],\n+ self.cbdma_list[6],\n+ self.vhost_core_list[8],\n+ self.cbdma_list[7],\n+ self.vhost_core_list[9],\n+ self.cbdma_list[8],\n+ self.vhost_core_list[10],\n+ self.cbdma_list[9],\n+ self.vhost_core_list[11],\n+ self.cbdma_list[10],\n+ self.vhost_core_list[12],\n+ self.cbdma_list[11],\n+ self.vhost_core_list[13],\n+ self.cbdma_list[12],\n+ self.vhost_core_list[14],\n+ self.cbdma_list[13],\n+ self.vhost_core_list[15],\n+ self.cbdma_list[14],\n+ self.vhost_core_list[16],\n+ self.cbdma_list[15],\n+ )\n )\n- vhost_param = \"--nb-cores=16 --rxq=16 --txq=16 --rss-ip --lcore-dma={}\".format(\n- lcore_dma\n+ vhost_param = (\n+ \"--nb-cores=16 --rxq=16 --txq=16 --rss-ip --lcore-dma=[%s]\" % lcore_dma\n )\n- vhost_eal_param = \"--vdev 'eth_vhost0,iface=vhost-net,queues=16,dmas=[txq0;txq1;txq2;txq3;txq4;txq5;txq6;txq7;txq8;txq9;txq10;txq11;txq12;txq13;txq14;txq15]'\"\n+ vhost_eal_param = \"--vdev 'eth_vhost0,iface=vhost-net,queues=16,dmas=[txq0;txq1;txq2;txq3;txq4;txq5;txq6;txq7;txq8;txq9;txq10;txq11;txq12;txq13;txq14;txq15;rxq0;rxq1;rxq2;rxq3;rxq4;rxq5;rxq6;rxq7;rxq8;rxq9;rxq10;rxq11;rxq12;rxq13;rxq14;rxq15]'\"\n ports = self.cbdma_list\n ports.append(self.dut.ports_info[0][\"pci\"])\n self.vhost_pmd.start_testpmd(\n- cores=self.core_list_vhost,\n+ cores=self.vhost_core_list,\n ports=ports,\n prefix=\"vhost\",\n eal_param=vhost_eal_param,\n", "prefixes": [ "V1", "2/2" ] }{ "id": 114517, "url": "