Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 4 Jul 2012 18:51:56 +0200
From:      Bernhard Schmidt <bschmidt@freebsd.org>
To:        freebsd-stable@freebsd.org
Cc:        Alexey Dokuchaev <danfe@nsu.ru>
Subject:   Re: panic with if_iwi(4) upon "netif restart"
Message-ID:  <201207041851.56283.bschmidt@freebsd.org>
In-Reply-To: <20120619052810.GA40402@regency.nsu.ru>
References:  <20120507035405.GA47351@regency.nsu.ru> <CAAgh0_aS-7EvM1QgQzOgUF4Hqhd3w394nxw=vzB6b-e2AeUe6A@mail.gmail.com> <20120619052810.GA40402@regency.nsu.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tuesday 19 June 2012 07:28:11 Alexey Dokuchaev wrote:
> On Mon, May 07, 2012 at 08:28:50PM +0200, Bernhard Schmidt wrote:
> > On Mon, May 7, 2012 at 5:54 AM, Alexey Dokuchaev <danfe@nsu.ru> wrote:
> > > Weird panic occurs to me here with iwi(4) based laptop when trying to hook
> > > up to WPA-protected network with "service netif restart".  Kernel and
> > > userland are not strictly in sync, with the latter lagging behind couple
> > > of months, but presumably this fact should not matter on stable branch.
> > 
> > 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.

-- 
Bernhard



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201207041851.56283.bschmidt>