Disable TSO support.

Under certain circumtances, if TSO is active, Yukon II generates
corrupted IP packets. All corrupted IP packets I noticed were the the
last segmented packet in a TSO request. The corrupted packet resulted
in retransmission of the damaged packet which in turn decreased network
performance dramatically.
Unfortunately it seems that there is no way to workaround this bug
as TSO is completely handled in hardware. Disable TSO until we find a
working workaround or a new silicon revision that doesn't have this
hardware bug.
This commit is contained in:
Pyun YongHyeon 2007-04-25 01:17:44 +00:00
parent 3326191f71
commit b2313f5861

View File

@ -1452,11 +1452,19 @@ msk_attach(device_t dev)
*/
ifp->if_capabilities = IFCAP_TXCSUM;
ifp->if_hwassist = MSK_CSUM_FEATURES;
#if 0
/*
* Under certain circumtances, if TSO is active, Yukon II generates
* corrupted IP packets. Disable TSO until we find a working
* workaround or a new silicon revision that doesn't have this
* hardware bug.
*/
if (sc->msk_hw_id != CHIP_ID_YUKON_EC_U) {
/* It seems Yukon EC Ultra doesn't support TSO. */
ifp->if_capabilities |= IFCAP_TSO4;
ifp->if_hwassist |= CSUM_TSO;
}
#endif
ifp->if_capenable = ifp->if_capabilities;
ifp->if_ioctl = msk_ioctl;
ifp->if_start = msk_start;