svn commit: r186255 - head/sys/net
Andrew Thompson
thompsa at FreeBSD.org
Wed Dec 17 21:04:44 UTC 2008
Author: thompsa
Date: Wed Dec 17 21:04:43 2008
New Revision: 186255
URL: http://svn.freebsd.org/changeset/base/186255
Log:
- Protect against sc->sc_primary being null
- Initialise speed where its used
Modified:
head/sys/net/if_lagg.c
Modified: head/sys/net/if_lagg.c
==============================================================================
--- head/sys/net/if_lagg.c Wed Dec 17 20:58:10 2008 (r186254)
+++ head/sys/net/if_lagg.c Wed Dec 17 21:04:43 2008 (r186255)
@@ -1211,7 +1211,7 @@ lagg_linkstate(struct lagg_softc *sc)
{
struct lagg_port *lp;
int new_link = LINK_STATE_DOWN;
- uint64_t speed = 0;
+ uint64_t speed;
/* Our link is considered up if at least one of our ports is active */
SLIST_FOREACH(lp, &sc->sc_ports, lp_entries) {
@@ -1225,12 +1225,13 @@ lagg_linkstate(struct lagg_softc *sc)
/* Update if_baudrate to reflect the max possible speed */
switch (sc->sc_proto) {
case LAGG_PROTO_FAILOVER:
- sc->sc_ifp->if_baudrate =
- sc->sc_primary->lp_ifp->if_baudrate;
+ sc->sc_ifp->if_baudrate = sc->sc_primary != NULL ?
+ sc->sc_primary->lp_ifp->if_baudrate : 0;
break;
case LAGG_PROTO_ROUNDROBIN:
case LAGG_PROTO_LOADBALANCE:
case LAGG_PROTO_ETHERCHANNEL:
+ speed = 0;
SLIST_FOREACH(lp, &sc->sc_ports, lp_entries)
speed += lp->lp_ifp->if_baudrate;
sc->sc_ifp->if_baudrate = speed;
More information about the svn-src-all
mailing list