svn commit: r250645 - stable/8/sys/dev/re

Pyun YongHyeon yongari at FreeBSD.org
Wed May 15 01:00:41 UTC 2013


Author: yongari
Date: Wed May 15 01:00:40 2013
New Revision: 250645
URL: http://svnweb.freebsd.org/changeset/base/250645

Log:
  MFC r248227:
    Disable TX IP header checksum offloading on RL_HWREV_8168CP. The
    controller generates wrong checksummed frame if the IP packet has
    IP options.

Modified:
  stable/8/sys/dev/re/if_re.c
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/dev/   (props changed)
  stable/8/sys/dev/re/   (props changed)

Modified: stable/8/sys/dev/re/if_re.c
==============================================================================
--- stable/8/sys/dev/re/if_re.c	Wed May 15 00:58:45 2013	(r250644)
+++ stable/8/sys/dev/re/if_re.c	Wed May 15 01:00:40 2013	(r250645)
@@ -1583,7 +1583,8 @@ re_attach(device_t dev)
 	 * packet has IP options so disable TX IP checksum offloading.
 	 */
 	if (sc->rl_hwrev->rl_rev == RL_HWREV_8168C ||
-	    sc->rl_hwrev->rl_rev == RL_HWREV_8168C_SPIN2)
+	    sc->rl_hwrev->rl_rev == RL_HWREV_8168C_SPIN2 ||
+	    sc->rl_hwrev->rl_rev == RL_HWREV_8168CP)
 		ifp->if_hwassist = CSUM_TCP | CSUM_UDP;
 	else
 		ifp->if_hwassist = CSUM_IP | CSUM_TCP | CSUM_UDP;
@@ -3374,7 +3375,8 @@ re_ioctl(struct ifnet *ifp, u_long comma
 			if ((ifp->if_capenable & IFCAP_TXCSUM) != 0) {
 				rev = sc->rl_hwrev->rl_rev;
 				if (rev == RL_HWREV_8168C ||
-				    rev == RL_HWREV_8168C_SPIN2)
+				    rev == RL_HWREV_8168C_SPIN2 ||
+				    rev == RL_HWREV_8168CP)
 					ifp->if_hwassist |= CSUM_TCP | CSUM_UDP;
 				else
 					ifp->if_hwassist |= RE_CSUM_FEATURES;


More information about the svn-src-stable mailing list