svn commit: r196519 - head/sys/net
Jack F Vogel
jfv at FreeBSD.org
Mon Aug 24 21:04:52 UTC 2009
Author: jfv
Date: Mon Aug 24 21:04:51 2009
New Revision: 196519
URL: http://svn.freebsd.org/changeset/base/196519
Log:
When bridging LRO is causing a problem, the believe
that it would work as long as all interfaces have TSO
seems to be false, until the matter gets sorted out
just disable LRO completely.
Modified:
head/sys/net/if_bridge.c
Modified: head/sys/net/if_bridge.c
==============================================================================
--- head/sys/net/if_bridge.c Mon Aug 24 20:41:51 2009 (r196518)
+++ head/sys/net/if_bridge.c Mon Aug 24 21:04:51 2009 (r196519)
@@ -171,6 +171,11 @@ __FBSDID("$FreeBSD$");
#define BRIDGE_IFCAPS_MASK (IFCAP_TOE|IFCAP_TSO|IFCAP_TXCSUM)
/*
+ * List of capabilities to strip
+ */
+#define BRIDGE_IFCAPS_STRIP IFCAP_LRO
+
+/*
* Bridge interface list entry.
*/
struct bridge_iflist {
@@ -802,16 +807,10 @@ bridge_mutecaps(struct bridge_softc *sc)
LIST_FOREACH(bif, &sc->sc_iflist, bif_next) {
enabled = bif->bif_ifp->if_capenable;
+ enabled &= ~BRIDGE_IFCAPS_STRIP;
/* strip off mask bits and enable them again if allowed */
enabled &= ~BRIDGE_IFCAPS_MASK;
enabled |= mask;
- /*
- * Receive offload can only be enabled if all members also
- * support send offload.
- */
- if ((enabled & IFCAP_TSO) == 0)
- enabled &= ~IFCAP_LRO;
-
bridge_set_ifcap(sc, bif, enabled);
}
More information about the svn-src-all
mailing list