kern/140036: [iwn] [lor] lock order reversal with iwn0_com_lock
and iwn0 softc lock
Benjamin Kaduk
kaduk at MIT.EDU
Sat Dec 5 20:30:04 UTC 2009
The following reply was made to PR kern/140036; it has been noted by GNATS.
From: Benjamin Kaduk <kaduk at MIT.EDU>
To: Bernhard Schmidt <bschmidt at techwires.net>
Cc: sam at freebsd.org, bug-followup at freebsd.org
Subject: Re: kern/140036: [iwn] [lor] lock order reversal with iwn0_com_lock
and iwn0 softc lock
Date: Sat, 5 Dec 2009 15:25:25 -0500 (EST)
On Sat, 5 Dec 2009, Bernhard Schmidt wrote:
> On Saturday 05 December 2009 03:49:42 Benjamin Kaduk wrote:
>> Okay, I've been getting these lockups fairly frequently -- in fact,
>> there was this one room where I was getting them every five minutes
>> or so. I hypothesized that dissociation/association events might
>> be triggers, so I set dev.iwn.0.debug=-1 and started wandering around
>> this building (which is chock full of APs).
>> I get:
>> panic: lock (sleep mutex) iwn0_com_lock not locked @
>> /usr/devel/iwn/freebsd/sys/modules/iwn/../../dev/iwn/if_iwn.c:3254
>
> Are you sure your code is in sync? there is nothing accessing the lock in
> if_iwn.c:3254
>
> 3251 if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) {
> 3252 ieee80211_free_node(ni);
> 3253 m_freem(m);
> 3254 return ENETDOWN;
> 3255 }
>
Apparently not -- `svn info` claims that I only have r13, and
the web the web interface shows up to r20.
I guess I've been using cvs for too long, and expected
`${VCS_COMMAND} diff` to default to showing differences from the
head of the repository/current branch.
I'll update and revert my change to net80211/ieee80211_proto.c and
see what changes.
Sorry for the noise,
Ben
More information about the freebsd-net
mailing list