Ensure that we are holding the lock when initialising the bridge interface. We

could initialise while unlocked if the bridge is not up when setting the inet
address, ether_ioctl() would call bridge_init.

Change it so bridge_init is always called unlocked and then locks before
calling bstp_initialization().

Reported by:    Michal Mertl
Approved by:    mlaier (mentor)
MFC after:      3 days
This commit is contained in:
Andrew Thompson 2005-08-15 02:54:29 +00:00
parent a1c0fd4dee
commit 691cdb5351
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=149065

View File

@ -830,6 +830,8 @@ bstp_initialization(struct bridge_softc *sc)
{
struct bridge_iflist *bif, *mif;
BRIDGE_LOCK_ASSERT(sc);
mif = NULL;
LIST_FOREACH(bif, &sc->sc_iflist, bif_next) {
if ((bif->bif_flags & IFBIF_STP) == 0)