On Tue, 15 Aug 2017 11:11:57 +0200 Paweł Staszewski <pstaszew...@itcare.pl> wrote:
> Yes it helped - now there is almost no difference when using vlans or not: > > 10.5Mpps - with vlan > > 11Mpps - without vlan Great! - it seems like we have pinpointed the root-cause. It also demonstrate how big the benefit is of Eric commit (thanks!): https://git.kernel.org/torvalds/c/93f154b594fe > W dniu 2017-08-15 o 03:17, Eric Dumazet pisze: > > On Mon, 2017-08-14 at 18:07 -0700, Eric Dumazet wrote: > > > >> Or try to hack the IFF_XMIT_DST_RELEASE flag on the vlan netdev. > > Something like : > > > > diff --git a/net/8021q/vlan_netlink.c b/net/8021q/vlan_netlink.c > > index > > 5e831de3103e2f7092c7fa15534def403bc62fb4..9472de846d5c0960996261cb2843032847fa4bf7 > > 100644 > > --- a/net/8021q/vlan_netlink.c > > +++ b/net/8021q/vlan_netlink.c > > @@ -143,6 +143,7 @@ static int vlan_newlink(struct net *src_net, struct > > net_device *dev, > > vlan->vlan_proto = proto; > > vlan->vlan_id = nla_get_u16(data[IFLA_VLAN_ID]); > > vlan->real_dev = real_dev; > > + dev->priv_flags |= (real_dev->priv_flags & IFF_XMIT_DST_RELEASE); > > vlan->flags = VLAN_FLAG_REORDER_HDR; > > > > err = vlan_check_real_dev(real_dev, vlan->vlan_proto, vlan->vlan_id); -- Best regards, Jesper Dangaard Brouer MSc.CS, Principal Kernel Engineer at Red Hat LinkedIn: http://www.linkedin.com/in/brouer