netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 0/3] dev_disable_lro() improvements for stacked devices
@ 2014-11-11  8:21 Michal Kubecek
  2014-11-11  8:21 ` [PATCH net-next 1/3] net: handle more general stacking in dev_disable_lro() Michal Kubecek
                   ` (3 more replies)
  0 siblings, 4 replies; 12+ messages in thread
From: Michal Kubecek @ 2014-11-11  8:21 UTC (permalink / raw)
  To: David S. Miller
  Cc: netdev, linux-kernel, Jay Vosburgh, Veaceslav Falico,
	Andy Gospodarek, Jiri Pirko

Large receive offloading is known to cause problems if received packets
are passed to other host. Therefore the kernel disables it by calling
dev_disable_lro() whenever a network device is enslaved in a bridge or
forwarding is enabled for it (or globally). For virtual devices we need
to disable LRO on the underlying physical device (which is actually
receiving the packets).

Current dev_disable_lro() code handles this propagation for a vlan
(including 802.1ad nested vlan), macvlan or a vlan on top of a macvlan.
This patch adds LRO disabling propagation for

  - macvlan on top of a vlan or any stacked combination of those
  - bonding
  - teaming

In the bonding and teaming case, it is necessary to disable LRO not only
on slaves when dev_disable_lro() is called but also on any slave (port)
added later.

Michal Kubecek (3):
  net: handle more general stacking in dev_disable_lro()
  team: add helper to check if device is a team master
  net: propagate LRO disabling to bond and team slaves

 drivers/net/bonding/bond_main.c |  3 +++
 drivers/net/team/team.c         |  6 +++++-
 include/linux/netdevice.h       |  7 +++++++
 net/core/dev.c                  | 31 ++++++++++++++++++++++---------
 4 files changed, 37 insertions(+), 10 deletions(-)

-- 
1.8.4.5

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2014-11-13 19:49 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-11-11  8:21 [PATCH net-next 0/3] dev_disable_lro() improvements for stacked devices Michal Kubecek
2014-11-11  8:21 ` [PATCH net-next 1/3] net: handle more general stacking in dev_disable_lro() Michal Kubecek
2014-11-11  8:21 ` [PATCH net-next 2/3] team: add helper to check if device is a team master Michal Kubecek
2014-11-11  8:22 ` [PATCH net-next 3/3] net: propagate LRO disabling to bond and team slaves Michal Kubecek
2014-11-11  9:05 ` [PATCH net-next 0/3] dev_disable_lro() improvements for stacked devices Veaceslav Falico
2014-11-11  9:34   ` Michal Kubecek
2014-11-12  2:47     ` David Miller
2014-11-12 13:15       ` Michal Kubecek
2014-11-12 20:08         ` David Miller
2014-11-13  6:54       ` [PATCH net-next v2] net: generic dev_disable_lro() stacked device handling Michal Kubecek
2014-11-13  7:15         ` Veaceslav Falico
2014-11-13 19:49         ` David Miller

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).