[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1398271901-32534-1-git-send-email-vyasevic@redhat.com>
Date: Wed, 23 Apr 2014 12:51:39 -0400
From: Vlad Yasevich <vyasevic@...hat.com>
To: netdev@...r.kernel.org
Cc: daniel.lezcano@...e.fr, nightnord@...il.com, kaber@...sh.net,
eric.dumazet@...il.com, mst@...hat.com, jasowang@...hat.com,
Vlad Yasevich <vyasevic@...hat.com>
Subject: [PATCH 0/2] Fix macvtap checksum errors in bridge mode
The following is a problematic configuration:
VM1: virtio-net device connected to macvtap0@...0
VM2: e1000 device connect to macvtap1@...0
The problem is is that virtio-net supports checksum offloading
and thus sends the packets to the host with CHECKSUM_PARTIAL set.
On the other hand, e1000 does not support any acceleration.
For small TCP packets (and this includes the 3-way handshake),
e1000 end up receiving packets that only have a partial checksum
set. This causes TCP to fail checksum validation and to drop
packets. As a result tcp connections can not be established.
The following 2 patches resolve this issue. The first patch adds
a check to the non-gso code path to see if the checksum needs to
be computed. The second patch reverts an old commit that set
ip_summed to CHECKSUM_UNNECESSARY. Proper checksum update is
necessary under certain circumstances.
I wend through the old thread
http://comments.gmane.org/gmane.linux.kernel.containers.lxc.general/1459
and tried the reproducers listed there, but could not cause
invalid checksum to trigger with this series.
Daniel and Andrian, if you have the time please try this patch
set to see if you still see the old checksum issues.
Vlad Yasevich (2):
mactap: Fix checksum errors for non-gso packets in bridge mode
Revert "macvlan : fix checksums error when we are in bridge mode"
drivers/net/macvlan.c | 3 ---
drivers/net/macvtap.c | 7 +++++++
2 files changed, 7 insertions(+), 3 deletions(-)
--
1.9.0
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists