Date: Thu, 10 Apr 2003 11:24:27 +0200 (CEST) From: Harti Brandt <brandt@fokus.fraunhofer.de> To: Harti Brandt <brandt@fokus.fraunhofer.de> Cc: "M. Warner Losh" <imp@bsdimp.com> Subject: Re: LOR in if_detach Message-ID: <20030410112136.R664@beagle.fokus.fraunhofer.de> In-Reply-To: <20030410110656.M664@beagle.fokus.fraunhofer.de> References: <20030409183521.D644@beagle.fokus.fraunhofer.de> <20030410110656.M664@beagle.fokus.fraunhofer.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 10 Apr 2003, Harti Brandt wrote: HB>On Wed, 9 Apr 2003, M. Warner Losh wrote: HB> HB>MWL>How does the lock order get to be radix, driver in the first place? HB> HB>It took me some time to find how this comes. It occures with drivers, that HB>don't use the default ifa_rtrequest, in my case in the midway driver. HB>In rtrequest1 the radix node head is locked. Later on it calls HB>ifa->ifa_rtrequest, which in turn calls the driver, where the driver lock HB>occures. HB> HB>I suppose, that the radix head lock should not be held accross the HB>ifa_rtrequest call, but it is needed a few lines below. Unfortunately my HB>understanding of the routing code is limited, so I don't know whether this HB>could be rearranged. I should add, that I think this can happen with ethernet drivers also (perhaps when manually adding arp entries). It doesn't show up, because none of the ethernet drivers actually uses locks. harti -- harti brandt, http://www.fokus.fraunhofer.de/research/cc/cats/employees/hartmut.brandt/private brandt@fokus.fraunhofer.de, harti@freebsd.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030410112136.R664>