summaryrefslogtreecommitdiffstats
path: root/sys/dev
diff options
context:
space:
mode:
authorRenato Botelho <renato@netgate.com>2016-02-05 13:54:51 -0200
committerRenato Botelho <renato@netgate.com>2016-02-05 13:54:51 -0200
commit12edb8fb64808ccdca681c3a2f91ca3a8dffee05 (patch)
treeb92d95356a5c846a8267ec68ee4ee23c79fa266b /sys/dev
parent6d705f0ca9e210c25ef8bcedc8d728b8586890bf (diff)
parentc716b856dd284bb5dbcf6281e10b3ab9bacf0b15 (diff)
downloadFreeBSD-src-12edb8fb64808ccdca681c3a2f91ca3a8dffee05.zip
FreeBSD-src-12edb8fb64808ccdca681c3a2f91ca3a8dffee05.tar.gz
Merge remote-tracking branch 'origin/stable/10' into devel
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/e1000/if_em.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c
index 5ad5f62..691292d 100644
--- a/sys/dev/e1000/if_em.c
+++ b/sys/dev/e1000/if_em.c
@@ -1377,8 +1377,15 @@ em_init_locked(struct adapter *adapter)
ifp->if_hwassist = 0;
if (ifp->if_capenable & IFCAP_TXCSUM)
ifp->if_hwassist |= (CSUM_TCP | CSUM_UDP);
- if (ifp->if_capenable & IFCAP_TSO4)
- ifp->if_hwassist |= CSUM_TSO;
+ /*
+ ** There have proven to be problems with TSO when not
+ ** at full gigabit speed, so disable the assist automatically
+ ** when at lower speeds. -jfv
+ */
+ if (ifp->if_capenable & IFCAP_TSO4) {
+ if (adapter->link_speed == SPEED_1000)
+ ifp->if_hwassist |= CSUM_TSO;
+ }
/* Configure for OS presence */
em_init_manageability(adapter);
OpenPOWER on IntegriCloud