netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Zoltan Kiss <zoltan.kiss@citrix.com>
To: Ian Campbell <Ian.Campbell@citrix.com>
Cc: <wei.liu2@citrix.com>, <xen-devel@lists.xenproject.org>,
	<netdev@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	<jonathan.davies@citrix.com>
Subject: Re: [PATCH net-next RFC 0/5] xen-netback: TX grant mapping instead of copy
Date: Fri, 1 Nov 2013 19:00:07 +0000	[thread overview]
Message-ID: <5273FA37.6020903@citrix.com> (raw)
In-Reply-To: <1383303035.672.29.camel@kazak.uk.xensource.com>

On 01/11/13 10:50, Ian Campbell wrote:
> Does this always avoid copying when bridging/openvswitching/forwarding
> (e.g. masquerading etc)? For both domU->domU and domU->physical NIC?
I've tested the domU->domU, domU->physical with bridge and openvswitch 
usecase, and now I've created a new stat counter to see how often copy 
happens (the callback's second parameter tells you whether the skb was 
freed or copied). It doesn't do copy in all of these scenarios.
What do you mean by forwarding? The scenario when you use bridge and 
iptables mangling with the packet, not just filtering?

> How does it deal with broadcast traffic?
Most of the real broadcast traffic actually small packets fit in the 
PKT_PROT_LEN sized linear space, so it doesn't make any difference, 
apart from doing a mapping before copy. But that will be eliminated 
later on, I plan to add an incremental improvement to grant copy the 
linear part.
I haven't spent too much time on that, but I couldn't find any broadcast 
protocol which use large enough packets and easy to test, so I'm open to 
ideas.
What I already know, skb_clone trigger a copy, and if the caller use the 
original skb for every cloning, it will do several copy. I think that 
could be fixed by using the first clone to do any further clones.

> Do you have any numbers for the dom0 cpu usage impact?
DomU->NIC: the vif took 40% according to top, I guess the bottleneck 
there is the TLB flushing.
DomU->DomU: the vif of the RX side cause the bottleneck due to grant 
copy to the guest

> Aggregate throughput for many guests would be a useful datapoint too.
I will do measurements about that.

 >> Based on my investigations the packet get only copied if it is 
delivered to
 >>Dom0 stack, which is due to this patch:
 >>https://lkml.org/lkml/2012/7/20/363
 >>That's a bit unfortunate, but as far as I know for the huge majority 
this use
 >>case is not too important.
> Likely to be true, but it would still be interesting to know how badly
> this use case suffers with this change, and any increase in CPU usage
> would be interesting to know about as well.
I can't find my numbers, but as far as I remember it wasn't 
significantly worse than grant copy. I will check that again.

Zoli

  reply	other threads:[~2013-11-01 19:00 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-30  0:50 [PATCH net-next RFC 0/5] xen-netback: TX grant mapping instead of copy Zoltan Kiss
2013-10-30  0:50 ` [PATCH net-next RFC 1/5] xen-netback: Introduce TX grant map definitions Zoltan Kiss
2013-10-30  9:28   ` [Xen-devel] " Jan Beulich
2013-10-31 19:22     ` Zoltan Kiss
2013-10-31 19:33   ` Zoltan Kiss
2013-10-30  0:50 ` [PATCH net-next RFC 2/5] xen-netback: Change TX path from grant copy to mapping Zoltan Kiss
2013-10-30  9:11   ` [Xen-devel] " Paul Durrant
2013-10-30 21:10     ` Zoltan Kiss
2013-11-01 16:09       ` Zoltan Kiss
2013-10-30  0:50 ` [PATCH net-next RFC 3/5] xen-netback: Remove old TX grant copy definitons Zoltan Kiss
2013-10-30  9:39   ` [Xen-devel] " Jan Beulich
2013-10-31 19:46     ` Zoltan Kiss
2013-10-30 11:13   ` Wei Liu
2013-10-30  0:50 ` [PATCH net-next RFC 4/5] xen-netback: Fix indentations Zoltan Kiss
2013-10-30 11:13   ` Wei Liu
2013-10-31 19:48     ` Zoltan Kiss
2013-10-30  0:50 ` [PATCH net-next RFC 4/5] xen-netback: Change RX path for mapped SKB fragments Zoltan Kiss
2013-10-30 19:16 ` [Xen-devel] [PATCH net-next RFC 0/5] xen-netback: TX grant mapping instead of copy Konrad Rzeszutek Wilk
2013-10-30 19:17   ` Konrad Rzeszutek Wilk
2013-10-30 21:14     ` Zoltan Kiss
2013-11-01 10:50 ` Ian Campbell
2013-11-01 19:00   ` Zoltan Kiss [this message]
2013-11-05 17:01     ` Zoltan Kiss
2013-11-07 10:52     ` Ian Campbell
2013-11-28 17:37       ` Zoltan Kiss
2013-11-28 17:43         ` Ian Campbell
2013-12-12 22:08           ` Zoltan Kiss
2013-12-16 10:14             ` Ian Campbell

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=5273FA37.6020903@citrix.com \
    --to=zoltan.kiss@citrix.com \
    --cc=Ian.Campbell@citrix.com \
    --cc=jonathan.davies@citrix.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xenproject.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).