From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 28E12106B for ; Mon, 6 Jul 2015 10:10:20 +0200 (CEST) Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga102.jf.intel.com with ESMTP; 06 Jul 2015 01:10:04 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.15,413,1432623600"; d="scan'208";a="519451821" Received: from pgsmsx104.gar.corp.intel.com ([10.221.44.91]) by FMSMGA003.fm.intel.com with ESMTP; 06 Jul 2015 01:10:04 -0700 Received: from shsmsx152.ccr.corp.intel.com (10.239.6.52) by PGSMSX104.gar.corp.intel.com (10.221.44.91) with Microsoft SMTP Server (TLS) id 14.3.224.2; Mon, 6 Jul 2015 16:09:55 +0800 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.165]) by SHSMSX152.ccr.corp.intel.com ([169.254.6.146]) with mapi id 14.03.0224.002; Mon, 6 Jul 2015 16:09:54 +0800 From: "Xu, Qian Q" To: "Ouyang, Changchun" , "dev@dpdk.org" Thread-Topic: [PATCH v2 0/3] Fix vhost startup issue Thread-Index: AQHQt5NFpIA4ehrbOk+d6zbYk9T+xJ3OFmAg Date: Mon, 6 Jul 2015 08:09:54 +0000 Message-ID: <82F45D86ADE5454A95A89742C8D1410E01D78C7B@shsmsx102.ccr.corp.intel.com> References: <1435807983-20383-1-git-send-email-changchun.ouyang@intel.com> <1436149613-30239-1-git-send-email-changchun.ouyang@intel.com> In-Reply-To: <1436149613-30239-1-git-send-email-changchun.ouyang@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v2 0/3] Fix vhost startup issue X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Jul 2015 08:10:20 -0000 Tested-by: Qian Xu - Test Commit: b283164694b6ed18be1856b949e91a80371e44d4 - OS: Fedora 21 - GCC: gcc (GCC) 4.9.2 20141101 (Red Hat 4.9.2-1) - CPU: Intel(R) Xeon(R) CPU E5-2699 v3 @ 2.30GHz - NIC: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection (re= v 01) - Target: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection = (rev 01) - Total 1 cases(Test Case7 plus rerun ), 1 passed, 0 failed. Test Case 1: test_perf_virtio_one_vm_dpdk_fwd_vhost-cuse_jumboframe =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D On host: 1. Start up vhost-switch, mergeable 1 means the jubmo frame feature is enab= led. vm2vm 0 means only one vm without vm to vm communication:: taskset -c 1-3 /examples/vhost/build/vhost-switch -c 0xf -= n 4 --huge-dir /mnt/huge --socket-mem 1024,1024 -- -p 1 --mergeable 1 --zer= o-copy 0 --vm2vm 0 =20 2. Start VM with vhost cuse as backend:: taskset -c 4-6 /home/qxu10/qemu-2.2.0/x86_64-softmmu/qemu-system-x86_6= 4 -object memory-backend-file, id=3Dmem,size=3D2048M,mem-path=3D/mnt/huge,s= hare=3Don -numa node,memdev=3Dmem -mem-prealloc \ -enable-kvm -m 2048 -smp 4 -cpu host -name dpdk1-vm1 \ -drive file=3D/home/img/dpdk1-vm1.img \ -netdev tap,id=3Dvhost3,ifname=3Dtap_vhost3,vhost=3Don,script=3Dno \ -device virtio-net pci,netdev=3Dvhost3,mac=3D52:54:00:00:00:01,id=3Dnet= 3,csum=3Doff,gso=3Doff,guest_csum=3Doff,guest_tso4=3Doff,guest_tso6=3Doff,g= uest_ecn=3Doff \ -netdev tap,id=3Dvhost4,ifname=3Dtap_vhost4,vhost=3Don,script=3Dno \ -device virtio-net-pci,netdev=3Dvhost4,mac=3D52:54:00:00:00:02,id=3Dnet= 4,csum=3Doff,gso=3Doff,guest_csum=3Doff,guest_tso4=3Doff,guest_tso6=3Doff,g= uest_ecn=3Doff \ -netdev tap,id=3Dipvm1,ifname=3Dtap3,script=3D/etc/qemu-ifup -device rt= l8139,netdev=3Dipvm1,id=3Dnet0,mac=3D00:00:00:00:00:01 \ -localtime -nographic On guest: 3. ensure the dpdk folder copied to the guest with the same config file and= build process as host. Then bind 2 virtio devices to igb_uio and start tes= tpmd, below is the step for reference:: .//tools/dpdk_nic_bind.py --bind igb_uio 00:03.0 00:04.0 .//x86_64-native-linuxapp-gcc/app/test-pmd/testpmd -c f -n= 4 -- -i --txqflags 0x0f00 --max-pkt-len 9000=20 =20 $ >set fwd mac =20 $ >start tx_first 4. After typing start tx_first in testpmd, user can see there would be 2 vi= rtio device with MAC and vlan id registered in vhost-user, the log would be= shown in host's vhost-sample output. 5. Send traffic(30second) to virtio1 and virtio2, and set the packet size f= rom 64 to 1518 as well as the jumbo frame 3000. Check the performance in Mp= ps. The traffic sent to virtio1 should have the DEST MAC of Virtio1's MAC, = Vlan id of Virtio1. The traffic sent to virtio2 should have the DEST MAC of= Virtio2's MAC, Vlan id of Virtio2. As to the functionality criteria, The r= eceived rate should not be zero. As to the performance criteria, need check= it with developer or design doc/PRD. Test Case 7: test_perf_virtio_one_vm_dpdk_fwd_vhost-user_jumboframe =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D This case is similar to TestCase1, just change the backend from vhost cuse = to vhost-user, so need rebuild the dpdk in vhost-user on host, other steps = are same as TestCase1. The command to launch vm is different, see below as = example::=20 /x86_64-softmmu/qemu-system-x86_64 -name us-vhost-vm= 1 -cpu host -enable-kvm -m 2048 -object memory-backend-file,id=3Dmem,size= =3D2048M,mem-path=3D/mnt/huge,share=3Don -numa node,memdev=3Dmem -mem-preal= loc -smp 2 -drive file=3D/home/img/dpdk1-vm1.img -chardev socket,id=3Dchar0= ,path=3D