On Tue, Jul 14, 2015 at 11:55:14AM +0300, Shmulik Ladkani wrote: > 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. > > Fix, by converting partially summed packets to be fully checksummed. > > Shmulik Ladkani: > net/vmxnet3: Refactor 'vmxnet_rx_pkt_attach_data' > > Dana Rubin: > net/vmxnet3: Fix RX TCP/UDP checksum on partially summed packets > > hw/net/vmxnet3.c | 59 > ++++++++++++++++++++++++++++++++++++++++++++++++++ > hw/net/vmxnet_rx_pkt.c | 12 +++++++--- > hw/net/vmxnet_rx_pkt.h | 11 ++++++++++ > 3 files changed, 79 insertions(+), 3 deletions(-) > > -- > 1.9.1 > >
Thanks, applied to my net tree: https://github.com/stefanha/qemu/commits/net Stefan
pgp6clwA4UFHu.pgp
Description: PGP signature