From: Jiale Song <songx.jiale@intel.com>
To: dts@dpdk.org
Cc: Jiale Song <songx.jiale@intel.com>
Subject: [dts] [PATCH V2 2/3] test_plans/mev_cpfl_hairpin_queue: mev cpfl support hairpin queue
Date: Fri, 25 Aug 2023 16:19:22 +0000 [thread overview]
Message-ID: <20230825161923.2832805-3-songx.jiale@intel.com> (raw)
In-Reply-To: <20230825161923.2832805-1-songx.jiale@intel.com>
enabling Port2Port forwarding as hairpin queue implementation in dpdk cpfl PMD.
Signed-off-by: Jiale Song <songx.jiale@intel.com>
---
.../mev_cpfl_hairpin_queue_test_plan.rst | 100 ++++++++++++++++++
1 file changed, 100 insertions(+)
create mode 100644 test_plans/mev_cpfl_hairpin_queue_test_plan.rst
diff --git a/test_plans/mev_cpfl_hairpin_queue_test_plan.rst b/test_plans/mev_cpfl_hairpin_queue_test_plan.rst
new file mode 100644
index 00000000..0f2ee4bf
--- /dev/null
+++ b/test_plans/mev_cpfl_hairpin_queue_test_plan.rst
@@ -0,0 +1,100 @@
+==============================
+MEV CPFL Support Hairpin Queue
+==============================
+
+Description
+===========
+Enabling Port2Port forwarding as hairpin queue implementation in dpdk cpfl PMD.
+launch testpmd not start forwarding, multi hairpin queues receive and transmit packet.
+start forwarding, multi data queues receive and transmit packet;
+
+Prerequisites
+=============
+1. CI release >= MEV 0.81(3921)::
+
+ [root@mev-acc-rl ~]# cat /etc/issue
+ MEV ACC mev-hw-b0-ci-ts.release.3921
+
+2. During IMC boot, press 'N' when you see 'start init app and auxiliary script [Y/N]'.::
+
+ cd /etc/dpcp
+ cp cfg/cp_init_use_case_2.cfg ./cp_init.cfg
+ cp cp_init.cfg cp_init.cfg.bak
+ sed -i 's/pf_allowed_to_create_p2p = 5;/pf_allowed_to_create_p2p = 8;/g' cp_init.cfg
+ sed -i 's/cpf_host = 4;/cpf_host = 0;/g' cp_init.cfg
+
+3. Update customized package::
+
+ copy package to /etc/dpcp/package/ and rename with default_pkg.pkg.
+ cd /etc/dpcp/package/
+ rm default_pkg.pkg
+ ssh-keygen -f "/root/.ssh/known_hosts" -R "100.0.0.100"
+ scp default_pkg.pkg root@100.0.0.100:/etc/dpcp/package/
+
+4. Run /etc/init.d/run_default_init_app
+
+Test Case
+=========
+Common Steps
+------------
+1. Launch testpmd but not start forwarding.
+
+2. Configure port to receive packets on IMC::
+
+ cli_client --query --config --verbose
+ devmem 0x202920C100 64 0x804
+
+3. Create rule on IMC::
+
+ vi rule_1.txt
+ opcode=0x1303 prof_id=0x34 sub_prof_id=0x0 cookie=0xa2b87 key=0x18,0x0,00,00,00,00,0xde,0xad,0xbe,0xef,0x20,0x24,0x0,0x0,0x0,0x0,00,00,00,00,00,00,0xa,0x2,0x1d,0x64,00,00,00,00,00,00,00,00,00,00,00,00,
+ 0xa,0x2,0x1d,0x2,00,00,00,00,00,00,00,00,00,00,00,00 act=set_vsi{act_val=0 val_type=2 dst_pe=0 slot=0x0} act=set_q{qnum=0x151 no_implicit_vsi=1 prec=5} act=count{counter_id=0x10 slot=0x0 prec=0x3}
+
+ cli_client -x -f rule_1.txt
+
+4. Send match packet from tester and check tester can receive the transmit packet::
+
+ tcpdump -i ens21f0 -env -Q in
+ sendp([Ether(dst="de:ad:be:ef:20:24")/IP(src="10.2.29.100", dst="10.2.29.2")/UDP()],iface="ens21f0",count=1)
+
+5. Send mismatch packets form tester and check tester can't receive the transmit packet::
+
+ sendp(Ether(dst="de:ad:be:ef:20:25")/IP(src="10.2.29.100", dst="10.2.29.2")/UDP(),iface="ens21f0",count=1)
+ sendp(Ether(dst="de:ad:be:ef:20:25")/IP(src="10.2.29.101", dst="10.2.29.2")/UDP(),iface="ens21f0",count=1)
+ sendp(Ether(dst="de:ad:be:ef:20:25")/IP(src="10.2.29.100", dst="10.2.29.4")/UDP(),iface="ens21f0",count=1)
+ sendp(Ether(dst="de:ad:be:ef:20:25")/IP(src="10.2.29.100", dst="10.2.29.2")/TCP(),iface="ens21f0",count=1)
+ sendp(Ether(dst="de:ad:be:ef:20:25")/IP(src="10.2.29.100", dst="10.2.29.2"),iface="ens21f0",count=1)
+
+6. Start testpmd forwarding and send mismatch packets, check testpmd can receive and transmit packets::
+
+ testpmd> start
+ testpmd> set verbose 1
+ testpmd> show port stats all
+
+7. Send mismatch packets form tester and check tester can't receive the transmit packet::
+
+ sendp(Ether(dst="de:ad:be:ef:20:25")/IP(src="10.2.29.100", dst="10.2.29.2")/UDP(),iface="ens21f0",count=1)
+ sendp(Ether(dst="de:ad:be:ef:20:25")/IP(src="10.2.29.101", dst="10.2.29.2")/UDP(),iface="ens21f0",count=1)
+ sendp(Ether(dst="de:ad:be:ef:20:25")/IP(src="10.2.29.100", dst="10.2.29.4")/UDP(),iface="ens21f0",count=1)
+ sendp(Ether(dst="de:ad:be:ef:20:25")/IP(src="10.2.29.100", dst="10.2.29.2")/TCP(),iface="ens21f0",count=1)
+ sendp(Ether(dst="de:ad:be:ef:20:25")/IP(src="10.2.29.100", dst="10.2.29.2"),iface="ens21f0",count=1)
+
+Test case 1: single_hairpin_queue
+---------------------------------
+Test subcase 1: single_hairpin_queue_single_data_queue
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+./dpdk-testpmd -l 1-2 -n 4 -a af:00.6,vport=0 -- -i --rxq=1 --txq=1 --hairpinq=1 --hairpin-mode=0
+
+Test subcase 2: single_hairpin_queue_multi_data_queue
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+./dpdk-testpmd -l 1-2 -n 4 -a ca:00.6,vport=0 -- -i --rxq=16 --txq=16 --hairpinq=1 --hairpin-mode=0
+
+Test case 2: multi_hairpin_queue
+---------------------------------
+Test subcase 1: multi_hairpin_queue_single_data_queue
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+./dpdk-testpmd -l 1-2 -n 4 -a ca:00.6,vport=0 -- -i --rxq=1 --txq=1 --hairpinq=16 --hairpin-mode=0
+
+Test subcase 2: multi_hairpin_queue_multi_data_queues
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+./dpdk-testpmd -l 1-2 -n 4 -a ca:00.6,vport=0 -- -i --rxq=16 --txq=16 --hairpinq=16 --hairpin-mode=0
--
2.25.1
next prev parent reply other threads:[~2023-08-25 8:10 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-25 16:19 [dts] [PATCH V2 0/3] MEV CPFL " Jiale Song
2023-08-25 16:19 ` [dts] [PATCH V2 1/3] test_plans/index: add new test plan for mev cpfl " Jiale Song
2023-08-25 16:19 ` Jiale Song [this message]
2023-08-25 16:19 ` [dts] [PATCH V2 3/3] tests/mev_cpfl_hairpin_queue: " Jiale Song
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230825161923.2832805-3-songx.jiale@intel.com \
--to=songx.jiale@intel.com \
--cc=dts@dpdk.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).