* [PATCH V1 1/5] test_plans/vm2vm_virtio_user_test_plan: delete case 12-23
@ 2022-04-02 6:34 Wei Ling
0 siblings, 0 replies; only message in thread
From: Wei Ling @ 2022-04-02 6:34 UTC (permalink / raw)
To: dts; +Cc: Wei Ling
As commit 53d3f4778c(vhost: integrate dmadev in asynchronous data-path),
delete cbdma related case 12-23 form tests/vm2vm_virtio_user_test_plan.
Signed-off-by: Wei Ling <weix.ling@intel.com>
---
test_plans/vm2vm_virtio_user_test_plan.rst | 1145 ++++----------------
1 file changed, 193 insertions(+), 952 deletions(-)
diff --git a/test_plans/vm2vm_virtio_user_test_plan.rst b/test_plans/vm2vm_virtio_user_test_plan.rst
index c3aa328e..ca58b13f 100644
--- a/test_plans/vm2vm_virtio_user_test_plan.rst
+++ b/test_plans/vm2vm_virtio_user_test_plan.rst
@@ -41,39 +41,80 @@ This test plan test several features in VM2VM topo:
1. Split virtqueue vm2vm in-order mergeable, in-order non-mergeable, mergeable, non-mergeable, vector_rx path test.
2. Packed virtqueue vm2vm in-order mergeable, in-order non-mergeable, mergeable, non-mergeable, vectorized path (ringsize not powerof 2) test.
3. Split ring and packed ring vm2vm test when vhost enqueue operation with multi-CBDMA channels.
-4. Test indirect descriptor feature. For example, the split ring mergeable inorder path use non-indirect descriptor, the 2000,2000,2000,2000 chain packets will need 4 consequent ring, still need one ring put header.
+4. Test indirect descriptor feature. For example, the split ring mergeable inorder path use non-indirect descriptor,
+the 2000,2000,2000,2000 chain packets will need 4 consequent ring, still need one ring put header.
the split ring mergeable path use indirect descriptor, the 2000,2000,2000,2000 chain packets will only occupy one ring.
-Test flow
+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
+
+2. Get the PCI device ID and DMA device ID of DUT, for example, 0000:18:00.0 is PCI device ID::
+
+ <dpdk dir># ./usertools/dpdk-devbind.py -s
+
+ Network devices using kernel driver
+ ===================================
+ 0000:18:00.0 'Device 159b' if=ens785f0 drv=ice unused=vfio-pci
+
+Test case
=========
-Virtio-user <-> Vhost-user <-> Testpmd <-> Vhost-user <-> Virtio-user
+
+Common steps
+------------
+1. Attach pdump secondary process to primary process by same file-prefix::
+
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio1 \
+ -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
+
Test Case 1: packed virtqueue vm2vm mergeable path test
-=======================================================
+-------------------------------------------------------
+This case uses testpmd and pdump to test of 2 virtio-user with packed ring mergeable path forward packets.
1. Launch vhost by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
--vdev 'eth_vhost0,iface=vhost-net,queues=1' --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
-i --nb-cores=1 --no-flush-rx
2. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
- --no-pci --file-prefix=virtio1 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 --no-pci --file-prefix=virtio1 \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=1,mrg_rxbuf=1,in_order=0 \
-- -i --nb-cores=1 --txd=256 --rxd=256
testpmd>set fwd rxonly
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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
+3. Start pdump to capture virtio-user1 packets, as common step 1.
4. Launch virtio-user0 and send 8k length packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
- --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=1,packed_vq=1,mrg_rxbuf=1,in_order=0 \
-- -i --nb-cores=1 --txd=256 --rxd=256
testpmd>set burst 1
@@ -95,19 +136,19 @@ Test Case 1: packed virtqueue vm2vm mergeable path test
7. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
- --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
- -i --nb-cores=1 --no-flush-rx
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
+ --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- -i --nb-cores=1 --no-flush-rx
testpmd>set fwd rxonly
testpmd>start
8. Attach pdump secondary process to primary process by same file-prefix::
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost \
+ -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
9. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 --no-pci \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 --no-pci \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=1,mrg_rxbuf=1,in_order=0 \
-- -i --nb-cores=1 --txd=256 --rxd=256
testpmd>set burst 1
@@ -124,33 +165,32 @@ Test Case 1: packed virtqueue vm2vm mergeable path test
testpmd>set txpkts 2000
testpmd>start tx_first 1
-10. Quit pdump,vhost received packets in pdump-vhost-rx.pcap, check headers and payload of all packets in pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
+10. Quit pdump,vhost received packets in pdump-vhost-rx.pcap, check headers and payload of all packets in
+ pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
Test Case 2: packed virtqueue vm2vm inorder mergeable path test
-===============================================================
+---------------------------------------------------------------
+This case uses testpmd and pdump to test of 2 virtio-user with packed ring inorder mergeable path forward packets.
1. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
--vdev 'eth_vhost0,iface=vhost-net,queues=1' --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
-i --nb-cores=1 --no-flush-rx
2. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
- --no-pci --file-prefix=virtio1 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 --no-pci --file-prefix=virtio1 \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=1,mrg_rxbuf=1,in_order=1 \
-- -i --nb-cores=1 --txd=256 --rxd=256
testpmd>set fwd rxonly
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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=/root/pdump-rx.pcap,mbuf-size=8000'
+3. Start pdump to capture virtio-user1 packets, as common step 1.
4. Launch virtio-user0 and send 8k length packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
--no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=1,packed_vq=1,mrg_rxbuf=1,in_order=1 \
-- -i --nb-cores=1 --txd=256 --rxd=256
@@ -168,19 +208,19 @@ Test Case 2: packed virtqueue vm2vm inorder mergeable path test
6. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
- --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
- -i --nb-cores=1 --no-flush-rx
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
+ --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- -i --nb-cores=1 --no-flush-rx
testpmd>set fwd rxonly
testpmd>start
7. Attach pdump secondary process to primary process by same file-prefix::
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost \
+ -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
8. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
--no-pci \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=1,mrg_rxbuf=1,in_order=1 \
-- -i --nb-cores=1 --txd=256 --rxd=256
@@ -194,31 +234,31 @@ Test Case 2: packed virtqueue vm2vm inorder mergeable path test
testpmd>set txpkts 2000,2000,2000,2000
testpmd>start tx_first 1
-9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap, check headers and payload of all packets in pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
+9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap, check headers and payload of all packets in
+ pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
Test Case 3: packed virtqueue vm2vm non-mergeable path test
-===========================================================
+-----------------------------------------------------------
+This case uses testpmd and pdump to test of 2 virtio-user with packed ring non-mergeable path forward packets.
1. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
--vdev 'eth_vhost0,iface=vhost-net,queues=1' --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
-i --nb-cores=1 --no-flush-rx
2. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
--no-pci --file-prefix=virtio1 \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=1,mrg_rxbuf=0,in_order=0 \
-- -i --nb-cores=1 --txd=256 --rxd=256
-3. Attach pdump secondary process to primary process by same file-prefix::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=/root/pdump-rx.pcap,mbuf-size=8000'
+3. Start pdump to capture virtio-user1 packets, as common step 1.
4. Launch virtio-user0 and send 8k length packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
--no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=1,packed_vq=1,mrg_rxbuf=0,in_order=0 \
-- -i --nb-cores=1 --txd=256 --rxd=256
@@ -235,7 +275,7 @@ Test Case 3: packed virtqueue vm2vm non-mergeable path test
6. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
-i --nb-cores=1 --no-flush-rx
testpmd>set fwd rxonly
@@ -243,11 +283,12 @@ Test Case 3: packed virtqueue vm2vm non-mergeable path test
7. Attach pdump secondary process to primary process by same file-prefix::
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost \
+ -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
8. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
--no-pci \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=1,mrg_rxbuf=0,in_order=0 \
-- -i --nb-cores=1 --txd=256 --rxd=256
@@ -257,33 +298,33 @@ Test Case 3: packed virtqueue vm2vm non-mergeable path test
testpmd>set burst 32
testpmd>start tx_first 7
-9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap, check headers and payload of all packets in pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
+9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap, check headers and payload of all packets in
+ pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
Test Case 4: packed virtqueue vm2vm inorder non-mergeable path test
-===================================================================
+-------------------------------------------------------------------
+This case uses testpmd and pdump to test of 2 virtio-user with packed ring inorder non-mergeable path forward packets.
1. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
--vdev 'eth_vhost0,iface=vhost-net,queues=1' --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
-i --nb-cores=1 --no-flush-rx
2. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
--no-pci --file-prefix=virtio1 \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1 \
-- -i --rx-offloads=0x10 --nb-cores=1 --txd=256 --rxd=256
testpmd>set fwd rxonly
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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=/root/pdump-rx.pcap,mbuf-size=8000'
+3. Start pdump to capture virtio-user1 packets, as common step 1.
4. Launch virtio-user0 and send 8k length packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
--no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=1,packed_vq=1,mrg_rxbuf=0,in_order=1,packed_vec=1 \
-- -i --rx-offloads=0x10 --nb-cores=1 --txd=256 --rxd=256
@@ -300,7 +341,7 @@ Test Case 4: packed virtqueue vm2vm inorder non-mergeable path test
6. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
-i --nb-cores=1 --no-flush-rx
testpmd>set fwd rxonly
@@ -308,11 +349,12 @@ Test Case 4: packed virtqueue vm2vm inorder non-mergeable path test
7. Attach pdump secondary process to primary process by same file-prefix::
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost \
+ -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
8. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
--no-pci \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=1,mrg_rxbuf=0,in_order=1,packed_vec=1 \
-- -i --rx-offloads=0x10 --nb-cores=1 --txd=256 --rxd=256
@@ -322,33 +364,33 @@ Test Case 4: packed virtqueue vm2vm inorder non-mergeable path test
testpmd>set burst 32
testpmd>start tx_first 7
-9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap,check headers and payload of all packets in pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
+9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap,check headers and payload of all packets in
+ pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
Test Case 5: split virtqueue vm2vm mergeable path test
-======================================================
+------------------------------------------------------
+This case uses testpmd and pdump to test of 2 virtio-user with split ring mergeable path forward packets.
1. Launch vhost by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
--vdev 'eth_vhost0,iface=vhost-net,queues=1' --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
-i --nb-cores=1 --no-flush-rx
2. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
--no-pci --file-prefix=virtio1 \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=0,mrg_rxbuf=1,in_order=0 \
-- -i --nb-cores=1 --txd=256 --rxd=256
testpmd>set fwd rxonly
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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
+3. Start pdump to capture virtio-user1 packets, as common step 1.
4. Launch virtio-user0 and send 8k length packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
--no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=1,packed_vq=0,mrg_rxbuf=1,in_order=0 \
-- -i --nb-cores=1 --txd=256 --rxd=256
@@ -371,7 +413,7 @@ Test Case 5: split virtqueue vm2vm mergeable path test
7. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
-i --nb-cores=1 --no-flush-rx
testpmd>set fwd rxonly
@@ -379,11 +421,12 @@ Test Case 5: split virtqueue vm2vm mergeable path test
8. Attach pdump secondary process to primary process by same file-prefix::
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost \
+ -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
9. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
--no-pci \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=0,mrg_rxbuf=1,in_order=0 \
-- -i --nb-cores=1 --txd=256 --rxd=256
@@ -401,33 +444,33 @@ Test Case 5: split virtqueue vm2vm mergeable path test
testpmd>set txpkts 2000
testpmd>start tx_first 1
-9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap, check headers and payload of all packets in pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
+9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap, check headers and payload of all packets in
+ pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
Test Case 6: split virtqueue vm2vm inorder mergeable path test
-==============================================================
+--------------------------------------------------------------
+This case uses testpmd and pdump to test of 2 virtio-user with split ring inorder mergeable path forward packets.
1. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
--vdev 'eth_vhost0,iface=vhost-net,queues=1' --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
-i --nb-cores=1 --no-flush-rx
2. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
--no-pci --file-prefix=virtio1 \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=0,mrg_rxbuf=1,in_order=1 \
-- -i --nb-cores=1 --txd=256 --rxd=256
testpmd>set fwd rxonly
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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=/root/pdump-rx.pcap,mbuf-size=8000'
+3. Start pdump to capture virtio-user1 packets, as common step 1.
4. Launch virtio-user0 and send 8k length packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
--no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=1,packed_vq=0,mrg_rxbuf=1,in_order=1 \
-- -i --nb-cores=1 --txd=256 --rxd=256
@@ -444,7 +487,7 @@ Test Case 6: split virtqueue vm2vm inorder mergeable path test
6. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
-i --nb-cores=1 --no-flush-rx
testpmd>set fwd rxonly
@@ -452,11 +495,12 @@ Test Case 6: split virtqueue vm2vm inorder mergeable path test
7. Attach pdump secondary process to primary process by same file-prefix::
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost \
+ -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
8. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
--no-pci \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=0,mrg_rxbuf=1,in_order=1 \
-- -i --nb-cores=1 --txd=256 --rxd=256
@@ -470,31 +514,31 @@ Test Case 6: split virtqueue vm2vm inorder mergeable path test
testpmd>set txpkts 2000,2000,2000,2000
testpmd>start tx_first 1
-9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap,check headers and payload of all packets in pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
+9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap,check headers and payload of all packets in
+ pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
Test Case 7: split virtqueue vm2vm non-mergeable path test
-==========================================================
+----------------------------------------------------------
+This case uses testpmd and pdump to test of 2 virtio-user with split ring non-mergeable path forward packets.
1. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
--vdev 'eth_vhost0,iface=vhost-net,queues=1' --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
-i --nb-cores=1 --no-flush-rx
2. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
--no-pci --file-prefix=virtio1 \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=0,mrg_rxbuf=0,in_order=0 \
-- -i --nb-cores=1 --txd=256 --rxd=256 --enable-hw-vlan-strip
-3. Attach pdump secondary process to primary process by same file-prefix::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=/root/pdump-rx.pcap,mbuf-size=8000'
+3. Start pdump to capture virtio-user1 packets, as common step 1.
4. Launch virtio-user0 and send 8k length packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
--no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=1,packed_vq=0,mrg_rxbuf=0,in_order=0 \
-- -i --nb-cores=1 --txd=256 --rxd=256 --enable-hw-vlan-strip
@@ -511,19 +555,19 @@ Test Case 7: split virtqueue vm2vm non-mergeable path test
6. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
- --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
- -i --nb-cores=1 --no-flush-rx
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
+ --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- -i --nb-cores=1 --no-flush-rx
testpmd>set fwd rxonly
testpmd>start
7. Attach pdump secondary process to primary process by same file-prefix::
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost \
+ -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
8. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
--no-pci \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=0,mrg_rxbuf=0,in_order=0 \
-- -i --nb-cores=1 --txd=256 --rxd=256 --enable-hw-vlan-strip
@@ -533,33 +577,33 @@ Test Case 7: split virtqueue vm2vm non-mergeable path test
testpmd>set burst 32
testpmd>start tx_first 7
-9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap,check headers and payload of all packets in pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
+9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap,check headers and payload of all packets in
+ pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
Test Case 8: split virtqueue vm2vm inorder non-mergeable path test
-==================================================================
+------------------------------------------------------------------
+This case uses testpmd and pdump to test of 2 virtio-user with split ring inorder non-mergeable path forward packets
1. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
--vdev 'eth_vhost0,iface=vhost-net,queues=1' --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
-i --nb-cores=1 --no-flush-rx
2. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
--no-pci --file-prefix=virtio1 \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=0,mrg_rxbuf=0,in_order=1 \
-- -i --nb-cores=1 --txd=256 --rxd=256
testpmd>set fwd rxonly
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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=/root/pdump-rx.pcap,mbuf-size=8000'
+3. Start pdump to capture virtio-user1 packets, as common step 1.
4. Launch virtio-user0 and send 8k length packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
--no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=1,packed_vq=0,mrg_rxbuf=0,in_order=1 \
-- -i --nb-cores=1 --txd=256 --rxd=256
@@ -576,7 +620,7 @@ Test Case 8: split virtqueue vm2vm inorder non-mergeable path test
6. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
--vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
-i --nb-cores=1 --no-flush-rx
testpmd>set fwd rxonly
@@ -584,11 +628,12 @@ Test Case 8: split virtqueue vm2vm inorder non-mergeable path test
7. Attach pdump secondary process to primary process by same file-prefix::
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost \
+ -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
8. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
--no-pci \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=0,mrg_rxbuf=0,in_order=1 \
-- -i --nb-cores=1 --txd=256 --rxd=256
@@ -598,32 +643,30 @@ Test Case 8: split virtqueue vm2vm inorder non-mergeable path test
testpmd>set burst 32
testpmd>start tx_first 7
-9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap,check headers and payload of all packets in pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
+9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap,check headers and payload of all packets in
+ pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
Test Case 9: split virtqueue vm2vm vector_rx path test
-======================================================
+------------------------------------------------------
+This case uses testpmd and pdump to test of 2 virtio-user with split ring vector_rx path forward packets.
1. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
--vdev 'eth_vhost0,iface=vhost-net,queues=1' --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
-i --nb-cores=1 --no-flush-rx
2. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
- --no-pci --file-prefix=virtio1 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 --no-pci --file-prefix=virtio1 \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=0,mrg_rxbuf=0,in_order=0,vectorized=1,queue_size=256 \
-- -i --nb-cores=1 --txd=256 --rxd=256
-3. Attach pdump secondary process to primary process by same file-prefix::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=/root/pdump-rx.pcap,mbuf-size=8000'
+3. Start pdump to capture virtio-user1 packets, as common step 1.
4. Launch virtio-user0 and send 8k length packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
- --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=1,packed_vq=0,mrg_rxbuf=0,in_order=0,vectorized=1,queue_size=256 \
-- -i --nb-cores=1 --txd=256 --rxd=256
testpmd>set burst 1
@@ -639,20 +682,19 @@ Test Case 9: split virtqueue vm2vm vector_rx path test
6. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
- --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
- -i --nb-cores=1 --no-flush-rx
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
+ --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- -i --nb-cores=1 --no-flush-rx
testpmd>set fwd rxonly
testpmd>start
7. Attach pdump secondary process to primary process by same file-prefix::
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost \
+ -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
8. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
- --no-pci \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 --no-pci \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=0,mrg_rxbuf=0,in_order=0,vectorized=1,queue_size=256 \
-- -i --nb-cores=1 --txd=256 --rxd=256
testpmd>set burst 1
@@ -661,33 +703,33 @@ Test Case 9: split virtqueue vm2vm vector_rx path test
testpmd>set burst 32
testpmd>start tx_first 7
-9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap,check headers and payload of all packets in pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
+9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap,check headers and payload of all packets in
+ pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
Test Case 10: packed virtqueue vm2vm vectorized path test
-=========================================================
+---------------------------------------------------------
+This case uses testpmd and pdump to test of 2 virtio-user with packed ring vectorized path forward packets.
1. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
--vdev 'eth_vhost0,iface=vhost-net,queues=1' --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
-i --nb-cores=1 --no-flush-rx
2. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
--no-pci --file-prefix=virtio1 --force-max-simd-bitwidth=512 \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1,queue_size=256 \
-- -i --nb-cores=1 --txd=256 --rxd=256
testpmd>set fwd rxonly
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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=/root/pdump-rx.pcap,mbuf-size=8000'
+3. Start pdump to capture virtio-user1 packets, as common step 1.
4. Launch virtio-user0 and send 8k length packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
--no-pci --file-prefix=virtio --force-max-simd-bitwidth=512 \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=1,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1,queue_size=256 \
-- -i --nb-cores=1 --txd=256 --rxd=256
@@ -704,19 +746,19 @@ Test Case 10: packed virtqueue vm2vm vectorized path test
6. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
- --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
- -i --nb-cores=1 --no-flush-rx
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
+ --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- -i --nb-cores=1 --no-flush-rx
testpmd>set fwd rxonly
testpmd>start
7. Attach pdump secondary process to primary process by same file-prefix::
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost \
+ -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
8. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
--no-pci --force-max-simd-bitwidth=512 \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1,queue_size=256 \
-- -i --nb-cores=1 --txd=256 --rxd=256
@@ -726,33 +768,33 @@ Test Case 10: packed virtqueue vm2vm vectorized path test
testpmd>set burst 32
testpmd>start tx_first 7
-9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap,check headers and payload of all packets in pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
+9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap,check headers and payload of all packets in
+ pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
Test Case 11: packed virtqueue vm2vm vectorized path test with ring size is not power of 2
-==========================================================================================
+------------------------------------------------------------------------------------------
+This case uses testpmd and pdump to test of 2 virtio-user with packed ring vectorized path with ring size is not power of 2 forward packets.
1. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci \
--vdev 'eth_vhost0,iface=vhost-net,queues=1' --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
-i --nb-cores=1 --no-flush-rx
2. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
--no-pci --file-prefix=virtio1 --force-max-simd-bitwidth=512 \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1,queue_size=255 \
-- -i --nb-cores=1 --txd=255 --rxd=255
testpmd>set fwd rxonly
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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=/root/pdump-rx.pcap,mbuf-size=8000'
+3. Start pdump to capture virtio-user1 packets, as common step 1.
4. Launch virtio-user0 and send 8k length packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
--no-pci --file-prefix=virtio --force-max-simd-bitwidth=512 \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=1,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1,queue_size=255 \
-- -i --nb-cores=1 --txd=255 --rxd=255
@@ -769,20 +811,19 @@ Test Case 11: packed virtqueue vm2vm vectorized path test with ring size is not
6. Launch testpmd by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
- --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- \
- -i --nb-cores=1 --no-flush-rx
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 --no-pci --file-prefix=vhost \
+ --vdev 'eth_vhost1,iface=vhost-net1,queues=1' -- -i --nb-cores=1 --no-flush-rx
testpmd>set fwd rxonly
testpmd>start
7. Attach pdump secondary process to primary process by same file-prefix::
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=vhost \
+ -- --pdump 'port=0,queue=*,rx-dev=/root/pdump-vhost-rx.pcap,mbuf-size=8000'
8. Launch virtio-user1 by below command::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
- --no-pci --force-max-simd-bitwidth=512 \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 --no-pci --force-max-simd-bitwidth=512 \
--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1,queue_size=255 \
-- -i --nb-cores=1 --txd=255 --rxd=255
testpmd>set burst 1
@@ -791,811 +832,12 @@ Test Case 11: packed virtqueue vm2vm vectorized path test with ring size is not
testpmd>set burst 32
testpmd>start tx_first 7
-9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap,check headers and payload of all packets in pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
-
-Test Case 12: split virtqueue vm2vm non-mergeable path multi-queues payload check with cbdma enabled
-====================================================================================================
-
-1. bind 4 cbdma port to vfio-pci and launch vhost by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:80:04.0;txq1@0000:80:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:80:04.2;txq1@0000:80:04.3]' \
- --iova=va -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-2. Launch virtio-user1 by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
- --no-pci --file-prefix=virtio1 \
- --vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=2,server=1,packed_vq=0,mrg_rxbuf=0,in_order=0,queue_size=4096 \
- -- -i --enable-hw-vlan-strip --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set fwd rxonly
- 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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-4. Launch virtio-user0 and send packets::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
- --no-pci --file-prefix=virtio \
- --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=2,server=1,packed_vq=0,mrg_rxbuf=0,in_order=0,queue_size=4096 \
- -- -i --enable-hw-vlan-strip --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set burst 1
- testpmd>set txpkts 64,128,256,512
- testpmd>start tx_first 27
- testpmd>stop
- testpmd>set burst 32
- testpmd>start tx_first 7
- testpmd>stop
- testpmd>set txpkts 64
- testpmd>start tx_first 1
- testpmd>stop
-
-5. Start vhost testpmd, check virtio-user1 RX-packets is 566 and RX-bytes is 486016, 502 packets with 960 length and 64 packets with 64 length in pdump-virtio-rx.pcap.
-
-6. Clear virtio-user1 port stats::
-
- testpmd>stop
- testpmd>clear port stats all
- testpmd>start
-
-7. Quit and relaunch vhost with iova=pa by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:80:04.0;txq1@0000:80:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:80:04.2;txq1@0000:80:04.3]' \
- --iova=pa -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-8. Attach pdump secondary process to primary process by same file-prefix::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-9. Virtio-user0 send packets::
-
- testpmd>set burst 1
- testpmd>set txpkts 64,128,256,512
- testpmd>start tx_first 27
- testpmd>stop
- testpmd>set burst 32
- testpmd>start tx_first 7
- testpmd>stop
- testpmd>set txpkts 64
- testpmd>start tx_first 1
- testpmd>stop
-
-10. Rerun step 5.
-
-Test Case 13: split virtqueue vm2vm mergeable path multi-queues payload check with cbdma enabled
-================================================================================================
-
-1. Launch vhost by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=va -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-2. Launch virtio-user1 by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
- --no-pci --file-prefix=virtio1 \
- --vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=2,server=1,packed_vq=0,mrg_rxbuf=1,in_order=0,queue_size=4096 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set fwd rxonly
- 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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-4. Launch virtio-user0 and send packets::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
- --no-pci --file-prefix=virtio \
- --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=2,server=1,packed_vq=0,mrg_rxbuf=1,in_order=0,queue_size=4096 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
-
-5. Start vhost testpmd, check 502 packets and 279232 bytes received by virtio-user1 and 54 packets with 4640 length and 448 packets with 64 length in pdump-virtio-rx.pcap.
-
-6. Clear virtio-user1 port stats::
-
- testpmd>stop
- testpmd>clear port stats all
- testpmd>start
-
-7. Quit and relaunch vhost with iova=pa by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=pa -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-8. Attach pdump secondary process to primary process by same file-prefix::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-9. Virtio-user0 send packets::
-
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
-
-10. Rerun step 5.
-
-Test Case 14: split virtqueue vm2vm inorder non-mergeable path multi-queues payload check with cbdma enabled
-============================================================================================================
-
-1. Launch vhost by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=va -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-2. Launch virtio-user1 by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
- --no-pci --file-prefix=virtio1 \
- --vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=2,server=1,packed_vq=0,mrg_rxbuf=0,in_order=1,queue_size=4096 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set fwd rxonly
- 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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-4. Launch virtio-user0 and send packets::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
- --no-pci --file-prefix=virtio \
- --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=2,server=1,packed_vq=0,mrg_rxbuf=0,in_order=1,queue_size=4096 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
-
-5. Start vhost testpmd, check 448 packets and 28672 bytes received by virtio-user1 and 448 packets with 64 length in pdump-virtio-rx.pcap.
-
-6. Clear virtio-user1 port stats::
-
- testpmd>stop
- testpmd>clear port stats all
- testpmd>start
-
-7. Quit and relaunch vhost with iova=pa by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=pa -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-8. Attach pdump secondary process to primary process by same file-prefix::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-9. Virtio-user0 send packets::
-
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
-
-10. Rerun step 5.
-
-Test Case 15: split virtqueue vm2vm vectorized path multi-queues payload check with cbdma enabled
-==================================================================================================
-
-1. Launch vhost by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=va -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-2. Launch virtio-user1 by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 --no-pci --file-prefix=virtio1 \
- --vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=2,server=1,mrg_rxbuf=0,in_order=0,vectorized=1,queue_size=4096 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set fwd rxonly
- 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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-4. Launch virtio-user0 and send packets::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --no-pci --file-prefix=virtio \
- --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=2,server=1,packed_vq=0,mrg_rxbuf=0,in_order=0,queue_size=4096 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
-
-5. Start vhost testpmd, check 448 packets and 28672 bytes received by virtio-user1 and 448 packets with 64 length in pdump-virtio-rx.pcap.
-
-6. Clear virtio-user1 port stats::
-
- testpmd>stop
- testpmd>clear port stats all
- testpmd>start
-
-7. Quit and relaunch vhost with iova=pa by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=pa -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-8. Attach pdump secondary process to primary process by same file-prefix::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-9. Virtio-user0 send packets::
-
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
-
-10. Rerun step 5.
-
-Test Case 16: Split virtqueue vm2vm inorder mergeable path test non-indirect descriptor with cbdma enable
-=========================================================================================================
-
-1. Launch testpmd by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=va -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=256 --rxd=256 --no-flush-rx
- testpmd>vhost enable tx all
-
-2. Launch virtio-user1 by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
- --no-pci --file-prefix=virtio1 \
- --vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=2,server=1,packed_vq=0,mrg_rxbuf=1,in_order=1,queue_size=256 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=256 --rxd=256
- testpmd>set fwd rxonly
- 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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-4. Launch virtio-user0 and send packets(include 251 small packets and 32 8K packets)::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
- --no-pci --file-prefix=virtio \
- --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=2,server=1,packed_vq=0,mrg_rxbuf=1,in_order=1,queue_size=256 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=256 --rxd=256
- testpmd>set burst 1
- testpmd>start tx_first 27
- testpmd>stop
- testpmd>set burst 32
- testpmd>start tx_first 7
- testpmd>stop
- testpmd>set txpkts 2000,2000,2000,2000
- testpmd>start tx_first 1
- testpmd>stop
-
-5. Start vhost, then quit pdump and three testpmd, about split virtqueue inorder mergeable path, it use the non-indirect descriptors, the 8k length pkt will occupies 5 ring:2000,2000,2000,2000 will need 4 consequent ring,
-still need one ring put header. So check 504 packets and 48128 bytes received by virtio-user1 and 502 packets with 64 length and 2 packets with 8K length in pdump-virtio-rx.pcap.
-
-6. Relaunch vhost with iova=pa by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=pa -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=256 --rxd=256 --no-flush-rx
- testpmd>vhost enable tx all
-
-7. Rerun step 2-5.
-
-Test Case 17: Split virtqueue vm2vm mergeable path test indirect descriptor with cbdma enable
-=============================================================================================
-
-1. Launch testpmd by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=va -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=256 --rxd=256 --no-flush-rx
- testpmd>vhost enable tx all
-
-2. Launch virtio-user1 by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
- --no-pci --file-prefix=virtio1 \
- --vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=2,server=1,packed_vq=0,mrg_rxbuf=1,in_order=0,queue_size=256 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=256 --rxd=256
- testpmd>set fwd rxonly
- 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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-4. Launch virtio-user0 and send packets(include 251 small packets and 32 8K packets)::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
- --no-pci --file-prefix=virtio \
- --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=2,server=1,packed_vq=0,mrg_rxbuf=1,in_order=0,queue_size=256 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=256 --rxd=256
- testpmd>set burst 1
- testpmd>start tx_first 27
- testpmd>stop
- testpmd>set burst 32
- testpmd>start tx_first 7
- testpmd>stop
- testpmd>set txpkts 2000,2000,2000,2000
- testpmd>start tx_first 1
- testpmd>stop
-
-5. Start vhost, then quit pdump and three testpmd, about split virtqueue mergeable path, it use the indirect descriptors, the 8k length pkt will just occupies one ring.
-So check 512 packets and 112128 bytes received by virtio-user1 and 502 packets with 64 length and 10 packets with 8K length in pdump-virtio-rx.pcap.
-
-6. Relaunch vhost with iova=pa by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=pa -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=256 --rxd=256 --no-flush-rx
- testpmd>vhost enable tx all
-
-7. Rerun step 2-5.
-
-Test Case 18: packed virtqueue vm2vm non-mergeable path multi-queues payload check with cbdma enabled
-=====================================================================================================
-
-1. Launch vhost by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:80:04.0;txq1@0000:80:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:80:04.2;txq1@0000:80:04.3]' \
- --iova=va -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-2. Launch virtio-user1 by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
- --no-pci --file-prefix=virtio1 \
- --vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=2,server=1,packed_vq=1,mrg_rxbuf=0,in_order=0,queue_size=4096 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set fwd rxonly
- 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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-4. Launch virtio-user0 and send packets::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
- --no-pci --file-prefix=virtio \
- --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=2,server=1,packed_vq=1,mrg_rxbuf=0,in_order=0,queue_size=4096 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
-
-5. Start vhost testpmd, check virtio-user1 RX-packets is 448 and RX-bytes is 28672, 448 packets with 64 length in pdump-virtio-rx.pcap.
-
-6. Clear virtio-user1 port stats::
-
- testpmd>stop
- testpmd>clear port stats all
- testpmd>start
-
-7. Quit and relaunch vhost with iova=pa by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:80:04.0;txq1@0000:80:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:80:04.2;txq1@0000:80:04.3]' \
- --iova=pa -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-8. Attach pdump secondary process to primary process by same file-prefix::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-9. Virtio-user0 send packets::
-
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
-
-10. Rerun step 5.
-
-Test Case 19: packed virtqueue vm2vm mergeable path multi-queues payload check with cbdma enabled
-=================================================================================================
-
-1. Launch vhost by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=va -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-2. Launch virtio-user1 by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
- --no-pci --file-prefix=virtio1 \
- --vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=2,server=1,packed_vq=1,mrg_rxbuf=1,in_order=0,queue_size=4096 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set fwd rxonly
- 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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-4. Launch virtio-user0 and send packets::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
- --no-pci --file-prefix=virtio \
- --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=2,server=1,packed_vq=1,mrg_rxbuf=1,in_order=0,queue_size=4096 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
-
-5. Start vhost testpmd, then quit pdump, check 502 packets and 279232 bytes received by virtio-user1 and 54 packets with 4640 length and 448 packets with 64 length in pdump-virtio-rx.pcap.
-
-6. Clear virtio-user1 port stats::
-
- testpmd>stop
- testpmd>clear port stats all
- testpmd>start
-
-7. Quit and relaunch vhost with iova=pa by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=pa -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-8. Attach pdump secondary process to primary process by same file-prefix::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-9. Virtio-user0 send packets::
-
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
-
-10. Rerun step 5.
+9. Quit pdump,vhost received packets in pdump-vhost-rx.pcap,check headers and payload of all packets in
+ pdump-virtio-rx.pcap and pdump-vhost-rx.pcap and ensure the content are same.
-Test Case 20: packed virtqueue vm2vm inorder mergeable path multi-queues payload check with cbdma enabled
-=========================================================================================================
-
-1. Launch vhost by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=va -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-2. Launch virtio-user1 by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
- --no-pci --file-prefix=virtio1 \
- --vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=2,server=1,packed_vq=1,mrg_rxbuf=1,in_order=1,queue_size=4096 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set fwd rxonly
- 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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-4. Launch virtio-user0 and send packets::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
- --no-pci --file-prefix=virtio \
- --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=2,server=1,packed_vq=1,mrg_rxbuf=1,in_order=1,queue_size=4096 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
-
-5. Start vhost testpmd, then quit pdump, check 502 packets and 279232 bytes received by virtio-user1 and 54 packets with 4640 length and 448 packets with 64 length in pdump-virtio-rx.pcap.
-
-6. Clear virtio-user1 port stats::
-
- testpmd>stop
- testpmd>clear port stats all
- testpmd>start
-
-7. Quit and relaunch vhost with iova=pa by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=pa -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-8. Attach pdump secondary process to primary process by same file-prefix::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-9. Virtio-user0 send packets::
-
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
-
-10. Rerun step 5.
-
-Test Case 21: packed virtqueue vm2vm inorder non-mergeable path multi-queues payload check with cbdma enabled
-=============================================================================================================
-
-1. Launch vhost by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=va -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-2. Launch virtio-user1 by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 \
- --no-pci --file-prefix=virtio1 \
- --vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=2,server=1,packed_vq=1,mrg_rxbuf=0,in_order=1,queue_size=4096 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set fwd rxonly
- 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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-4. Launch virtio-user0 and send 8k length packets::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 \
- --no-pci --file-prefix=virtio \
- --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=2,server=1,packed_vq=1,mrg_rxbuf=0,in_order=1,queue_size=4096 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
-
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
-
-5. Start vhost testpmd, then quit pdump, check 448 packets and 28672 bytes received by virtio-user1 and 448 packets with 64 length in pdump-virtio-rx.pcap.
-
-6. Clear virtio-user1 port stats::
-
- testpmd>stop
- testpmd>clear port stats all
- testpmd>start
-
-7. Quit and relaunch vhost with iova=pa by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=pa -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-8. Attach pdump secondary process to primary process by same file-prefix::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-9. Virtio-user0 send packets::
-
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
-
-10. Rerun step 5.
-
-Test Case 22: packed virtqueue vm2vm vectorized path multi-queues payload check with cbdma enabled
-===================================================================================================
-
-1. Launch vhost by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=va -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-2. Launch virtio-user1 by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 --no-pci --file-prefix=virtio1 --force-max-simd-bitwidth=512 \
- --vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=2,server=1,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1,queue_size=4096 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set fwd rxonly
- 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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-4. Launch virtio-user0 and send 8k length packets::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --force-max-simd-bitwidth=512 --no-pci --file-prefix=virtio \
- --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=2,server=1,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1,queue_size=4096 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
-
-5. Start vhost testpmd, then quit pdump, check 448 packets and 28672 bytes received by virtio-user1 and 448 packets with 64 length in pdump-virtio-rx.pcap.
-
-6. Clear virtio-user1 port stats::
-
- testpmd>stop
- testpmd>clear port stats all
- testpmd>start
-
-7. Quit and relaunch vhost with iova=pa by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=pa -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-8. Attach pdump secondary process to primary process by same file-prefix::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-9. Virtio-user0 send packets::
-
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
-
-10. Rerun step 5.
-
-Test Case 23: packed virtqueue vm2vm vectorized path multi-queues payload check with ring size is not power of 2 and cbdma enabled
-==================================================================================================================================
-
-1. Launch vhost by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=va -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-2. Launch virtio-user1 by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 7-8 --force-max-simd-bitwidth=512 --no-pci --file-prefix=virtio1 \
- --vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=2,server=1,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1,queue_size=4097 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4097 --rxd=4097
- testpmd>set fwd rxonly
- 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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-4. Launch virtio-user0 and send 8k length packets::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --force-max-simd-bitwidth=512 --no-pci --file-prefix=virtio \
- --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=2,server=1,packed_vq=1,mrg_rxbuf=0,in_order=1,vectorized=1,queue_size=4097 \
- -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4097 --rxd=4097
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
-
-5. Start vhost testpmd, then quit pdump, check 448 packets and 28672 bytes received by virtio-user1 and 448 packets with 64 length in pdump-virtio-rx.pcap.
-
-6. Clear virtio-user1 port stats::
-
- testpmd>stop
- testpmd>clear port stats all
- testpmd>start
-
-7. Quit and relaunch vhost with iova=pa by below command::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-2 -n 4 \
- --vdev 'eth_vhost0,iface=vhost-net,queues=2,client=1,dmas=[txq0@0000:00:04.0;txq1@0000:00:04.1]' --vdev 'eth_vhost1,iface=vhost-net1,queues=2,client=1,dmas=[txq0@0000:00:04.2;txq1@0000:00:04.3]' \
- --iova=pa -- -i --nb-cores=1 --rxq=2 --txq=2 --txd=4096 --rxd=4096 --no-flush-rx
- testpmd>vhost enable tx all
-
-8. Attach pdump secondary process to primary process by same file-prefix::
-
- ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
-
-9. Virtio-user0 send packets::
-
- testpmd>set burst 32
- testpmd>set txpkts 64
- testpmd>start tx_first 7
- testpmd>stop
- testpmd>set burst 1
- testpmd>set txpkts 64,256,2000,64,256,2000
- testpmd>start tx_first 27
- testpmd>stop
-
-10. Rerun step 5.
-
-Test Case 24: packed virtqueue vm2vm vectorized-tx path multi-queues test indirect descriptor
-=============================================================================================
+Test Case 12: packed virtqueue vm2vm vectorized-tx path multi-queues test indirect descriptor
+---------------------------------------------------------------------------------------------
+This case uses testpmd and pdump to test of 2 virtio-user with packed ring vectorized-tx path with multi-queues indirect descriptor forward packets.
1. Launch vhost by below command::
@@ -1611,13 +853,11 @@ Test Case 24: packed virtqueue vm2vm vectorized-tx path multi-queues test indire
testpmd>set fwd rxonly
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=virtio1 -- --pdump 'device_id=net_virtio_user1,queue=*,rx-dev=./pdump-virtio-rx.pcap,mbuf-size=8000'
+3. Start pdump to capture virtio-user1 packets, as common step 1.
4. Launch virtio-user0 and send 8k length packets::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --force-max-simd-bitwidth=512 --no-pci --file-prefix=virtio \
+ <dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -l 5-6 --force-max-simd-bitwidth=512 --no-pci --file-prefix=virtio \
--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,queues=1,packed_vq=1,mrg_rxbuf=1,in_order=1,vectorized=1,queue_size=256 \
-- -i --nb-cores=1 --txd=256 --rxd=256
@@ -1631,5 +871,6 @@ Test Case 24: packed virtqueue vm2vm vectorized-tx path multi-queues test indire
testpmd>start tx_first 1
testpmd>stop
-5. Start vhost, then quit pdump and three testpmd, about packed virtqueue vectorized-tx path, it use the indirect descriptors, the 8k length pkt will just occupies one ring.
-So check 256 packets and 56064 bytes received by virtio-user1 and 251 packets with 64 length and 5 packets with 8K length in pdump-virtio-rx.pcap.
+5. Start vhost, then quit pdump and three testpmd, about packed virtqueue vectorized-tx path, it use the indirect descriptors,
+ the 8k length pkt will just occupies one ring. So check 256 packets and 56064 bytes received by virtio-user1 and 251 packets
+ with 64 length and 5 packets with 8K length in pdump-virtio-rx.pcap.
--
2.25.1
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-04-02 6:34 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-02 6:34 [PATCH V1 1/5] test_plans/vm2vm_virtio_user_test_plan: delete case 12-23 Wei Ling
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).