panic with if_iwi(4) upon "netif restart"

Alexey Dokuchaev danfe at nsu.ru
Sun Sep 29 17:22:32 UTC 2013


On Wed, Jul 04, 2012 at 06:51:56PM +0200, Bernhard Schmidt wrote:
> On Tuesday 19 June 2012 07:28:11 Alexey Dokuchaev wrote:
> > On Mon, May 07, 2012 at 08:28:50PM +0200, Bernhard Schmidt wrote:
> > > does "ps" in kgdb reveal multiple instances of wpa_supplicant running?
> > > If so, this seems to be the well known devd+netif+supplicant+newstate
> > > race/missing refcount.
> > > 
> > > Wanna try attached patch?
> > 
> > Bernhard,
> > 
> > Sorry it took so long to get back.  With your patch applied, I haven't
> > seen this panic for a while, however, double instances of wpa_supplicant
> > still persist.  So I think you can commit it, but underlying race remains
> > to be fixed.
> 
> Ok, thanks. The patch is indeed supposed to only fix the panics.
> 
> The underlying problem is that a "netif restart" results in 2
> calls to "netif wlan0 start", one through the call itself the other
> due an event sent to devd. wpa_supplicant itself has a small window
> were it is possible that 2 instances are attached to one resource.
> I have yet to find a solution for this without adding any regressions.

Funny thing: I've just tried 9-stable on this laptop of mine, and it
paniced immediately inside iwi_auth_and_assoc() again once I've run
wpa_supplicant (this time I did not do any of "netif restart" dances).

Applying the same patch fixed it for me and allowed to have working
network (typing through it right now).

Haven't tried -current yet, but it looks like iwi(4) is unusable at least
in 9.2.  Can we have this patch committed while real solution is being
worked on?  It looks like it's going to take a while, and I'd like to have
working iwi(4) like, uhm, now.  ;-)

./danfe


More information about the freebsd-stable mailing list