Re: [PATCH net-next RFC 0/5] xen-netback: TX grant mapping insteadof copy

From: Zoltan Kiss
Date: Thu Nov 28 2013 - 12:37:43 EST


On 07/11/13 10:52, Ian Campbell wrote:
On Fri, 2013-11-01 at 19:00 +0000, Zoltan Kiss wrote:
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?

I mean using L3 routing rather L2 bridging. Which might involve
NAT/MASQUERADE or might just be normal IP routing.
I still couldn't find time to try out this scenario, but I think in this case packet goes through deliver_skb, which means it will get copied. So performance would be a bit worse due to the extra map/unmap. And I'm afraid we can't help that too much due to this:
https://lkml.org/lkml/2012/7/20/363
However I think using Dom0 as a router/firewall is already a suboptimal solution, so maybe a small performance regression is acceptable?
Anyway, I will try this out, and see if it really copies everything, and get some numbers as well.

How does it deal with broadcast traffic?
Now I had time to check it: broadcast packets get copied only once, when cloning happens. It will swap out the frags with local ones, so any subsequent cloning will have a local SKB.

Zoli
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/