svn commit: r191692 - head/sys/net

Andrew Thompson thompsa at FreeBSD.org
Thu Apr 30 14:25:49 UTC 2009


Author: thompsa
Date: Thu Apr 30 14:25:44 2009
New Revision: 191692
URL: http://svn.freebsd.org/changeset/base/191692

Log:
  Use the flowid if its available for selecting the tx port.

Modified:
  head/sys/net/ieee8023ad_lacp.c
  head/sys/net/if_lagg.c

Modified: head/sys/net/ieee8023ad_lacp.c
==============================================================================
--- head/sys/net/ieee8023ad_lacp.c	Thu Apr 30 14:21:50 2009	(r191691)
+++ head/sys/net/ieee8023ad_lacp.c	Thu Apr 30 14:25:44 2009	(r191692)
@@ -812,7 +812,10 @@ lacp_select_tx_port(struct lagg_softc *s
 		return (NULL);
 	}
 
-	hash = lagg_hashmbuf(m, lsc->lsc_hashkey);
+	if (m->m_flags & M_FLOWID)
+		hash = m->m_pkthdr.flowid;
+	else
+		hash = lagg_hashmbuf(m, lsc->lsc_hashkey);
 	hash %= pm->pm_count;
 	lp = pm->pm_map[hash];
 

Modified: head/sys/net/if_lagg.c
==============================================================================
--- head/sys/net/if_lagg.c	Thu Apr 30 14:21:50 2009	(r191691)
+++ head/sys/net/if_lagg.c	Thu Apr 30 14:25:44 2009	(r191692)
@@ -1604,7 +1604,10 @@ lagg_lb_start(struct lagg_softc *sc, str
 	struct lagg_port *lp = NULL;
 	uint32_t p = 0;
 
-	p = lagg_hashmbuf(m, lb->lb_key);
+	if (m->m_flags & M_FLOWID)
+		p = m->m_pkthdr.flowid;
+	else
+		p = lagg_hashmbuf(m, lb->lb_key);
 	p %= sc->sc_count;
 	lp = lb->lb_ports[p];
 


More information about the svn-src-head mailing list