Date: Mon, 11 Aug 2003 14:40:04 -0700 (PDT) From: Ted Unangst <tedu@stanford.edu> To: freebsd-hackers@freebsd.org Subject: Re: possible deadlocks? Message-ID: <Pine.GSO.4.44.0308111434150.19330-100000@saga8.Stanford.EDU> In-Reply-To: <Pine.GSO.4.44.0308061506120.29218-100000@saga0.Stanford.EDU>
next in thread | previous in thread | raw e-mail | index | archive | help
one more. This falls into the very improbable category. Ordinarily, I don't think this is possible because FreeBSD doesn't support hotplug PCI, so sk attachment can't be raced. However, assuming I had some hot plug sk card, it seems like running ifconfig sk0 at just the wrong point during sk1 attach will deadlock. If it absolutely can not happen (for a reason other than sk is attached before init runs) please explain. sk.c: sk_attach_xmac() SK_LOCK(sc); /* grabs */ ether_ifattach() ifattach() IFNET_WLOCK() /* waits for 2 */ in6_ifattach.c: in6_nigroup_attach() IFNET_RLOCK() /* grabs */ in6_addmulti() if_addmulti() sk_ioctl() SK_IF_LOCK(); /* waits for 1 */ -- "First, it was not a strip bar, it was an erotic club. And second, what can I say? I'm a night owl." - M. Barry, Mayor of Washington, DC
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.4.44.0308111434150.19330-100000>