get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 129268,
    "url": "http://patches.dpdk.org/api/patches/129268/?format=api",
    "web_url": "http://patches.dpdk.org/project/dts/patch/20230705105344.1031168-6-zhiminx.huang@intel.com/",
    "project": {
        "id": 3,
        "url": "http://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": "<20230705105344.1031168-6-zhiminx.huang@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dts/20230705105344.1031168-6-zhiminx.huang@intel.com",
    "date": "2023-07-05T10:53:43",
    "name": "[V2,5/6] test_plans/ice_kernelpf_dcf_test_plan:add new plan to cover the most of dcf pmd function",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "c30604e91790de877de74ca4c0eb63ba92100adc",
    "submitter": {
        "id": 1685,
        "url": "http://patches.dpdk.org/api/people/1685/?format=api",
        "name": "Huang, ZhiminX",
        "email": "zhiminx.huang@intel.com"
    },
    "delegate": null,
    "mbox": "http://patches.dpdk.org/project/dts/patch/20230705105344.1031168-6-zhiminx.huang@intel.com/mbox/",
    "series": [
        {
            "id": 28816,
            "url": "http://patches.dpdk.org/api/series/28816/?format=api",
            "web_url": "http://patches.dpdk.org/project/dts/list/?series=28816",
            "date": "2023-07-05T10:53:38",
            "name": "add new common module and add new suites",
            "version": 2,
            "mbox": "http://patches.dpdk.org/series/28816/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/129268/comments/",
    "check": "pending",
    "checks": "http://patches.dpdk.org/api/patches/129268/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 B00B042DAB;\n\tWed,  5 Jul 2023 04:39:07 +0200 (CEST)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id A611540A8B;\n\tWed,  5 Jul 2023 04:39:07 +0200 (CEST)",
            "from mga12.intel.com (mga12.intel.com [192.55.52.136])\n by mails.dpdk.org (Postfix) with ESMTP id B34BD406BC\n for <dts@dpdk.org>; Wed,  5 Jul 2023 04:39:05 +0200 (CEST)",
            "from fmsmga008.fm.intel.com ([10.253.24.58])\n by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 04 Jul 2023 19:38:42 -0700",
            "from unknown (HELO localhost.localdomain) ([10.239.252.96])\n by fmsmga008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 04 Jul 2023 19:38:38 -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=1688524745; x=1720060745;\n h=from:to:cc:subject:date:message-id:in-reply-to:\n references:mime-version:content-transfer-encoding;\n bh=MBAJkMKNkKaUeTBSYNNXypzRBHo/SLm7G0bR3dHYP6g=;\n b=acl+CetOPVKvc8WOYqwMvEqM7yUWl5L2zdKQkS3EboZsqlWb44o+gNVI\n RyUCKMdUiOBkIXAgv+VHICmtDgswYMDkDYDHUTrxb3Jq97nJDI1PwVWMY\n Vgxk1C9Kgh9/WVhqr0F/dG6P/Ojrbr+d1Ozqg2KCxBTDl8asRPUy+EYqn\n CWcTbhF2omANEwGwcGyPDMnlPbKKHB3wIbfu6iiiYWEDiUJzjtb61ReW5\n IYOy4qiUBKzopLPtHoJRPTQSITMWVDh3LrX3Jq1ODkgOJitCYfLmQasfJ\n vcXIqK/3JDOviBHo56kixv8WWwzjnvKeZbTzo9wVwi0Ud5uF+uPl2j0H5 A==;",
        "X-IronPort-AV": [
            "E=McAfee;i=\"6600,9927,10761\"; a=\"342821747\"",
            "E=Sophos;i=\"6.01,181,1684825200\"; d=\"scan'208\";a=\"342821747\"",
            "E=McAfee;i=\"6600,9927,10761\"; a=\"784364082\"",
            "E=Sophos;i=\"6.01,181,1684825200\"; d=\"scan'208\";a=\"784364082\""
        ],
        "X-ExtLoop1": "1",
        "From": "Zhimin Huang <zhiminx.huang@intel.com>",
        "To": "dts@dpdk.org",
        "Cc": "Zhimin Huang <zhiminx.huang@intel.com>",
        "Subject": "[dts][PATCH V2 5/6] test_plans/ice_kernelpf_dcf_test_plan:add new\n plan to cover the most of dcf pmd function",
        "Date": "Wed,  5 Jul 2023 10:53:43 +0000",
        "Message-Id": "<20230705105344.1031168-6-zhiminx.huang@intel.com>",
        "X-Mailer": "git-send-email 2.25.1",
        "In-Reply-To": "<20230705105344.1031168-1-zhiminx.huang@intel.com>",
        "References": "<20230705105344.1031168-1-zhiminx.huang@intel.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain; charset=UTF-8",
        "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": "add new testplan for ice_kernelpf_dcf test suite.\n\nSigned-off-by: Zhimin Huang <zhiminx.huang@intel.com>\n---\n test_plans/ice_kernelpf_dcf_test_plan.rst | 596 ++++++++++++++++++++++\n 1 file changed, 596 insertions(+)\n create mode 100644 test_plans/ice_kernelpf_dcf_test_plan.rst",
    "diff": "diff --git a/test_plans/ice_kernelpf_dcf_test_plan.rst b/test_plans/ice_kernelpf_dcf_test_plan.rst\nnew file mode 100644\nindex 00000000..734c092a\n--- /dev/null\n+++ b/test_plans/ice_kernelpf_dcf_test_plan.rst\n@@ -0,0 +1,596 @@\n+.. SPDX-License-Identifier: BSD-3-Clause\n+   Copyright(c) 2023 Intel Corporation\n+\n+=========================\n+Kernel PF + DCF test plan\n+=========================\n+\n+DPDK-22.07 make DCF full pmd feature.\n+This document provides the plan for testing DCF PMD function of Intel® Ethernet 800 Series.\n+\n+Requirement\n+===========\n+1. Hardware:\n+\n+   Intel® Ethernet 800 Series: E810-XXVDA4/E810-CQ, etc.\n+\n+2. Software:\n+   dpdk: http://dpdk.org/git/dpdk\n+   scapy: http://www.secdev.org/projects/scapy/\n+\n+3. create 2 VF from 2 PF in DUT, set mac address for this VF, set trust on for dcf::\n+\n+    echo 1 > /sys/bus/pci/devices/0000\\:18\\:00.0/sriov_numvfs\n+    echo 1 > /sys/bus/pci/devices/0000\\:18\\:00.1/sriov_numvfs\n+    ip link set enp24s0f0 vf 0 mac 00:11:22:33:44:55\n+    ip link set enp24s0f0 vf 0 trust on\n+    ip link set enp24s0f1 vf 0 trust on\n+\n+4. bind VF to vfio-pci::\n+\n+    modprobe vfio-pci\n+    usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:18:01.0 0000:18:09.0\n+\n+5. test dcf cases on host or in qemu, and launch testpmd::\n+\n+    ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xf -n 4 -a 0000:18:01.0,cap=dcf -a 0000:18:09.0,cap=dcf -- -i --rxq=16 --txq=16\n+    testpmd> set fwd rxonly\n+    testpmd> set verbose 1\n+    testpmd> start\n+\n+.. note::\n+\n+    1.the kernel driver has MAC and VLAN Anti-Spoofing feature for VFs, the default is enable.\n+      disabled for vfs: ip link set <ethX> vf <vf id> spoofchk {off|on}\n+\n+    2.for vf-vlan-pruning in ethtool --set-priv-flag, enable function to receive specific vlan packet.\n+\n+Test case: DCF basic RX/TX\n+==========================\n+Set rxonly forward, start testpmd\n+\n+Send 100 random packets from tester, check packets can be received\n+\n+Set txonly forward, start testpmd\n+\n+Check tester could receive the packets from application generated\n+\n+Test case: DCF promisc\n+======================\n+Ensure kernel trust mode is enable::\n+\n+    ip link set $PF_INTF vf 0 trust on\n+\n+Start testpmd, set mac forward and enable print output\n+\n+Use scapy to send random packets with current VF0's MAC, verify the\n+packets can be received and forwarded by the DCF.\n+\n+Use scapy to send random packets with a wrong MAC to VF0, verify the\n+packets can be received and forwarded by the DCF.\n+\n+Disable promisc mode::\n+\n+    testpmd> set promisc all off\n+\n+Use scapy to send random packets with current VF0's MAC, verify the\n+packets can be received and forwarded by the DCF.\n+\n+Use scapy to send random packets with a wrong MAC to VF0, verify the\n+packets can't be received and forwarded by the DCF.\n+\n+Enable promisc mode::\n+\n+    testpmd> set promisc all on\n+\n+Use scapy to send random packets with current VF0's MAC, verify the\n+packets can be received and forwarded by the DCF.\n+\n+Use scapy to send random packets with a wrong MAC to VF0, verify the\n+packets can be received and forwarded by the DCF.\n+\n+Test case: DCF multicast\n+========================\n+\n+Start testpmd\n+\n+Disable promisc and multicast mode::\n+\n+    testpmd> set promisc all off\n+    testpmd> set allmulti all off\n+    testpmd> start\n+\n+Send packet with current VF0's MAC, and check DCF can receive the packet.\n+\n+Send packet with multicast MAC 01:80:C2:00:00:08, and check DCF can not\n+receive the packet.\n+\n+Enable multicast mode::\n+\n+    testpmd> set allmulti all on\n+\n+configure multicast address::\n+\n+    testpmd> mcast_addr add 0 01:80:C2:00:00:08\n+\n+Send packet with current VF0's MAC, and check DCF can receive the packet.\n+\n+Send packet with multicast MAC 01:80:C2:00:00:08, and check DCF can\n+receive the packet.\n+\n+Test case: DCF broadcast\n+========================\n+Disable promisc mode::\n+\n+    testpmd> set promisc all off\n+    testpmd> start\n+\n+Send packet with broadcast address ff:ff:ff:ff:ff:ff, and check DCF can\n+receive the packet\n+\n+Test case: DCF unicast\n+======================\n+Disable promisc and multicast mode::\n+\n+    testpmd> set promisc all off\n+    testpmd> set allmulti all off\n+    testpmd> start\n+\n+Send packet with unicast address, and check DCF can receive the packet\n+\n+Test case: DCF mac add filter\n+=============================\n+Disable promisc and enable crc strip and add mac address::\n+\n+    testpmd> port stop all\n+    testpmd> port config all crc-strip on\n+    testpmd> port start all\n+    testpmd> set promisc all off\n+    testpmd> mac_addr add 0 00:11:22:33:44:55\n+\n+Use scapy to send 100 random packets with current VF0's MAC, verify the\n+packets can be received by one DCF and can be forwarded to another DCF\n+correctly.\n+\n+Use scapy to send 100 random packets with new added VF0's MAC, verify the\n+packets can be received by one DCF and can be forwarded to another DCF correctly.\n+\n+remove the added mac address::\n+\n+      testpmd> mac_addr remove 0 00:11:22:33:44:55\n+\n+Use scapy to send 100 random packets to the deleted MAC to VF0, verify the\n+packets can't be received by one DCF and also can't be forwarded to another\n+DCF correctly\n+\n+Use scapy to send 100 random packets with a wrong MAC to VF0, verify the\n+packets can't be received by one DCF and also can't be forwarded to another\n+DCF correctly.\n+\n+Test case: DCF vlan insertion\n+=============================\n+\n+Disable vlan strip::\n+\n+    testpmd> vlan set strip off 0\n+\n+Set vlan id 20 for tx_vlan::\n+\n+    testpmd> port stop all\n+    testpmd> tx_vlan set 0 20\n+    testpmd> vlan set filter on 0\n+    testpmd> rx_vlan set 0 20\n+    testpmd> port start all\n+    testpmd> set fwd mac\n+    testpmd> start\n+\n+Send normal packet::\n+\n+    p=Ether(dst=\"00:01:23:45:67:89\")/IP()/Raw(load='X'*30)\n+\n+Verify packet that out from DCF contains the vlan tag 20\n+\n+Test case: DCF vlan strip\n+=========================\n+\n+Enable vlan strip::\n+\n+    testpmd> vlan set filter on 0\n+    testpmd> rx_vlan add 20 0\n+    testpmd> vlan set strip on 0\n+    testpmd> set fwd mac\n+    testpmd> set verbose 1\n+    testpmd> start\n+\n+Send packets with vlan tag::\n+\n+    p=Ether(dst=\"00:01:23:45:67:89\")/Dot1Q(id=0x8100,vlan=20)/IP()/Raw(load='X'*30)\n+\n+Check that out from DCF doesn't contain the vlan tag.\n+\n+Disable vlan strip::\n+\n+    testpmd> vlan set strip off 0\n+\n+Send packets with vlan tag::\n+\n+    Ether(dst=\"00:01:23:45:67:89\")/Dot1Q(id=0x8100,vlan=20)/IP()/Raw(load='X'*30)\n+\n+Check that out from DCF contains the vlan tag.\n+\n+Test case: DCF vlan filter\n+==========================\n+\n+Enable vlan filter::\n+\n+    testpmd> vlan set filter on 0\n+    testpmd> rx_vlan add 20 0\n+    testpmd> vlan set strip off 0\n+    testpmd> set promisc all off\n+    testpmd> set fwd mac\n+    testpmd> set verbose 1\n+    testpmd> start\n+\n+Send packets with vlan tag::\n+\n+    p=Ether(dst=\"00:01:23:45:67:89\")/Dot1Q(id=0x8100,vlan=20)/IP()/Raw(load='X'*30)\n+\n+Check packets can be received and forwarded with vlan tag.\n+\n+Send packets with unmatched vlan tag::\n+\n+    p=Ether(dst=\"00:01:23:45:67:89\")/Dot1Q(id=0x8100,vlan=30)/IP()/Raw(load='X'*30)\n+\n+Check packets can not be received and forwarded.\n+\n+Disable vlan filter::\n+\n+    testpmd> vlan set filter off 0\n+\n+Send packets with vlan tag::\n+\n+    Ether(dst=\"00:01:23:45:67:89\")/Dot1Q(id=0x8100,vlan=20)/IP()/Raw(load='X'*30)\n+\n+if vf-vlan-pruning is on::\n+\n+    Check packets can be received and forwarded with vlan tag.\n+\n+if vf-vlan-pruning is off or not have this option::\n+\n+    Check packets can not be received and forwarded\n+\n+Test case: DCF vlan promisc\n+===========================\n+\n+Enable promisc and disable vlan filter::\n+\n+    testpmd> port stop all\n+    testpmd> set promisc all on\n+    testpmd> set verbose 1\n+    testpmd> vlan set filter off 0\n+    testpmd> vlan set strip off 0\n+    testpmd> set fwd mac\n+    testpmd> port start all\n+    testpmd> start\n+\n+Send 10 random packets with vlan tag::\n+\n+    Ether(dst=\"00:01:23:45:67:89\",type=0x8100)/Dot1Q(vlan=100,type=0x0800)/IP(src=\"196.222.232.1\")/(\"X\"*480)\n+    ...\n+\n+Check packets can be received and forwarded.\n+\n+Send 10 random packets without vlan tag::\n+\n+    Ether(dst=\"00:01:23:45:67:89\")/IP(src=\"196.222.232.1\")/(\"X\"*480)\n+    ...\n+\n+Check packets can be received and forwarded.\n+\n+Test case: DCF add pvid base rx\n+===============================\n+\n+Add pvid on DCF from PF device::\n+\n+     ip link set $PF_INTF vf 0 vlan 2\n+\n+Check pf device show correct pvid setting::\n+\n+     ip link show ens259f0\n+     ...\n+     vf 0 MAC 00:00:00:00:00:00, vlan 1, spoof checking on, link-state auto\n+\n+\n+Start testpmd\n+\n+Send packet with same vlan id and check DCF can receive\n+\n+Send packet without vlan and check DCF can't receive\n+\n+Send packet with wrong vlan id and check DCF can't receive\n+\n+Remove added vlan from PF device::\n+\n+     ip link set $PF_INTF vf 0 vlan 0\n+\n+Restart testpmd and send packet without vlan and check DCF can receive\n+\n+Set packet with vlan id 0 and check DCF can receive\n+\n+Set packet with random id 1-4095\n+\n+if vf-vlan-pruning is on::\n+\n+    Check packets can be received and forwarded.\n+\n+if vf-vlan-pruning is off or not have this option::\n+\n+    Check packets can not be received and forwarded\n+\n+send vlan=0 and not vlan pkt, also receive\n+\n+Test case: DCF add pvid base tx\n+===============================\n+Add pvid on DCF from PF device::\n+\n+     ip link set $PF_INTF vf 0 vlan 2\n+\n+Start testpmd with mac forward mode::\n+\n+     testpmd> set fwd mac\n+     testpmd> start\n+\n+Send packet from tester port1 and check packet received by tester port0::\n+\n+     Check port1 received packet with configured vlan 2\n+\n+Test case: DCF vlan rx combination\n+==================================\n+Start testpmd with rxonly mode::\n+\n+     testpmd> set fwd rxonly\n+     testpmd> set verbose 1\n+     testpmd> start\n+\n+Send packet without vlan and check packet received\n+\n+Send packet with vlan 0 and check packet received\n+\n+Add vlan on DCF from VF driver::\n+\n+     testpmd> rx_vlan add 1 0\n+\n+Send packet with vlan0/1 and check packet received\n+\n+Rerun with step5-6 with random vlan and max vlan 4095\n+\n+Remove vlan on DCF::\n+\n+     rx_vlan rm 1 0\n+\n+Send packet with vlan 0 and check packet received\n+\n+Send packet without vlan and check packet received\n+\n+Send packet with vlan 1 and check packet received\n+\n+Test case: DCF RSS\n+==================\n+\n+Start command with multi-queues like below::\n+\n+   ./<build_target>/app/dpdk-testpmd -c f -n 4 -- -i --txq=4 --rxq=4\n+\n+Show RSS RETA configuration::\n+\n+    testpmd> show port 0 rss reta 64 (0xffffffffffffffff)\n+\n+    RSS RETA configuration: hash index=0, queue=0\n+    RSS RETA configuration: hash index=1, queue=1\n+    RSS RETA configuration: hash index=2, queue=2\n+    RSS RETA configuration: hash index=3, queue=3\n+    ...\n+    RSS RETA configuration: hash index=60, queue=0\n+    RSS RETA configuration: hash index=61, queue=1\n+    RSS RETA configuration: hash index=62, queue=2\n+    RSS RETA configuration: hash index=63, queue=3\n+\n+Config hash reta table::\n+\n+    testpmd> port config 0 rss reta (0,3)\n+    testpmd> port config 0 rss reta (1,2)\n+    testpmd> port config 0 rss reta (2,1)\n+    testpmd> port config 0 rss reta (3,0)\n+\n+Check RSS RETA configuration has changed::\n+\n+    testpmd> show port 0 rss reta 64 (0xffffffffffffffff)\n+\n+    RSS RETA configuration: hash index=0, queue=3\n+    RSS RETA configuration: hash index=1, queue=2\n+    RSS RETA configuration: hash index=2, queue=2\n+    RSS RETA configuration: hash index=3, queue=1\n+\n+Enable IP/TCP/UDP RSS::\n+\n+  testpmd> port config all rss (all|ip|tcp|udp|sctp|ether|port|vxlan|geneve|nvgre|none)\n+\n+Send different flow types' IP/TCP/UDP packets to DCF port, check packets are\n+received by different configured queues.\n+\n+Test case: DCF RSS hash key\n+===========================\n+\n+Start command with multi-queues like below::\n+\n+   ./<build_target>/app/dpdk-testpmd -c f -n 4 -- -i --txq=4 --rxq=4\n+\n+Show port rss hash key::\n+\n+    testpmd> show port 0 rss-hash key\n+\n+Set rxonly fwd, enable print, start testpmd::\n+\n+    testpmd> set fwd rxonly\n+    testpmd> set verbose 1\n+    testpmd> start\n+\n+Send ipv4 packets, mark the RSS hash value::\n+\n+    p=Ether(dst=\"56:0A:EC:50:A4:28\")/IP(src=\"1.2.3.4\")/Raw(load='X'*30)\n+\n+Update ipv4 different hash key::\n+\n+    testpmd> port config 0 rss-hash-key ipv4 1b9d58a4b961d9cd1c56ad1621c3ad51632c16a5d16c21c3513d132c135d132c13ad1531c23a51d6ac49879c499d798a7d949c8a\n+\n+Show port rss hash key, check the key is same to configured key::\n+\n+    testpmd> show port 0 rss-hash key\n+    RSS functions:\n+     all ipv4 ipv6 ip\n+    RSS key:\n+    1B9D58A4B961D9CD1C56AD1621C3AD51632C16A5D16C21C3513D132C135D132C13AD1531C23A51D6AC49879C499D798A7D949C8A\n+\n+Send ipv4 packets, check RSS hash value is different::\n+\n+    p=Ether(dst=\"56:0A:EC:50:A4:28\")/IP(src=\"1.2.3.4\")/Raw(load='X'*30)\n+\n+Test case: DCF rxq txq number inconsistent\n+==========================================\n+\n+Start the testpmd with rxq not equal to txq::\n+\n+    ./<build_target>/app/dpdk-testpmd -l 1-9 -n 2 -- -i --rxq=4 --txq=8\n+\n+Set rxonly fwd, enable print, start testpmd::\n+\n+    testpmd> set fwd rxonly\n+    testpmd> set verbose 1\n+    testpmd> start\n+\n+Send different hash types' packets with different keywords, then check rx port\n+    could receive packets by different queues::\n+\n+      sendp([Ether(dst=\"00:01:23:45:67:89\")/IP(src=\"192.168.0.4\", dst=RandIP())], iface=\"eth3\")\n+\n+Check the total Rx packets in all the RxQ should be equal to the total HW Rx packets::\n+\n+    testpmd> show fwd stats all\n+    ------- Forward Stats for RX Port= 0/Queue= 0 -> TX Port= 0/Queue= 0 -------\n+    RX-packets: 252            TX-packets: 0              TX-dropped: 0\n+\n+    ------- Forward Stats for RX Port= 0/Queue= 1 -> TX Port= 0/Queue= 1 -------\n+    RX-packets: 257            TX-packets: 0              TX-dropped: 0\n+\n+    ------- Forward Stats for RX Port= 0/Queue= 2 -> TX Port= 0/Queue= 2 -------\n+    RX-packets: 259            TX-packets: 0              TX-dropped: 0\n+\n+    ------- Forward Stats for RX Port= 0/Queue= 3 -> TX Port= 0/Queue= 3 -------\n+    RX-packets: 256            TX-packets: 0              TX-dropped: 0\n+\n+    ---------------------- Forward statistics for port 0  ----------------------\n+    RX-packets: 1024           RX-dropped: 0             RX-total: 1024\n+    TX-packets: 0              TX-dropped: 0             TX-total: 0\n+    ----------------------------------------------------------------------------\n+\n+    +++++++++++++++ Accumulated forward statistics for all ports+++++++++++++++\n+    RX-packets: 1024           RX-dropped: 0             RX-total: 1024\n+    TX-packets: 0              TX-dropped: 0             TX-total: 0\n+    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n+\n+Test case: DCF port stop/start\n+==============================\n+\n+Stop port::\n+\n+    testpmd> port stop all\n+\n+Start port::\n+\n+    testpmd> port start all\n+\n+Repeat above stop and start port for 10 times\n+\n+Send packets from tester\n+\n+Check DCF could receive packets\n+\n+Test case: DCF statistics reset\n+===============================\n+\n+Check port stats::\n+\n+    testpmd> show port stats all\n+\n+Clear port stats::\n+\n+    testpmd> clear port stats all\n+\n+Check DCF port stats, RX-packets and TX-packets are 0\n+\n+Set mac forward, enable print out\n+\n+Send 100 packets from tester\n+\n+Check DCF port stats, RX-packets and TX-packets are 100\n+\n+Clear DCF port stats\n+\n+Check DCF port stats, RX-packets and TX-packets are 0\n+\n+Test case: DCF information\n+==========================\n+\n+Start testpmd\n+\n+Show DCF port information, check link, speed...information correctness::\n+\n+    testpmd> show port info all\n+\n+Set mac forward, enable print out\n+\n+Send 100 packets from tester\n+\n+Check DCF port stats, RX-packets and TX-packets are 100\n+\n+Test case: DCF xstats check\n+===========================\n+\n+Launch testpmd and enable rss::\n+\n+    ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c f -n 4 -a 0000:18:01.0,cap=dcf -a 0000:18:09.0,cap=dcf -- -i --rxq=4 --txq=4 --max-pkt-len=9000\n+    testpmd> port config all rss all\n+    testpmd> set fwd mac\n+\n+show the xstats before packet forwarding, all the value are 0.\n+\n+Start forward and send 100 packets with random src IP address,\n+   then stop forward.\n+\n+Check stats and xstats::\n+\n+    testpmd> stop\n+\n+    testpmd> show port stats all\n+\n+    testpmd> show port xstats all\n+\n+verify rx_good_packets, RX-packets of port 0 and tx_good_packets, TX-packets of port 1 are both 100.\n+rx_good_bytes, RX-bytes of port 0 and tx_good_bytes, TX-bytes of port 1 are the same.\n+Intel® Ethernet 700 Series does not support hardware per queue stats,\n+so rx_qx_packets and rx_qx_bytes are both 0.\n+tx_qx_packets and tx_qx_bytes are both 0 too.\n+\n+Clear stats::\n+\n+      testpmd> clear port stats all\n+\n+Check stats and xstats, verify rx_good_packets, RX-packets of port 0 and tx_good_packets, TX-packets of port 1 are both 0.\n+\n+Repeat above 4 and 5 steps.\n+\n+Clear xstats::\n+\n+    testpmd> clear port xstats all\n+\n+Check stats and xstats, verify rx_good_packets, RX-packets of port 0 and tx_good_packets, TX-packets of port 1 are both 0.\n",
    "prefixes": [
        "V2",
        "5/6"
    ]
}