Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 21 Jun 2016 06:56:09 +0000 (UTC)
From:      Sepherosa Ziehau <sephe@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org
Subject:   svn commit: r302052 - stable/10/sys/dev/mxge
Message-ID:  <201606210656.u5L6u9JJ028079@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: sephe
Date: Tue Jun 21 06:56:09 2016
New Revision: 302052
URL: https://svnweb.freebsd.org/changeset/base/302052

Log:
  MFC 299506
  
      mxge: Setup mbuf flowid before calling tcp_lro_rx().
  
      Reviewed by:        gallatin
      MFC after:  1 week
      Sponsored by:       Microsoft OSTC
      Differential Revision:      https://reviews.freebsd.org/D6320

Modified:
  stable/10/sys/dev/mxge/if_mxge.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/dev/mxge/if_mxge.c
==============================================================================
--- stable/10/sys/dev/mxge/if_mxge.c	Tue Jun 21 06:52:21 2016	(r302051)
+++ stable/10/sys/dev/mxge/if_mxge.c	Tue Jun 21 06:56:09 2016	(r302052)
@@ -2701,8 +2701,12 @@ mxge_rx_done_big(struct mxge_slice_state
 	if (eh->ether_type == htons(ETHERTYPE_VLAN)) {
 		mxge_vlan_tag_remove(m, &csum);
 	}
+	/* flowid only valid if RSS hashing is enabled */
+	if (sc->num_slices > 1) {
+		m->m_pkthdr.flowid = (ss - sc->ss);
+		M_HASHTYPE_SET(m, M_HASHTYPE_OPAQUE);
+	}
 	/* if the checksum is valid, mark it in the mbuf header */
-	
 	if ((ifp->if_capenable & (IFCAP_RXCSUM_IPV6 | IFCAP_RXCSUM)) &&
 	    (0 == mxge_rx_csum(m, csum))) {
 		/* Tell the stack that the  checksum is good */
@@ -2715,11 +2719,6 @@ mxge_rx_done_big(struct mxge_slice_state
 			return;
 #endif
 	}
-	/* flowid only valid if RSS hashing is enabled */
-	if (sc->num_slices > 1) {
-		m->m_pkthdr.flowid = (ss - sc->ss);
-		M_HASHTYPE_SET(m, M_HASHTYPE_OPAQUE);
-	}
 	/* pass the frame up the stack */
 	(*ifp->if_input)(ifp, m);
 }
@@ -2770,6 +2769,11 @@ mxge_rx_done_small(struct mxge_slice_sta
 	if (eh->ether_type == htons(ETHERTYPE_VLAN)) {
 		mxge_vlan_tag_remove(m, &csum);
 	}
+	/* flowid only valid if RSS hashing is enabled */
+	if (sc->num_slices > 1) {
+		m->m_pkthdr.flowid = (ss - sc->ss);
+		M_HASHTYPE_SET(m, M_HASHTYPE_OPAQUE);
+	}
 	/* if the checksum is valid, mark it in the mbuf header */
 	if ((ifp->if_capenable & (IFCAP_RXCSUM_IPV6 | IFCAP_RXCSUM)) &&
 	    (0 == mxge_rx_csum(m, csum))) {
@@ -2783,11 +2787,6 @@ mxge_rx_done_small(struct mxge_slice_sta
 			return;
 #endif
 	}
-	/* flowid only valid if RSS hashing is enabled */
-	if (sc->num_slices > 1) {
-		m->m_pkthdr.flowid = (ss - sc->ss);
-		M_HASHTYPE_SET(m, M_HASHTYPE_OPAQUE);
-	}
 	/* pass the frame up the stack */
 	(*ifp->if_input)(ifp, m);
 }



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201606210656.u5L6u9JJ028079>