From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41437) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1agRiL-0007nP-Kf for qemu-devel@nongnu.org; Thu, 17 Mar 2016 02:47:22 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1agRiI-0003oa-FE for qemu-devel@nongnu.org; Thu, 17 Mar 2016 02:47:21 -0400 Received: from mx1.redhat.com ([209.132.183.28]:33299) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1agRiI-0003oU-9S for qemu-devel@nongnu.org; Thu, 17 Mar 2016 02:47:18 -0400 Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) by mx1.redhat.com (Postfix) with ESMTPS id 7672B219F for ; Thu, 17 Mar 2016 06:47:17 +0000 (UTC) References: <1458033424-25414-1-git-send-email-wexu@redhat.com> From: Jason Wang Message-ID: <56EA52F0.3020703@redhat.com> Date: Thu, 17 Mar 2016 14:47:12 +0800 MIME-Version: 1.0 In-Reply-To: <1458033424-25414-1-git-send-email-wexu@redhat.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [ Patch 0/2] Support Receive-Segment-Offload(RSC) for WHQL test of Window guest List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: wexu@redhat.com, qemu-devel@nongnu.org Cc: marcel@redhat.com, victork@redhat.com, dfleytma@redhat.com, yvugenfi@redhat.com, mst@redhat.com On 03/15/2016 05:17 PM, wexu@redhat.com wrote: > From: Wei Xu > > Fixed issues based on rfc patch v2: > 1. Removed big param list, replace it with 'NetRscUnit' > 2. Different virtio header size > 3. Modify callback function to direct call. > 4. Needn't check the failure of g_malloc() > 5. Other code format adjustment, macro naming, etc > > This patch is to support WHQL test for Windows guest, while this feature also > benifits other guest works as a kernel 'gro' like feature with userspace implementation. > Feature information: > http://msdn.microsoft.com/en-us/library/windows/hardware/jj853324 > > Both IPv4 and IPv6 are supported, though performance with userspace virtio > is slow than vhost-net, there is about 1x to 3x performance improvement to > userspace virtio, this is done by turning this feature on and disable > 'tso/gso/gro' on corresponding tap interface and guest interface, while get > less improment with all these feature on. > > Test steps: > Although this feature is mainly used for window guest, i used linux guest to help test > the feature, to make things simple, i used 3 steps to test the patch as i moved on. > 1. With a tcp socket client/server pair running on 2 linux guest, thus i can control > the traffic and debugging the code as i want. > 2. Netperf on linux guest test the throughput. > 3. WHQL test with 2 Windows guests. > > Current status: > IPv4 pass all the above tests. > IPv6 just passed test step 1 and 2 as described ahead, the virtio nic cannot > receive any packet in WHQL test, looks like the test traffic is not sent from > on the support machine, test device can access both host and another linux > guest, tried a lot of ways to work it out but failed, maybe debug from windows > guest driver side can help figuring it out. I think you need figure out where was the packet dropped first. If the packet was not dropped by windows guest, you may want to try dropmonitor. > > Note: > A 'MessageDevice' nic chose as 'Realtek' will panic the system sometimes during setup, > this can be figured out by replacing it with an 'e1000' nic. > > Todo: > More sanity check and tcp 'ecn' and 'window' scale test. > > Wei Xu (2): > virtio-net rsc: support coalescing ipv4 tcp traffic > virtio-net rsc: support coalescing ipv6 tcp traffic > > hw/net/virtio-net.c | 602 ++++++++++++++++++++++++++++++++++++++++- > include/hw/virtio/virtio-net.h | 1 + > include/hw/virtio/virtio.h | 75 +++++ > 3 files changed, 677 insertions(+), 1 deletion(-) >