As we validate dpdk 1.8.0 rc2 from org, we report defect: Work_Request IXA00388707 The defect is about vhost virtio based 4 x 10 G NIC, and vhost-switch cannot startup, all cases for one copy on Fortville cannot validate. This defect can be fixed by this patches. Below are details for validation.
Basic Information Patch name examples/vhost: support new VMDQ api and new nic i40e in vhost example Brief description about test purpose Verify the four scenarios for virtio one copy Test Flag Tested-by Tester name jingguox.fu at intel.com Test environment - OS Environment - Compilation (GCC) - Hardware Info (CPU & NIC) - Virtualization environment /Configure OS: Fedora20 3.11.10-301.fc20.x86_64 GCC: gcc version 4.8.3 20140911 CPU: Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz NIC: Intel Corporation Ethernet Controller X710 for 10GbE SFP+ [8086:1572] Test Tool Chain information N/A Commit ID 6e0248660819b8a0b42725c6c881729daf80739f (after apply patches) Detailed Testing information DPDK SW Configuration open CONFIG_RTE_LIBRTE_VHOST x86_64-native-linuxapp-gcc configuration Test Result Summary Total 4 cases, 4 passed, 0 failed Test Case - name one vm by dpdk forward Test Case - Description Check vhost switch can forward packets received the first virtio to the second virtio that all on the same vm Test Case -test sample/application Start vhost-switch on host and start testpmd on guest On host: taskset -c 8-10 vhost-switch -c 0xf00 -n 4 --huge-dir /mnt/huge --socket-mem 1024,1024 -- -p 1 --mergeable 0 --zero-copy 0 --vm2vm 0 On guest: testpmd -c 0xf -n 4 -- -i --txqflags 0x0f00 Set fwd type tx_first testpmd>set fwd mac testpmd>start tx_first Send packets with vlan id: ether|ip|udp packets Test Case -command / instruction Test Case - expected test result packet generator can get the packets from the second virtio Test Case - name one vm by linux forward Test Case - Description Check vhost switch can forward packets received the first virtio to the second virtio that all on the same vm Test Case -test sample/application Start vhost-switch on host, use virtios as Ethernet devices On host: taskset -c 8-10 vhost-switch -c 0xf00 -n 4 --huge-dir /mnt/huge --socket-mem 1024,1024 -- -p 1 --mergeable 0 --zero-copy 0 --vm2vm 0 On guest: Routing table config ip addr add 192.168.10.2/24 dev eth1 ip addr add 192.168.20.2/24 dev eth2 ip neigh add 192.168.10.1 lladdr 00:00:00:00:00:01 dev eth1 ip neigh add 192.168.20.1 lladdr 00:00:00:00:00:01 dev eth2 ip link set dev eth1 up ip link set dev eth2 up Send packets with vlan id: ether|ip|udp packets Test Case -command / instruction Test Case - expected test result packet generator can get the packets from the second virtio Test Case - name vm to vm by dpdk forward soft switch Test Case - Description Check vhost switch can forward packets received from the first virtio on VM1 to the second virtio on VM2 Test Case -test sample/application Start vhost-switch on host and start testpmd on guests On host: taskset -c 8-10 vhost-switch -c 0xf00 -n 4 --huge-dir /mnt/huge --socket-mem 1024,1024 -- -p 1 --mergeable 0 --zero-copy 0 --vm2vm 1 On guests: VM1: ./testpmd -c 0xf -n 4 -- -i --txqflags 0x0f00 --eth-peer=0,00:00:00:00:00:0A Set fwd type tx_first testpmd>set fwd mac testpmd>start tx_first VM2: testpmd -c 0xf -n 4 -- -i --txqflags 0x0f00 Set fwd type tx_first testpmd>set fwd mac testpmd>start tx_first Send packets without vlan id: ether|ip|udp packets Test Case -command / instruction Test Case - expected test result packet generator can get the packets from the vf on VM2 Test Case - name vm to vm by linux forward soft switch Test Case - Description Check vhost switch can forward packets received from the first virtio on VM1 to the second virtio on VM2 Test Case -test sample/application Start vhost-switch on host, use virtios as Ethernet devices On host: taskset -c 8-10 vhost-switch -c 0xf00 -n 4 --huge-dir /mnt/huge --socket-mem 1024,1024 -- -p 1 --mergeable 0 --zero-copy 0 --vm2vm 1 On guests: VM1: ip addr add 192.168.2.2/24 dev eth1 ip neigh add 192.168.2.1 lladdr 00:00:02:00:00:a1 dev eth1 ip link set dev eth1 up ip addr add 192.168.3.2/24 dev eth0 ip neigh add 192.168.3.1 lladdr 52:00:00:54:00:02 dev eth0 ip link set dev eth0 up VM2: ip addr add 192.168.3.2/24 dev eth1 ip neigh add 192.168.3.1 lladdr 00:00:02:00:00:a1 dev eth1 ip link set dev eth1 up ip addr add 192.168.2.2/24 dev eth0 ip neigh add 192.168.2.1 lladdr 00:00:02:00:00:a1 dev eth0 ip link set dev eth0 up arp -s 192.168.3.1 00:00:02:0a:0a Send packets without vlan id: ether|ip|udp packets Test Case -command / instruction Test Case - expected test result packet generator can get the packets from the vf on VM2 -----Original Message----- From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Huawei Xie Sent: Thursday, November 13, 2014 06:34 To: dev at dpdk.org Subject: [dpdk-dev] [PATCH 0/2] examples/vhost: support new VMDQ api and new nic i40e in vhost example I40E has several different types of VSI and queues are allocated among them. VMDQ queue base and pool base doesn't start from zero due to this change and VMDQ doesn't own all queues. rte_eth_dev_info structure is extended to provide VMDQ queue base, pool base, queue number information for us to properly set up VMDQ, i.e, add mac/vlan filter. This patchset enables the vhost example to use this information to set up VMDQ. Huawei Xie (2): support new VMDQ API and new nic i40e use factorized default Rx/Tx configuration examples/vhost/main.c | 103 ++++++++++++++++++++------------------------------ 1 file changed, 41 insertions(+), 62 deletions(-) -- 1.8.1.4