summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoryongari <yongari@FreeBSD.org>2013-02-27 05:03:35 +0000
committeryongari <yongari@FreeBSD.org>2013-02-27 05:03:35 +0000
commitce7d028db9f232c0df518a1f0a89c816791cdd1c (patch)
tree5a899e447ae40030f337cd7058c4eeafaf3e056c
parent10eb1694de00c5e3aedd3aaa72a5f93557ab9779 (diff)
downloadFreeBSD-src-ce7d028db9f232c0df518a1f0a89c816791cdd1c.zip
FreeBSD-src-ce7d028db9f232c0df518a1f0a89c816791cdd1c.tar.gz
RX checksum offloading on old Yukon controllers seem to cause more
problems. Disable RX checksum offloading on controllers that don't use new descriptor format but give chance to enable it with ifconfig(8).
-rw-r--r--sys/dev/msk/if_msk.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/dev/msk/if_msk.c b/sys/dev/msk/if_msk.c
index d0ca808..664575c 100644
--- a/sys/dev/msk/if_msk.c
+++ b/sys/dev/msk/if_msk.c
@@ -1695,6 +1695,12 @@ msk_attach(device_t dev)
ifp->if_capabilities |= IFCAP_VLAN_HWCSUM;
}
ifp->if_capenable = ifp->if_capabilities;
+ /*
+ * Disable RX checksum offloading on controllers that don't use
+ * new descriptor format but give chance to enable it.
+ */
+ if ((sc_if->msk_flags & MSK_FLAG_DESCV2) == 0)
+ ifp->if_capenable &= ~IFCAP_RXCSUM;
/*
* Tell the upper layer(s) we support long frames.
OpenPOWER on IntegriCloud