summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorthompsa <thompsa@FreeBSD.org>2006-08-02 02:59:24 +0000
committerthompsa <thompsa@FreeBSD.org>2006-08-02 02:59:24 +0000
commit2c7c629f570494df46e091bcdf982d7fee6519ff (patch)
treed909c4b2535d5959e94e302a0d3e861cbfd3d7d3
parent506dd25cdf2fa6a53bd4ded80042c01d39c7c310 (diff)
downloadFreeBSD-src-2c7c629f570494df46e091bcdf982d7fee6519ff.zip
FreeBSD-src-2c7c629f570494df46e091bcdf982d7fee6519ff.tar.gz
Tell bridgestp that we are about to free the memory so it can cleanup.
-rw-r--r--sys/net/if_bridge.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/net/if_bridge.c b/sys/net/if_bridge.c
index 4e2aa80..2eb7408 100644
--- a/sys/net/if_bridge.c
+++ b/sys/net/if_bridge.c
@@ -859,6 +859,9 @@ bridge_delete_member(struct bridge_softc *sc, struct bridge_iflist *bif,
bridge_rtdelete(sc, ifs, IFBF_FLUSHALL);
+ BRIDGE_UNLOCK(sc);
+ bstp_drain(&bif->bif_stp); /* prepare to free */
+ BRIDGE_LOCK(sc);
free(bif, M_DEVBUF);
}
OpenPOWER on IntegriCloud