Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 14 Oct 2011 09:14:07 -0700
From:      Edgar Martinez <emartinez@kbcnetworks.com>
To:        Adrian Chadd <adrian@freebsd.org>
Cc:        "freebsd-wireless@freebsd.org" <freebsd-wireless@freebsd.org>
Subject:   RE: LOR - COM LOCK
Message-ID:  <957EB052144AA64AB39F7AB268783201022FB259D2@VA3DIAXVS881.RED001.local>
In-Reply-To: <CAJ-VmonbnUXOaNKiDtF7fHhPO0tK_FewqaVQVi-Fjcbbna57Sw@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
I've noticed that I can get the behavior to *usually* repeat if you kick a =
station after association.

Thanks for the info, I'll see if I can hunt it down.

-----Original Message-----
From: adrian.chadd@gmail.com [mailto:adrian.chadd@gmail.com] On Behalf Of A=
drian Chadd
Sent: Thursday, October 13, 2011 9:15 PM
To: Edgar Martinez
Cc: freebsd-wireless@freebsd.org
Subject: Re: LOR - COM LOCK

On 11 October 2011 23:49, Edgar Martinez <emartinez@kbcnetworks.com> wrote:
> lock order reversal:
> =A01st 0xc5912778 ath1_scan_lock (ath1_scan_lock) @ /usr/src/sys/net80211=
/ieee80211_node.c:2158
> =A02nd 0xc5911014 ath1_com_lock (ath1_com_lock) @ /usr/src/sys/net80211/i=
eee80211_node.c:2510

This is a bit odd. I'm seeing the same LOR.

>From what I've determined:

* hostap_newstate: the comlock is held, then it calls
ieee80211_iterate_nodes(), which grabs the scan/node lock.
* ioctl -> ieee80211_ioctl -> ieee80211_iterate_nodes() which grabs
the scan/node lock, -> ieee80211_node_leave(), which grabs the
comlock.

I'm not sure what the correct fix should be and I don't have the time
at the moment to fix it. But yes, it should be fixed.


Adrian





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