get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 113710,
    "url": "https://patches.dpdk.org/api/patches/113710/?format=api",
    "web_url": "https://patches.dpdk.org/project/dts/patch/20220706023806.27825-1-weiyuanx.li@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": "<20220706023806.27825-1-weiyuanx.li@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dts/20220706023806.27825-1-weiyuanx.li@intel.com",
    "date": "2022-07-06T02:38:03",
    "name": "[V2,1/4] tests/kernelpf_iavf: update dts code for driver change",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": false,
    "hash": "4827dadf18e16b8266f544248cf54af69817b155",
    "submitter": {
        "id": 2477,
        "url": "https://patches.dpdk.org/api/people/2477/?format=api",
        "name": "Weiyuan Li",
        "email": "weiyuanx.li@intel.com"
    },
    "delegate": null,
    "mbox": "https://patches.dpdk.org/project/dts/patch/20220706023806.27825-1-weiyuanx.li@intel.com/mbox/",
    "series": [
        {
            "id": 23895,
            "url": "https://patches.dpdk.org/api/series/23895/?format=api",
            "web_url": "https://patches.dpdk.org/project/dts/list/?series=23895",
            "date": "2022-07-06T02:38:04",
            "name": "[V2,1/4] tests/kernelpf_iavf: update dts code for driver change",
            "version": 2,
            "mbox": "https://patches.dpdk.org/series/23895/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/113710/comments/",
    "check": "pending",
    "checks": "https://patches.dpdk.org/api/patches/113710/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 F1283A0540;\n\tWed,  6 Jul 2022 04:38:16 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 7E6F840687;\n\tWed,  6 Jul 2022 04:38:16 +0200 (CEST)",
            "from mga05.intel.com (mga05.intel.com [192.55.52.43])\n by mails.dpdk.org (Postfix) with ESMTP id DE5C840395\n for <dts@dpdk.org>; Wed,  6 Jul 2022 04:38:14 +0200 (CEST)",
            "from orsmga001.jf.intel.com ([10.7.209.18])\n by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 05 Jul 2022 19:38:13 -0700",
            "from unknown (HELO localhost.localdomain) ([10.239.252.248])\n by orsmga001-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 05 Jul 2022 19:38:12 -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=1657075095; x=1688611095;\n h=from:to:cc:subject:date:message-id:mime-version:\n content-transfer-encoding;\n bh=rNi2irrY4Iw6DstecL9wot+TRMDjmpdHOo0P0iFSBG8=;\n b=cHPrdu+wGV3QHWjcCEh6F+h0FpQ61xt3lNul0oovf5rYNsuY3f4qt2bC\n WuJHODjM4h+Sxumxfe8qBSEFuGeScqfEoDqw5l5C0xDqZJ0nJeZ6vgHyv\n mVJchvurWbQKQWRwpBVUru5VsVR1Ht7QY95mWRllmqGMo+gB7YPuoP0wt\n e7opKPN464MDx6iwUYq5IvsnaR5WnwkduRCmR+nFpgjIXyULq9CVLXeA6\n MOWq5bYrlMo2N89movCxmx8bqb2CNUhQVAwLMrBxM+nOYFAnhqilhv4Kb\n gMl03kXCnY6c0J1RsouzG0a+ydFxKesmBzdtnRcYA9fOHKZAiuU/HWo0m A==;",
        "X-IronPort-AV": [
            "E=McAfee;i=\"6400,9594,10399\"; a=\"369941345\"",
            "E=Sophos;i=\"5.92,248,1650956400\"; d=\"scan'208\";a=\"369941345\"",
            "E=Sophos;i=\"5.92,248,1650956400\"; d=\"scan'208\";a=\"625684822\""
        ],
        "From": "Weiyuan Li <weiyuanx.li@intel.com>",
        "To": "dts@dpdk.org,\n\tyuan.peng@intel.com",
        "Cc": "Weiyuan Li <weiyuanx.li@intel.com>",
        "Subject": "[dts][PATCH V2 1/4] tests/kernelpf_iavf: update dts code for driver\n change",
        "Date": "Wed,  6 Jul 2022 10:38:03 +0800",
        "Message-Id": "<20220706023806.27825-1-weiyuanx.li@intel.com>",
        "X-Mailer": "git-send-email 2.27.0",
        "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": "The out-tree driver has vf-vlan-pruning option,but in-tree driver has\nnot. So we need different action to enable vlan filter when we validate\nthe vlan filter function with in-tree and out-tree kernel drvier.\n\nSigned-off-by: Weiyuan Li <weiyuanx.li@intel.com>\n---\n\nv2:\n-fix format issue\n\n tests/TestSuite_kernelpf_iavf.py | 33 ++++++++++++++++++++++++++++----\n 1 file changed, 29 insertions(+), 4 deletions(-)",
    "diff": "diff --git a/tests/TestSuite_kernelpf_iavf.py b/tests/TestSuite_kernelpf_iavf.py\nindex d7d17ac4..67a26245 100644\n--- a/tests/TestSuite_kernelpf_iavf.py\n+++ b/tests/TestSuite_kernelpf_iavf.py\n@@ -96,7 +96,25 @@ class TestKernelpfIavf(TestCase):\n         # bind to default driver\n         self.bind_nic_driver(self.dut_ports, driver=\"\")\n         self.used_dut_port = self.dut_ports[0]\n-        if self.is_eth_series_nic(800) and self.default_stats:\n+        # check out tree driver whether there is flag vf-vlan-pruning.\n+        # out tree path: /lib/modules/4.18.0-305.19.1.el8_4.x86_64/updates/drivers/net/ethernet/intel/i40e/i40e.ko\n+        # in tree path:/lib/modules/5.15.0-27-generic/kernel/drivers/net/ethernet/intel/ice/ice.ko\n+        out = self.dut.send_expect(f\"modinfo {self.kdriver}\", \"# \")\n+        pattern = \"/lib/modules/(.*?)/updates/drivers\"\n+        regex = re.compile(pattern)\n+        mo = regex.search(out)\n+        if mo:\n+            search_results = mo.group(0)\n+        else:\n+            search_results = \"\"\n+        if \"updates\" in search_results and not self.default_stats:\n+            self.logger.warning(\n+                f\"{self.kdriver} driver out tree does not have vf-vlan-pruning flag. Please confirm whether the driver is correct.\"\n+            )\n+        if (\n+            any([self.is_eth_series_nic(800), self.kdriver == \"i40e\"])\n+            and self.default_stats\n+        ):\n             self.dut.send_expect(\n                 \"ethtool --set-priv-flags %s %s on\" % (self.host_intf, self.flag), \"# \"\n             )\n@@ -119,7 +137,6 @@ class TestKernelpfIavf(TestCase):\n             self.dut.send_expect(\n                 \"ip link set %s vf 0 mac %s\" % (self.host_intf, self.vf_mac), \"# \"\n             )\n-\n         try:\n \n             for port in self.sriov_vfs_port:\n@@ -453,7 +470,11 @@ class TestKernelpfIavf(TestCase):\n         time.sleep(1)\n         tcpdump_out = self.get_tcpdump_package()\n         receive_pkt = re.findall(\"vlan %s\" % random_vlan, tcpdump_out)\n-        if self.kdriver == \"i40e\" and self.driver_version < \"2.13.10\":\n+        if (\n+            (self.kdriver == \"i40e\" and self.driver_version < \"2.13.10\")\n+            or (self.kdriver == \"i40e\" and not self.default_stats)\n+            or (self.kdriver == \"ice\" and not self.default_stats)\n+        ):\n             self.verify(len(receive_pkt) == 2, \"Failed to received vlan packet!!!\")\n         else:\n             self.verify(len(receive_pkt) == 1, \"Failed to received vlan packet!!!\")\n@@ -853,7 +874,11 @@ class TestKernelpfIavf(TestCase):\n         self.scapy_send_packet(self.vf_mac, self.tester_intf, vlan_flags=True, count=10)\n         out = self.vm_dut.get_session_output()\n         packets = len(re.findall(\"received 1 packets\", out))\n-        if self.kdriver == \"i40e\" and self.driver_version < \"2.13.10\":\n+        if (\n+            (self.kdriver == \"i40e\" and self.driver_version < \"2.13.10\")\n+            or (self.kdriver == \"i40e\" and not self.default_stats)\n+            or (self.kdriver == \"ice\" and not self.default_stats)\n+        ):\n             self.verify(packets == 10, \"Not receive expected packet\")\n         else:\n             self.verify(packets == 0, \"Receive expected packet\")\n",
    "prefixes": [
        "V2",
        "1/4"
    ]
}