Project

General

Profile

Actions

Bug #3089

closed

vtnet(4) - disable TCP checksum offload by default

Added by jlane over 6 years ago. Updated about 1 year ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Driver
Target version:
Start date:
10/21/2017
Due date:
% Done:

0%

Estimated time:

Description

The existing TCP checksum offset for this driver causes ~95% retransmit rates for TCP IPv6 packets. This makes the driver effectively useless in its current state on IPv6 networks. Fixing the checksum offload code is beyond my expertise at this time, so we should at least disable the offload by default.

Patch for sys/dev/virtual/virtio/net/if_vtnet.c:

166c166
< static int vtnet_csum_disable = 0;
---

static int vtnet_csum_disable = 1; //broken for IPv6, disable by default


Related issues 1 (0 open1 closed)

Related to Bug #3090: VirtIO/vtnet: very poor IPv6 receiving performance (~100x slower)Closedvadaszi10/23/2017

Actions
Actions #1

Updated by vadaszi over 6 years ago

I cherry-picked 849f77c77acc4d5041fa638b364cb6a296a8051b (from a few days ago, which is also just disabling checksum offload) from git master to the DragonFly_RELEASE_5_0 branch.

Actions #2

Updated by vadaszi over 6 years ago

  • Status changed from New to In Progress
  • Assignee set to vadaszi
Actions #3

Updated by liweitianux over 6 years ago

  • Related to Bug #3090: VirtIO/vtnet: very poor IPv6 receiving performance (~100x slower) added
Actions #4

Updated by tuxillo almost 3 years ago

  • Target version changed from 5.0 to 6.0
Actions #5

Updated by daftaupe about 1 year ago

  • Status changed from In Progress to Closed
% uname -a
DragonFly dfly 6.5-DEVELOPMENT DragonFly v6.5.0.2.g030731-DEVELOPMENT
% ifconfig vtnet0
vtnet0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
    options=2a<TXCSUM,VLAN_MTU,JUMBO_MTU>

https://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/dddbf4cd54036c88ab90de54668f542d70b771b0?hp=22b7a3dbf6551c308d235ec4c6c793098ee0a61e

RXCSUM is disabled as default on vtnet driver. TXCSUM is advertised as being enabled as default -> manpage displays hw.vtnet_csum_disable default to 0 as a consequence and a CAVEATS section has been added too where this issue is mentionned. This seems to have solved issues about IPv6. The goal of this ticket has been achieved for me.

A new ticket would be a better place to start a discussion about how to improve that situation imo, so closing.

Actions

Also available in: Atom PDF