test suite reviews and discussions
 help / color / mirror / Atom feed
* [dts][PATCH V1 1/2] test_plans/pvp_share_lib_test_plan: modify testplan with new format
@ 2022-04-18 10:28 Wei Ling
  0 siblings, 0 replies; only message in thread
From: Wei Ling @ 2022-04-18 10:28 UTC (permalink / raw)
  To: dts; +Cc: Wei Ling

Modify testplan with new format.

Signed-off-by: Wei Ling <weix.ling@intel.com>
---
 test_plans/pvp_share_lib_test_plan.rst | 89 +++++++++++++++++++++-----
 1 file changed, 73 insertions(+), 16 deletions(-)

diff --git a/test_plans/pvp_share_lib_test_plan.rst b/test_plans/pvp_share_lib_test_plan.rst
index c5a3c9b8..53d85c03 100644
--- a/test_plans/pvp_share_lib_test_plan.rst
+++ b/test_plans/pvp_share_lib_test_plan.rst
@@ -37,46 +37,103 @@ Vhost/virtio-user pvp share lib test plan
 Description
 ===========
 
-The feature need compile dpdk as shared libraries, then application should use option ``-d`` to load the dynamic pmd that are built as shared libraries.
+The feature need compile dpdk as shared libraries, then application should use option ``-d``
+to load the dynamic pmd that are built as shared libraries.
+
+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: TG-->Vhost-user-->Virtio-user-->Vhost-user-->TG
+
+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, 0000:00:04.0, 0000:00:04.1 is DMA 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
+
+	DMA devices using kernel driver
+	===============================
+	0000:00:04.0 'Sky Lake-E CBDMA Registers 2021' drv=ioatdma unused=vfio-pci
+	0000:00:04.1 'Sky Lake-E CBDMA Registers 2021' drv=ioatdma unused=vfio-pci
+
+Test case
+=========
+
+Common steps
+------------
+1. Bind 1 NIC port and CBDMA channels to vfio-pci::
+
+	<dpdk dir># ./usertools/dpdk-devbind.py -b vfio-pci <DUT port pci device id>
+	<dpdk dir># ./usertools/dpdk-devbind.py -b vfio-pci <DUT port DMA device id>
+
+	For example, bind 1 NIC port to vfio-pci::
+	<dpdk dir># ./usertools/dpdk-devbind.py -b vfio-pci 0000:00:04.0
 
 Test Case1: Vhost/virtio-user pvp share lib test with niantic
-=============================================================
+-------------------------------------------------------------
+This case use testpmd with ``-d librte_net_ixgbe.so`` option to load the dynamic pmd when launch vhost-user to test with niantic.
 
 1. Enable the shared lib in DPDK configure file::
 
-    CC=gcc meson --werror -Denable_kmods=True -Dlibdir=lib -Dc_args='-DRTE_BUILD_SHARED_LIB=1' --default-library=shared x86_64-native-linuxapp-gcc
+	<dpdk dir># CC=gcc meson --werror -Denable_kmods=True -Dlibdir=lib -Dc_args='-DRTE_BUILD_SHARED_LIB=1' --default-library=shared x86_64-native-linuxapp-gcc
 
 2. Recompile dpdk code::
 
-    ninja -C x86_64-native-linuxapp-gcc -j 55
+	<dpdk dir># ninja -C x86_64-native-linuxapp-gcc -j 55
 
 3. Export shared lib files into host environment::
 
-    export LD_LIBRARY_PATH=/root/dpdk/x86_64-native-linuxapp-gcc/drivers:$LD_LIBRARY_PATH
+	export LD_LIBRARY_PATH=/root/dpdk/x86_64-native-linuxapp-gcc/drivers:$LD_LIBRARY_PATH
 
 4. Bind niantic port with vfio-pci, use option ``-d`` to load the dynamic pmd when launch vhost::
 
-    ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -c 0x03 -n 4 -d librte_net_vhost.so.21.0 -d librte_net_i40e.so.21.0 -d librte_mempool_ring.so.21.0 \
-    --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1' -- -i
-    testpmd>start
+	<dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -c 0x03 -n 4 -d librte_net_vhost.so.21.0 -d librte_net_ixgbe.so.21.0 -d librte_mempool_ring.so.21.0 \
+	--file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1' -- -i
+	testpmd> start
 
 5. Launch virtio-user::
 
-    ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0x0c -n 4 -d librte_net_virtio.so.21.0 -d librte_mempool_ring.so.21.0 \
-    --no-pci --file-prefix=virtio  --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net -- -i
-    testpmd>start
+	<dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0x0c -n 4 -d librte_net_virtio.so.21.0 -d librte_mempool_ring.so.21.0 \
+	--no-pci --file-prefix=virtio  --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net -- -i
+	testpmd> start
 
 6. Send traffic by packet generator, check the throughput with below command::
 
-    testpmd>show port stats all
+	testpmd> show port stats all
 
 Test Case2: Vhost/virtio-user pvp share lib test with fortville
-===============================================================
+---------------------------------------------------------------
+This case use testpmd with ``-d librte_net_i40e.so`` option to load the dynamic pmd when launch vhost-user to test with fortville_eagle|fortville_spirit|fortville_25g.
 
 Similar as Test Case1, all steps are similar except step 4:
 
 4. Bind fortville port with vfio-pci, use option ``-d`` to load the dynamic pmd when launch vhost::
 
-    ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -c 0x03 -n 4 -d librte_net_vhost.so -d librte_net_i40e.so -d librte_mempool_ring.so \
-    --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1' -- -i
-    testpmd>start
+	<dpdk dir># ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -c 0x03 -n 4 -d librte_net_vhost.so -d librte_net_i40e.so -d librte_mempool_ring.so \
+	--file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1' -- -i
+	testpmd> start
-- 
2.25.1


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-04-18 10:28 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-18 10:28 [dts][PATCH V1 1/2] test_plans/pvp_share_lib_test_plan: modify testplan with new format Wei Ling

test suite reviews and discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://inbox.dpdk.org/dts/0 dts/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dts dts/ http://inbox.dpdk.org/dts \
		dts@dpdk.org
	public-inbox-index dts

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.dts


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git