From: "Fu, JingguoX" <jingguox.fu@intel.com>
To: "Ouyang, Changchun" <changchun.ouyang@intel.com>,
"dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH] examples/vhost: Fix vlan offload issue
Date: Fri, 12 Dec 2014 06:00:32 +0000 [thread overview]
Message-ID: <6BD6202160B55B409D423293115822625938A5@SHSMSX101.ccr.corp.intel.com> (raw)
In-Reply-To: <1418357726-25141-1-git-send-email-changchun.ouyang@intel.com>
Comments:
This patch fixed all cases related to VM to VM scenario hard switch for virtio.
Basic Information
Patch name: examples/vhost: Fix vlan offload issue
Brief description: Verify all VM to VM scenario cases based hard switch
Test Flag: Tested-by
Tester name: jingguox.fu@intel.com
Test environment:
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: 82599ES 10-Gigabit SFI/SFP+ Network Connection [8086:10fb]
Commit ID: 4c8b41715168101dc76fd9b264658837ff54ab76
Detailed Testing Information:
DPDK SW Configuration:
open CONFIG_RTE_LIBRTE_VHOST
x86_64-native-linuxapp-gcc configuration
Test Result Summary: Total 6 cases, 6 passed, 0 failed
Test Case - name:
vm to vm by dpdk forward hard switch (virtio one copy suite)
Test Case - Description:
Check vhost switch can forward packets received from the first virtio on VM1 to the second virtio on VM2
Test Case - command / instruction:
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 2
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
testpmd>set fwd mac
testpmd>start tx_first
Send packets without vlan id: ether|ip|udp packets
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 hard switch (virtio one copy suite)
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 command / instruction:
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 2
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 - expected test result:
packet generator can get the packets from the vf on VM2
Test Case - name:
vm to vm by dpdk forward hard switch (virtio one copy jumbo frame suite)
Test Case - Description:
Check vhost switch can forward packets received from the first virtio on VM1 to the second virtio on VM2
Test Case - command / instruction:
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 1 --zero-copy 0 --vm2vm 2
On guests:
VM1:
./testpmd -c 0xf -n 4 -- -i --txqflags 0x0f00 --max-pkt-len 9000 --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 --max-pkt-len 9000
testpmd>set fwd mac
testpmd>start tx_first
Send packets without vlan id: ether|ip|udp packets
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 hard switch (virtio one copy jumbo frame suite)
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 command / instruction:
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 1 --zero-copy 0 --vm2vm 2
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 link set dev eth1 mtu 9000
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
ip link set dev eth0 mtu 9000
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 link set dev eth1 mtu 9000
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
ip link set dev eth0 mtu 9000
arp -s 192.168.3.1 00:00:02:0a:0a
Send packets without vlan id: ether|ip|udp packets
Test Case - expected test result:
packet generator can get the packets from the vf on VM2
Test Case - name:
vm to vm by dpdk forward hard switch (virtio zero suite)
Test Case - Description:
Check vhost switch can forward packets received from the first virtio on VM1 to the second virtio on VM2
Test Case - command / instruction:
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 1 --vm2vm 2
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
testpmd>set fwd mac
testpmd>start tx_first
Send packets without vlan id: ether|ip|udp packets
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 hard switch (virtio zero suite)
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 command / instruction:
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 1 --vm2vm 2
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 - expected test result:
packet generator can get the packets from the vf on VM2
-----Original Message-----
From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Ouyang Changchun
Sent: Friday, December 12, 2014 12:15
To: dev@dpdk.org
Subject: [dpdk-dev] [PATCH] examples/vhost: Fix vlan offload issue
The following commit break vm2vm hard mode test cases:
commit db4014f2b65cb31bf209cadd5bcec778ca137fe2
Author: Huawei Xie <huawei.xie@intel.com>
Date: Thu Nov 13 06:34:07 2014 +0800
examples/vhost: use factorized default Rx/Tx configuration
Investigation show that it needs enabling vlan offload since it is turn off by default,
and Tx need it, especially when vm2vm is in hard mode.
Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
---
examples/vhost/main.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/examples/vhost/main.c b/examples/vhost/main.c
index 9331910..04f0118 100644
--- a/examples/vhost/main.c
+++ b/examples/vhost/main.c
@@ -390,6 +390,9 @@ port_init(uint8_t port)
txconf = &dev_info.default_txconf;
rxconf->rx_drop_en = 1;
+ /* Enable vlan offload */
+ txconf->txq_flags &= ~ETH_TXQ_FLAGS_NOVLANOFFL;
+
/*
* Zero copy defers queue RX/TX start to the time when guest
* finishes its startup and packet buffers from that guest are
--
1.8.4.2
next prev parent reply other threads:[~2014-12-12 6:00 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-12-12 4:15 Ouyang Changchun
2014-12-12 6:00 ` Fu, JingguoX [this message]
2014-12-16 16:36 ` Thomas Monjalon
2014-12-17 0:51 ` Ouyang, Changchun
2014-12-17 10:04 ` Thomas Monjalon
2014-12-17 23:47 ` Thomas Monjalon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=6BD6202160B55B409D423293115822625938A5@SHSMSX101.ccr.corp.intel.com \
--to=jingguox.fu@intel.com \
--cc=changchun.ouyang@intel.com \
--cc=dev@dpdk.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).