From: Wei Ling <weix.ling@intel.com>
To: dts@dpdk.org
Cc: Wei Ling <weix.ling@intel.com>
Subject: [dts][PATCH V1 1/5] test_plans/loopback_virtio_user_server_mode_test_plan: delte CBDMA test case
Date: Fri, 15 Apr 2022 11:25:16 +0800 [thread overview]
Message-ID: <20220415032516.251365-1-weix.ling@intel.com> (raw)
As commit 53d3f4778c(vhost: integrate dmadev in asynchronous data-path),
delete cbdma related case form test_plans/loopback_virtio_user_server_mode_test_plan.
Signed-off-by: Wei Ling <weix.ling@intel.com>
---
...back_virtio_user_server_mode_test_plan.rst | 922 ++++++++----------
1 file changed, 387 insertions(+), 535 deletions(-)
diff --git a/test_plans/loopback_virtio_user_server_mode_test_plan.rst b/test_plans/loopback_virtio_user_server_mode_test_plan.rst
index 092eb5e8..b372f885 100644
--- a/test_plans/loopback_virtio_user_server_mode_test_plan.rst
+++ b/test_plans/loopback_virtio_user_server_mode_test_plan.rst
@@ -34,75 +34,113 @@
vhost/virtio-user loopback server mode test plan
================================================
-Virtio-user server mode is a feature to enable virtio-user as the server, vhost as the client, thus after vhost-user is killed then relaunched,
-virtio-user can reconnect back to vhost-user again; at another hand, virtio-user also can reconnect back to vhost-user after virtio-user is killed.
-This feature test need cover different rx/tx paths with virtio 1.0 and virtio 1.1, includes split ring mergeable, non-mergeable, inorder mergeable,
-inorder non-mergeable, vector_rx path and packed ring mergeable, non-mergeable, inorder non-mergeable, inorder mergeable, vectorized path.
-Split ring and packed ring test when vhost enqueue operation with multi-CBDMA channels. When DMA devices are bound to vfio driver,
-VA mode is the default and recommended. For PA mode, page by page mapping may exceed IOMMU's max capability, better to use 1G guest hugepage.
+Virtio-user server mode is a feature to enable virtio-user as the server,
+vhost as the client, thus after vhost-user is killed then relaunched,
+virtio-user can reconnect back to vhost-user again; at another hand,
+virtio-user also can reconnect back to vhost-user after virtio-user is killed.
+This feature test need cover different rx/tx paths with virtio 1.0 and virtio 1.1,
+includes split ring mergeable, non-mergeable, inorder mergeable,
+inorder non-mergeable, vector_rx path and packed ring mergeable, non-mergeable,
+inorder non-mergeable, inorder mergeable, vectorized path.
+
+For more about dpdk-testpmd sample, please refer to the DPDK docments:
+https://doc.dpdk.org/guides/testpmd_app_ug/run_app.html
+
+For virtio-user vdev parameter, you can refer to the DPDK docments:
+https://doc.dpdk.org/guides/nics/virtio.html#virtio-paths-selection-and-usage.
+
+Prerequisites
+=============
+
+Topology
+--------
+Test flow: Virtio-user-->Vhost-user-->Testpmd-->Vhost-user-->Virtio-user
+
+Hardware
+--------
+Supportted NICs: ALL
+
+Software
+--------
+Trex:http://trex-tgn.cisco.com/trex/release/v2.26.tar.gz
+
+General set up
+--------------
+1. Compile DPDK::
+
+ # CC=gcc meson --werror -Denable_kmods=True -Dlibdir=lib -Dexamples=all --default-library=<dpdk build dir>
+ # ninja -C <dpdk build dir> -j 110
+
+Test case
+=========
+
+Common steps
+------------
Test Case 1: Basic test for packed ring server mode
-===================================================
+---------------------------------------------------
+This case uses testpmd to test packed ring with loopback virtio-user server mode.
1. Launch virtio-user as server mode::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=/tmp/sock0,server=1,queues=1,packed_vq=1 -- -i --rxq=1 --txq=1 --no-numa
- >set fwd mac
- >start
+ testpmd> set fwd mac
+ testpmd> start
2. Launch vhost as client mode::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 3-4 -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 3-4 -n 4 --no-pci --file-prefix=vhost \
--vdev 'net_vhost0,iface=/tmp/sock0,client=1,queues=1' -- -i --rxq=1 --txq=1 --nb-cores=1
- >set fwd mac
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
3. Run below command to get throughput,verify the loopback throughput is not zero::
- testpmd>show port stats all
+ testpmd> show port stats all
Test Case 2: Basic test for split ring server mode
-===================================================
+---------------------------------------------------
+This case uses testpmd to test split ring with loopback virtio-user server mode.
1. Launch virtio-user as server mode::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=/tmp/sock0,server=1,queues=1 -- -i --rxq=1 --txq=1 --no-numa
>set fwd mac
>start
2. Launch vhost as client mode::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 3-4 -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 3-4 -n 4 --no-pci --file-prefix=vhost \
--vdev 'net_vhost0,iface=/tmp/sock0,client=1,queues=1' -- -i --rxq=1 --txq=1 --nb-cores=1
- >set fwd mac
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
3. Run below command to get throughput,verify the loopback throughput is not zero::
- testpmd>show port stats all
+ testpmd> show port stats all
Test Case 3: loopback reconnect test with split ring mergeable path and server mode
-===================================================================================
+-----------------------------------------------------------------------------------
+This case uses testpmd to test split ring mergeable path with loopback virtio-user server mode and reconnect vhost-user and virtio-user.
1. launch vhost as client mode with 8 queues::
- rm -rf vhost-net*
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=8' -- -i --nb-cores=2 --rxq=8 --txq=8
- >set fwd mac
- >start
+ testpmd> set fwd mac
+ testpmd> start
2. Launch virtio-user as server mode with 8 queues and check throughput can get expected::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=8,mrg_rxbuf=1,in_order=0 \
-- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=8 --txq=8
- >set fwd mac
- >set txpkts 2000,2000,2000,2000
- >start tx_first 32
- >show port stats all
+ testpmd> set fwd mac
+ testpmd> set txpkts 2000,2000,2000,2000
+ testpmd> start tx_first 32
+ testpmd> show port stats all
3. Quit vhost side testpmd, check the virtio-user side link status::
@@ -111,21 +149,21 @@ Test Case 3: loopback reconnect test with split ring mergeable path and server m
4. Relaunch vhost and send chain packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=8' -- -i --nb-cores=2 --rxq=8 --txq=8
- >set fwd mac
- >set txpkts 2000,2000,2000,2000
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> set txpkts 2000,2000,2000,2000
+ testpmd> start tx_first 32
5. Check the virtio-user side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
6. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd> stop
7. Quit virtio-user side testpmd, check the vhost side link status::
@@ -134,52 +172,52 @@ Test Case 3: loopback reconnect test with split ring mergeable path and server m
8. Relaunch virtio-user and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=8,mrg_rxbuf=1,in_order=0 \
-- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=8 --txq=8
- >set fwd mac
- >set txpkts 2000,2000,2000,2000
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> set txpkts 2000,2000,2000,2000
+ testpmd> start tx_first 32
9. Check the vhost side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
10. Port restart at vhost side by below command and check throughput can get expected::
- testpmd>stop
- testpmd>port stop 0
- testpmd>port start 0
- testpmd>set txpkts 2000,2000,2000,2000
- testpmd>start tx_first 32
- testpmd>show port stats all
+ testpmd> stop
+ testpmd> port stop 0
+ testpmd> port start 0
+ testpmd> set txpkts 2000,2000,2000,2000
+ testpmd> start tx_first 32
+ testpmd> show port stats all
11. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd>stop
Test Case 4: loopback reconnect test with split ring inorder mergeable path and server mode
-===========================================================================================
+-------------------------------------------------------------------------------------------
+This case uses testpmd to test split ring inorder mergeable path with loopback virtio-user server mode and reconnect vhost-user and virtio-user.
1. launch vhost as client mode with 2 queues::
- rm -rf vhost-net*
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start
+ testpmd> set fwd mac
+ testpmd> start
2. Launch virtio-user as server mode with 2 queues, check throughput can get expected::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=2,mrg_rxbuf=1,in_order=1 \
-- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >set txpkts 2000,2000,2000,2000
- >start tx_first 32
- >show port stats all
+ testpmd> set fwd mac
+ testpmd> set txpkts 2000,2000,2000,2000
+ testpmd> start tx_first 32
+ testpmd> show port stats all
3. Quit vhost side testpmd, check the virtio-user side link status::
@@ -188,21 +226,21 @@ Test Case 4: loopback reconnect test with split ring inorder mergeable path and
4. Relaunch vhost and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >set txpkts 2000,2000,2000,2000
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> set txpkts 2000,2000,2000,2000
+ testpmd> start tx_first 32
5. Check the virtio-user side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
6. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd> stop
7. Quit virtio-user side testpmd, check the vhost side link status::
@@ -211,51 +249,51 @@ Test Case 4: loopback reconnect test with split ring inorder mergeable path and
8. Relaunch virtio-user and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=2,mrg_rxbuf=1,in_order=1\
-- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >set txpkts 2000,2000,2000,2000
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> set txpkts 2000,2000,2000,2000
+ testpmd> start tx_first 32
9. Check the vhost side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
10. Port restart at vhost side by below command and check throughput can get expected::
- testpmd>stop
- testpmd>port stop 0
- testpmd>port start 0
- testpmd>set txpkts 2000,2000,2000,2000
- testpmd>start tx_first 32
- testpmd>show port stats all
+ testpmd> stop
+ testpmd> port stop 0
+ testpmd> port start 0
+ testpmd> set txpkts 2000,2000,2000,2000
+ testpmd> start tx_first 32
+ testpmd> show port stats all
11. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd> stop
Test Case 5: loopback reconnect test with split ring inorder non-mergeable path and server mode
-===============================================================================================
+-----------------------------------------------------------------------------------------------
+This case uses testpmd to test split ring inorder non-mergeable path with loopback virtio-user server mode and reconnect vhost-user and virtio-user.
1. launch vhost as client mode with 2 queues::
- rm -rf vhost-net*
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start
+ testpmd> set fwd mac
+ testpmd> start
2. Launch virtio-user as server mode with 2 queues check throughput can get expected::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=2,mrg_rxbuf=0,in_order=1 \
-- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
- >show port stats all
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
+ testpmd> show port stats all
3. Quit vhost side testpmd, check the virtio-user side link status::
@@ -264,20 +302,20 @@ Test Case 5: loopback reconnect test with split ring inorder non-mergeable path
4. Relaunch vhost and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
5. Check the virtio-user side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
6. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd> stop
7. Quit virtio-user side testpmd, check the vhost side link status::
@@ -286,49 +324,49 @@ Test Case 5: loopback reconnect test with split ring inorder non-mergeable path
8. Relaunch virtio-user and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=2,mrg_rxbuf=0,in_order=1 \
-- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
9. Check the vhost side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
10. Port restart at vhost side by below command and check throughput can get expected::
- testpmd>stop
- testpmd>port stop 0
- testpmd>port start 0
- testpmd>start tx_first 32
- testpmd>show port stats all
+ testpmd> stop
+ testpmd> port stop 0
+ testpmd> port start 0
+ testpmd> start tx_first 32
+ testpmd> show port stats all
11. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd> stop
Test Case 6: loopback reconnect test with split ring non-mergeable path and server mode
-=======================================================================================
+---------------------------------------------------------------------------------------
+This case uses testpmd to test split ring non-mergeable path with loopback virtio-user server mode and reconnect vhost-user and virtio-user.
1. launch vhost as client mode with 2 queues::
- rm -rf vhost-net*
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start
+ testpmd> set fwd mac
+ testpmd> start
2. Launch virtio-user as server mode with 2 queues and check throughput can get expected::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=2,mrg_rxbuf=0,in_order=0,vectorized=1 \
-- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
- >show port stats all
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
+ testpmd> show port stats all
3. Quit vhost side testpmd, check the virtio-user side link status::
@@ -337,20 +375,20 @@ Test Case 6: loopback reconnect test with split ring non-mergeable path and serv
4. Relaunch vhost and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
5. Check the virtio-user side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
6. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd> stop
7. Quit virtio-user side testpmd, check the vhost side link status::
@@ -359,49 +397,49 @@ Test Case 6: loopback reconnect test with split ring non-mergeable path and serv
8. Relaunch virtio-user and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=2,mrg_rxbuf=0,in_order=0,vectorized=1 \
-- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
9. Check the vhost side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
10. Port restart at vhost side by below command and check throughput can get expected::
- testpmd>stop
- testpmd>port stop 0
- testpmd>port start 0
- testpmd>start tx_first 32
- testpmd>show port stats all
+ testpmd> stop
+ testpmd> port stop 0
+ testpmd> port start 0
+ testpmd> start tx_first 32
+ testpmd> show port stats all
11. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd> stop
Test Case 7: loopback reconnect test with split ring vector_rx path and server mode
-===================================================================================
+-----------------------------------------------------------------------------------
+This case uses testpmd to test split ring vector_rx path with loopback virtio-user server mode and reconnect vhost-user and virtio-user.
1. launch vhost as client mode with 2 queues::
- rm -rf vhost-net*
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start
+ testpmd> set fwd mac
+ testpmd> start
2. Launch virtio-user as server mode with 2 queues and check throughput can get expected::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=2,mrg_rxbuf=0,in_order=0,vectorized=1 \
-- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
- >show port stats all
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
+ testpmd> show port stats all
3. Quit vhost side testpmd, check the virtio-user side link status::
@@ -410,20 +448,20 @@ Test Case 7: loopback reconnect test with split ring vector_rx path and server m
4. Relaunch vhost and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
5. Check the virtio-user side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
6. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd> stop
7. Quit virtio-user side testpmd, check the vhost side link status::
@@ -432,50 +470,50 @@ Test Case 7: loopback reconnect test with split ring vector_rx path and server m
8. Relaunch virtio-user and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=2,mrg_rxbuf=0,in_order=0,vectorized=1 \
-- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
9. Check the vhost side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
10. Port restart at vhost side by below command and check throughput can get expected::
- testpmd>stop
- testpmd>port stop 0
- testpmd>port start 0
- testpmd>start tx_first 32
- testpmd>show port stats all
+ testpmd> stop
+ testpmd> port stop 0
+ testpmd> port start 0
+ testpmd> start tx_first 32
+ testpmd> show port stats all
11. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd> stop
Test Case 8: loopback reconnect test with packed ring mergeable path and server mode
-====================================================================================
+------------------------------------------------------------------------------------
+This case uses testpmd to test packed ring mergeable path with loopback virtio-user server mode and reconnect vhost-user and virtio-user.
1. launch vhost as client mode with 2 queues::
- rm -rf vhost-net*
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start
+ testpmd> set fwd mac
+ testpmd> start
2. Launch virtio-user as server mode with 2 queues and check throughput can get expected::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=2,packed_vq=1,mrg_rxbuf=1,in_order=0 \
-- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >set txpkts 2000,2000,2000,2000
- >start tx_first 32
- >show port stats all
+ testpmd> set fwd mac
+ testpmd> set txpkts 2000,2000,2000,2000
+ testpmd> start tx_first 32
+ testpmd> show port stats all
3. Quit vhost side testpmd, check the virtio-user side link status::
@@ -484,21 +522,21 @@ Test Case 8: loopback reconnect test with packed ring mergeable path and server
4. Relaunch vhost and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >set txpkts 2000,2000,2000,2000
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> set txpkts 2000,2000,2000,2000
+ testpmd> start tx_first 32
5. Check the virtio-user side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
6. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd> stop
7. Quit virtio-user side testpmd, check the vhost side link status::
@@ -507,51 +545,51 @@ Test Case 8: loopback reconnect test with packed ring mergeable path and server
8. Relaunch virtio-user and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=2,packed_vq=1,mrg_rxbuf=1,in_order=0 \
-- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >set txpkts 2000,2000,2000,2000
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> set txpkts 2000,2000,2000,2000
+ testpmd> start tx_first 32
9. Check the vhost side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
10. Port restart at vhost side by below command and check throughput can get expected::
- testpmd>stop
- testpmd>port stop 0
- testpmd>port start 0
- testpmd>set txpkts 2000,2000,2000,2000
- testpmd>start tx_first 32
- testpmd>show port stats all
+ testpmd> stop
+ testpmd> port stop 0
+ testpmd> port start 0
+ testpmd> set txpkts 2000,2000,2000,2000
+ testpmd> start tx_first 32
+ testpmd> show port stats all
11. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd>stop
Test Case 9: loopback reconnect test with packed ring non-mergeable path and server mode
-========================================================================================
+----------------------------------------------------------------------------------------
+This case uses testpmd to test packed ring non-mergeable path with loopback virtio-user server mode and reconnect vhost-user and virtio-user.
1. launch vhost as client mode with 2 queues::
- rm -rf vhost-net*
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start
+ testpmd> set fwd mac
+ testpmd> start
2. Launch virtio-user as server mode with 2 queues and check throughput can get expected::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=2,packed_vq=1,mrg_rxbuf=0,in_order=0 \
-- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
- >show port stats all
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
+ testpmd> show port stats all
3. Quit vhost side testpmd, check the virtio-user side link status::
@@ -560,16 +598,16 @@ Test Case 9: loopback reconnect test with packed ring non-mergeable path and ser
4. Relaunch vhost and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
5. Check the virtio-user side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
6. Check each RX/TX queue has packets::
@@ -582,50 +620,50 @@ Test Case 9: loopback reconnect test with packed ring non-mergeable path and ser
8. Relaunch virtio-user and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=2,packed_vq=1,mrg_rxbuf=0,in_order=0 \
-- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
9. Check the vhost side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
10. Port restart at vhost side by below command and check throughput can get expected::
- testpmd>stop
- testpmd>port stop 0
- testpmd>port start 0
- testpmd>start tx_first 32
- testpmd>show port stats all
+ testpmd> stop
+ testpmd> port stop 0
+ testpmd> port start 0
+ testpmd> start tx_first 32
+ testpmd> show port stats all
11. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd> stop
Test Case 10: loopback reconnect test with packed ring inorder mergeable path and server mode
-=============================================================================================
+---------------------------------------------------------------------------------------------
+This case uses testpmd to test packed ring inorder mergeable path with loopback virtio-user server mode and reconnect vhost-user and virtio-user.
1. launch vhost as client mode with 8 queues::
- rm -rf vhost-net*
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=8' -- -i --nb-cores=2 --rxq=8 --txq=8
- >set fwd mac
- >start
+ testpmd> set fwd mac
+ testpmd> start
2. Launch virtio-user as server mode with 8 queues and check throughput can get expected::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=8,packed_vq=1,mrg_rxbuf=1,in_order=1 \
-- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=8 --txq=8
- >set fwd mac
- >set txpkts 2000,2000,2000,2000
- >start tx_first 32
- >show port stats all
+ testpmd> set fwd mac
+ testpmd> set txpkts 2000,2000,2000,2000
+ testpmd> start tx_first 32
+ testpmd> show port stats all
3. Quit vhost side testpmd, check the virtio-user side link status::
@@ -634,21 +672,21 @@ Test Case 10: loopback reconnect test with packed ring inorder mergeable path an
4. Relaunch vhost and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=8' -- -i --nb-cores=2 --rxq=8 --txq=8
- >set fwd mac
- >set txpkts 2000,2000,2000,2000
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> set txpkts 2000,2000,2000,2000
+ testpmd> start tx_first 32
5. Check the virtio-user side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
6. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd> stop
7. Quit virtio-user side testpmd, check the vhost side link status::
@@ -657,51 +695,51 @@ Test Case 10: loopback reconnect test with packed ring inorder mergeable path an
8. Relaunch virtio-user and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=8,packed_vq=1,mrg_rxbuf=1,in_order=1 \
-- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=8 --txq=8
- >set fwd mac
- >set txpkts 2000,2000,2000,2000
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> set txpkts 2000,2000,2000,2000
+ testpmd> start tx_first 32
9. Check the vhost side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
10. Port restart at vhost side by below command and check throughput can get expected::
- testpmd>stop
- testpmd>port stop 0
- testpmd>port start 0
- testpmd>set txpkts 2000,2000,2000,2000
- testpmd>start tx_first 32
- testpmd>show port stats all
+ testpmd> stop
+ testpmd> port stop 0
+ testpmd> port start 0
+ testpmd> set txpkts 2000,2000,2000,2000
+ testpmd> start tx_first 32
+ testpmd> show port stats all
11. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd> stop
Test Case 11: loopback reconnect test with packed ring inorder non-mergeable path and server mode
-=================================================================================================
+-------------------------------------------------------------------------------------------------
+This case uses testpmd to test packed ring inorder non-mergeable path with loopback virtio-user server mode and reconnect vhost-user and virtio-user.
1. launch vhost as client mode with 2 queues::
- rm -rf vhost-net*
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start
+ testpmd> set fwd mac
+ testpmd> start
2. Launch virtio-user as server mode with 2 queues and check throughput can get expected::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=2,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1 \
-- -i --rx-offloads=0x10 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
- >show port stats all
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
+ testpmd> show port stats all
3. Quit vhost side testpmd, check the virtio-user side link status::
@@ -710,20 +748,20 @@ Test Case 11: loopback reconnect test with packed ring inorder non-mergeable pat
4. Relaunch vhost and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
5. Check the virtio-user side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
6. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd> stop
7. Quit virtio-user side testpmd, check the vhost side link status::
@@ -732,49 +770,49 @@ Test Case 11: loopback reconnect test with packed ring inorder non-mergeable pat
8. Relaunch virtio-user and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=2,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1 \
-- -i --rx-offloads=0x10 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
9. Check the vhost side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
10. Port restart at vhost side by below command and check throughput can get expected::
- testpmd>stop
- testpmd>port stop 0
- testpmd>port start 0
- testpmd>start tx_first 32
- testpmd>show port stats all
+ testpmd> stop
+ testpmd> port stop 0
+ testpmd> port start 0
+ testpmd> start tx_first 32
+ testpmd> show port stats all
11. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd> stop
Test Case 12: loopback reconnect test with packed ring vectorized path and server mode
-=======================================================================================
+--------------------------------------------------------------------------------------
+This case uses testpmd to test packed ring vectorized path with loopback virtio-user server mode and reconnect vhost-user and virtio-user.
1. launch vhost as client mode with 2 queues::
- rm -rf vhost-net*
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --log-level=pmd.net.vhost.driver,8 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --log-level=pmd.net.vhost.driver,8 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start
+ testpmd> set fwd mac
+ testpmd> start
2. Launch virtio-user as server mode with 2 queues and check throughput can get expected::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --log-level=pmd.net.virtio.driver,8 --no-pci --file-prefix=virtio --force-max-simd-bitwidth=512 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --log-level=pmd.net.virtio.driver,8 --no-pci --file-prefix=virtio --force-max-simd-bitwidth=512 \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=2,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1 \
-- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
- >show port stats all
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
+ testpmd> show port stats all
3. Quit vhost side testpmd, check the virtio-user side link status::
@@ -783,20 +821,20 @@ Test Case 12: loopback reconnect test with packed ring vectorized path and serve
4. Relaunch vhost and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xe -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
5. Check the virtio-user side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
6. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd> stop
7. Quit virtio-user side testpmd, check the vhost side link status::
@@ -805,46 +843,52 @@ Test Case 12: loopback reconnect test with packed ring vectorized path and serve
8. Relaunch virtio-user and send packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio --force-max-simd-bitwidth=512 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-7 --no-pci --file-prefix=virtio --force-max-simd-bitwidth=512 \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=1,queues=2,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1 \
-- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2 --txq=2
- >set fwd mac
- >start tx_first 32
+ testpmd> set fwd mac
+ testpmd> start tx_first 32
9. Check the vhost side link status and run below command to get throughput, check throughput can get expected::
testpmd> show port info 0
#it should show up"
- testpmd>show port stats all
+ testpmd> show port stats all
10. Port restart at vhost side by below command and check throughput can get expected::
- testpmd>stop
- testpmd>port stop 0
- testpmd>port start 0
- testpmd>start tx_first 32
- testpmd>show port stats all
+ testpmd> stop
+ testpmd> port stop 0
+ testpmd> port start 0
+ testpmd> start tx_first 32
+ testpmd> show port stats all
11. Check each RX/TX queue has packets::
- testpmd>stop
+ testpmd>stop
Test Case 13: loopback packed ring all path payload check test using server mode and multi-queues
-=================================================================================================
+-------------------------------------------------------------------------------------------------
+This case uses testpmd to test packed ring all path with loopback virtio-user server mode and multi-queues to check payload.
1. launch vhost::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 32-33 --no-pci --file-prefix=vhost -n 4 --vdev 'eth_vhost0,iface=vhost-net0,queues=8,client=1' -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 32-33 --no-pci --file-prefix=vhost -n 4 \
+ --vdev 'eth_vhost0,iface=vhost-net0,queues=8,client=1' -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
2. Launch virtio-user with packed ring mergeable inorder path::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio --no-pci --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=1,in_order=1,packed_vq=1,server=1 -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd> set fwd csum
- testpmd> start
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio --no-pci \
+ --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=1,in_order=1,packed_vq=1,server=1 \
+ -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
+ testpmd> set fwd csum
+ testpmd> start
3. Attach pdump secondary process to primary process by same file-prefix::
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio -- --pdump 'device_id=net_virtio_user0,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
+ ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio -- \
+ --pdump 'device_id=net_virtio_user0,queue=0,rx-dev=./pdump-virtio-rx-q0.pcap,mbuf-size=8000'
+ --pdump 'device_id=net_virtio_user0,queue=1,rx-dev=./pdump-virtio-rx-q1.pcap,mbuf-size=8000'
4. Send large pkts from vhost::
@@ -860,29 +904,31 @@ Test Case 13: loopback packed ring all path payload check test using server mode
7. Quit and relaunch virtio with packed ring mergeable path as below::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=1,in_order=0,packed_vq=1,server=1 -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd> set fwd csum
- testpmd> start
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
+ --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=1,in_order=0,packed_vq=1,server=1 \
+ -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
+ testpmd> set fwd csum
+ testpmd> start
8. Rerun step 3-6.
9. Quit and relaunch virtio with packed ring non-mergeable path as below::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=0,packed_vq=1,server=1 -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd> set fwd csum
- testpmd> start
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
+ --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=0,packed_vq=1,server=1 \
+ -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
+ testpmd> set fwd csum
+ testpmd> start
10. Rerun step 3.
11. Send pkts from vhost::
- testpmd> set fwd csum
- testpmd> set txpkts 64,128,256,512
- testpmd> set burst 1
- testpmd> start tx_first 1
- testpmd> stop
+ testpmd> set fwd csum
+ testpmd> set txpkts 64,128,256,512
+ testpmd> set burst 1
+ testpmd> start tx_first 1
+ testpmd> stop
12. Quit pdump, check all the packets length are 960 Byte in the pcap file and the payload in receive packets are same.
@@ -890,50 +936,56 @@ Test Case 13: loopback packed ring all path payload check test using server mode
14. Quit and relaunch virtio with packed ring inorder non-mergeable path as below::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=1,packed_vq=1,server=1 -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd> set fwd csum
- testpmd> start
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
+ --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=1,packed_vq=1,server=1 \
+ -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
+ testpmd> set fwd csum
+ testpmd> start
15. Rerun step 10-13.
16. Quit and relaunch virtio with packed ring vectorized path as below::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci --force-max-simd-bitwidth=512 \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=1,vectorized=1,packed_vq=1,server=1 -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd> set fwd csum
- testpmd> start
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci --force-max-simd-bitwidth=512 \
+ --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=1,vectorized=1,packed_vq=1,server=1 \
+ -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
+ testpmd> set fwd csum
+ testpmd> start
17 Rerun step 10-13.
18. Quit and relaunch virtio with packed ring vectorized path and ring size is not power of 2 as below::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci --force-max-simd-bitwidth=512 \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=1,vectorized=1,packed_vq=1,queue_size=1025,server=1 \
- -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1025 --rxd=1025
- testpmd> set fwd csum
- testpmd> start
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci --force-max-simd-bitwidth=512 \
+ --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=1,vectorized=1,packed_vq=1,queue_size=1025,server=1 \
+ -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1025 --rxd=1025
+ testpmd> set fwd csum
+ testpmd> start
19. Rerun step 10-13.
Test Case 14: loopback split ring all path payload check test using server mode and multi-queues
-================================================================================================
+------------------------------------------------------------------------------------------------
+This case uses testpmd to test split ring all path with loopback virtio-user server mode and multi-queues to check payload.
1. Launch vhost::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 32-33 --no-pci --file-prefix=vhost -n 4 --vdev 'eth_vhost0,iface=vhost-net0,queues=8,client=1' -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 32-33 --no-pci --file-prefix=vhost -n 4 \
+ --vdev 'eth_vhost0,iface=vhost-net0,queues=8,client=1' -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
2. Launch virtio-user with split ring mergeable inorder path::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
--vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=1,in_order=1,server=1 \
-- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd>set fwd csum
- testpmd>start
+ testpmd>set fwd csum
+ testpmd>start
3. Attach pdump secondary process to primary process by same file-prefix::
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio-user0 -- --pdump 'device_id=net_virtio_user0,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
+ ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio -- \
+ --pdump 'device_id=net_virtio_user0,queue=0,rx-dev=./pdump-virtio-rx-q0.pcap,mbuf-size=8000'
+ --pdump 'device_id=net_virtio_user0,queue=1,rx-dev=./pdump-virtio-rx-q1.pcap,mbuf-size=8000'
4. Send large pkts from vhost::
@@ -949,31 +1001,31 @@ Test Case 14: loopback split ring all path payload check test using server mode
7. Quit and relaunch virtio with split ring mergeable path as below::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
--vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=1,in_order=0,server=1 \
-- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd>set fwd csum
- testpmd>start
+ testpmd>set fwd csum
+ testpmd>start
8. Rerun steps 3-6.
9. Quit and relaunch virtio with split ring non-mergeable path as below::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
--vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=0,server=1 \
-- -i --enable-hw-vlan-strip --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd>set fwd csum
- testpmd>start
+ testpmd>set fwd csum
+ testpmd>start
10. Rerun step 3.
11. Send pkts from vhost::
- testpmd> set fwd csum
- testpmd> set txpkts 64,128,256,512
- testpmd> set burst 1
- testpmd> start tx_first 1
- testpmd> stop
+ testpmd> set fwd csum
+ testpmd> set txpkts 64,128,256,512
+ testpmd> set burst 1
+ testpmd> start tx_first 1
+ testpmd> stop
12. Quit pdump, check all the packets length are 960 Byte in the pcap file and the payload in receive packets are same.
@@ -981,220 +1033,20 @@ Test Case 14: loopback split ring all path payload check test using server mode
14. Quit and relaunch virtio with split ring inorder non-mergeable path as below::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=1,server=1 \
- -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd>set fwd csum
- testpmd>start
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
+ --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=1,server=1 \
+ -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
+ testpmd>set fwd csum
+ testpmd>start
15. Rerun step 10-13.
16. Quit and relaunch virtio with split ring vectorized path as below::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=0,vectorized=1,server=1 \
- -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd>set fwd csum
- testpmd>start
-
-17. Rerun step 10-13.
-
-Test Case 15: loopback packed ring all path cbdma test payload check with server mode and multi-queues
-======================================================================================================
-
-1. bind 8 cbdma port to vfio-pci and launch vhost::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 32-33 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net0,queues=8,client=1,dmas=[txq0@0000:80:04.0;txq1@0000:80:04.1;txq2@0000:80:04.2;txq3@0000:80:04.3;txq4@0000:80:04.4;txq5@0000:80:04.5;txq6@0000:80:04.6;txq7@0000:80:04.7]' \
- --iova=va -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
-
-2. Launch virtio-user with packed ring mergeable inorder path::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=1,in_order=1,packed_vq=1,server=1
- -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd>set fwd csum
- testpmd>start
-
-3. Attach pdump secondary process to primary process by same file-prefix::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio-user0 -- --pdump 'device_id=net_virtio_user0,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-4. Send large pkts from vhost, check loopback performance can get expected and each queue can receive packets::
-
- testpmd> vhost enable tx all
- testpmd> set fwd csum
- testpmd> set txpkts 64,64,64,2000,2000,2000
- testpmd> set burst 1
- testpmd> start tx_first 1
- testpmd> stop
-
-5. Quit pdump, check all the packets length are 6192 Byte in the pcap file, and the payload in receive packets are same.
-
-6. Quit and relaunch vhost and rerun step3-5.
-
-7. Quit and relaunch virtio with packed ring mergeable path as below::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=1,in_order=0,packed_vq=1,server=1 \
- -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd>set fwd csum
- testpmd>start
-
-8. Rerun steps 3-6.
-
-9. Quit and relaunch virtio with packed ring non-mergeable path as below::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=0,packed_vq=1,server=1 \
- -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd>set fwd csum
- testpmd>start
-
-10. Rerun step 3.
-
-11. Send pkts from vhost::
-
- testpmd> vhost enable tx all
- testpmd> set fwd csum
- testpmd> set txpkts 64,128,256,512
- testpmd> set burst 1
- testpmd> start tx_first 1
- testpmd> stop
-
-12. Quit pdump, check all the packets length are 960 Byte in the pcap file and the payload in receive packets are same.
-
-13. Quit and relaunch vhost and rerun step 10-12.
-
-14. Quit and relaunch virtio with packed ring inorder non-mergeable path as below::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=1,packed_vq=1,server=1 \
- -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd>set fwd csum
- testpmd>start
-
-15. Rerun step 10-13.
-
-16. Quit and relaunch virtio with packed ring vectorized path as below::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci --force-max-simd-bitwidth=512 \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=1,packed_vq=1,vectorized=1,server=1 \
- -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd>set fwd csum
- testpmd>start
-
-17. Rerun step 10-13.
-
-18. Quit and relaunch virtio with packed ring vectorized path and ring size is not power of 2 as below::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci --force-max-simd-bitwidth=512 \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=1,packed_vq=1,vectorized=1,queue_size=1025,server=1 \
- -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1025 --rxd=1025
- testpmd>set fwd csum
- testpmd>start
-
-19. Rerun step 10-13.
-
-20. Quit and relaunch vhost w/ iova=pa::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 2-3 --file-prefix=vhost -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net0,queues=8,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1;txq2@0000:00:04.2;txq3@0000:00:04.3;txq4@0000:00:04.4;txq5@0000:00:04.5;txq6@0000:00:04.6;txq7@0000:00:04.7]' \
- --iova=pa -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
-
-21. Quit virtio and rerun steps 2-19.
-
-Test Case 16: loopback split ring all path cbdma test payload check with server mode and multi-queues
-=====================================================================================================
-
-1. bind 8 cbdma port to vfio-pci and launch vhost::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 32-33 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net0,queues=8,client=1,dmas=[txq0@0000:80:04.0;txq1@0000:80:04.1;txq2@0000:80:04.2;txq3@0000:80:04.3;txq4@0000:80:04.4;txq5@0000:80:04.5;txq6@0000:80:04.6;txq7@0000:80:04.7]' \
- --iova=va -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
-
-2. Launch virtio-user with split ring mergeable inorder path::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=1,in_order=1,server=1 \
- -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd>set fwd csum
- testpmd>start
-
-3. Attach pdump secondary process to primary process by same file-prefix::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio-user0 -- --pdump 'device_id=net_virtio_user0,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-4. Send large pkts from vhost::
-
- testpmd> vhost enable tx all
- testpmd> set fwd csum
- testpmd> set txpkts 64,64,64,2000,2000,2000
- testpmd> set burst 1
- testpmd> start tx_first 1
- testpmd> stop
-
-5. Quit pdump, check all the packets length are 6192 Byte in the pcap file and the payload in receive packets are same.
-
-6. Quit and relaunch vhost and rerun step3-5.
-
-7. Quit and relaunch virtio with split ring mergeable path as below::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=1,in_order=0,server=1 \
- -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd>set fwd csum
- testpmd>start
-
-8. Rerun steps 3-6.
-
-9. Quit and relaunch virtio with split ring non-mergeable path as below::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=0,server=1 \
- -- -i --enable-hw-vlan-strip --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd>set fwd csum
- testpmd>start
-
-10. Rerun step 3.
-
-11. Send pkts from vhost::
-
- testpmd> vhost enable tx all
- testpmd> set fwd csum
- testpmd> set txpkts 64,128,256,512
- testpmd> set burst 1
- testpmd> start tx_first 1
- testpmd> stop
-
-12. Quit pdump, check all the packets length are 960 Byte in the pcap file and the payload in receive packets are same.
-
-13. Quit and relaunch vhost and rerun step 10-12.
-
-14. Quit and relaunch virtio with split ring inorder non-mergeable path as below::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=1,server=1 \
- -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd>set fwd csum
- testpmd>start
-
-15. Rerun step 10-13.
-
-16. Quit and relaunch virtio with split ring vectorized path as below::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
- --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=0,vectorized=1,server=1 \
- -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
- testpmd>set fwd csum
- testpmd>start
-
-17. Rerun step 10-13.
-
-18. Quit and relaunch vhost w/ iova=pa::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 2-3 --file-prefix=vhost -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net0,queues=8,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1;txq2@0000:00:04.2;txq3@0000:00:04.3;txq4@0000:00:04.4;txq5@0000:00:04.5;txq6@0000:00:04.6;txq7@0000:00:04.7]' \
- --iova=pa -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 30,31 -n 4 --file-prefix=virtio-user0 --no-pci \
+ --vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=8,mrg_rxbuf=0,in_order=0,vectorized=1,server=1 \
+ -- -i --nb-cores=1 --rxq=8 --txq=8 --txd=1024 --rxd=1024
+ testpmd>set fwd csum
+ testpmd>start
-19. Quit virtio and rerun steps 2-17.
+17. Rerun step 10-13.
\ No newline at end of file
--
2.25.1
reply other threads:[~2022-04-15 3:25 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=20220415032516.251365-1-weix.ling@intel.com \
--to=weix.ling@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).