Skip to content
Commit 80da311d authored by Dana Rubin's avatar Dana Rubin Committed by Stefan Hajnoczi
Browse files

net/vmxnet3: Fix RX TCP/UDP checksum on partially summed packets



Convert partially summed packets to be fully checksummed.

In case csum offloaded packet, vmxnet3 implementation always passes an
RxCompDesc with the "Checksum calculated and found correct" notification
to the OS. This emulates the observed ESXi behavior.

Therefore, if packet has the NEEDS_CSUM bit set, we must calculate and
place a fully computed checksum into the tcp/udp header. Otherwise, the
OS driver will receive a checksum-correct indication but with the actual
tcp/udp checksum field having just the pseudo header csum value.

If host OS performs forwarding, it will forward an incorrectly
checksummed packet.

Signed-off-by: default avatarDana Rubin <dana.rubin@ravellosystems.com>
Signed-off-by: default avatarShmulik Ladkani <shmulik.ladkani@ravellosystems.com>
Message-id: 1436864116-19154-3-git-send-email-shmulik.ladkani@ravellosystems.com
Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
parent fcf0cdc3
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment