kernel-packages team mailing list archive
-
kernel-packages team
-
Mailing list archive
-
Message #162945
[Bug 1547680] Re: bonded interfaces in bridge do not have LRO turned off
This can be reproduced on any system with a nic that supports lro. For
example:
$ sudo ethtool -k eth5 | grep large-receive-offload
large-receive-offload: on
$ sudo modprobe bonding
$ sudo ifenslave bond0 eth5
$ sudo brctl addbr br0
$ sudo brctl addif br0 bond0
without the patch, lro will still be on:
$ sudo ethtool -k eth5 | grep large-receive-offload
large-receive-offload: on
with the patch, lro will automatically get disabled when the bond is
added to the bridge:
$ sudo ethtool -k eth5 | grep large-receive-offload
large-receive-offload: off
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1547680
Title:
bonded interfaces in bridge do not have LRO turned off
Status in linux package in Ubuntu:
Fix Released
Status in linux source package in Trusty:
In Progress
Bug description:
The "large receive offload" functionality of some NICs is not
compatible with packet forwarding, because it modifies incoming
packets in an irreversible way so the packets can't be correctly
forwarded across the bridge. When an interface is added to a bridge,
the kernel automatically disables LRO via dev_disable_lro(), however
in trusty this only works for normal interfaces (or vlan/macvlan)
added to a bridge. When interfaces belong to a bond, and the bond is
added to a bridge, the interfaces' LRO is not disabled, and (some)
incoming packets are modified by LRO and then lost when passing
through the bridge.
Commit fbe168ba91f7c327856f205699404284c2f09e36 updates
dev_disable_lro() to work for all types of interfaces, including
bonds.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1547680/+subscriptions
References