<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/mac80211/scan.c, branch linux-2.6.37.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.37.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.37.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2010-10-07T18:41:27Z</updated>
<entry>
<title>mac80211: fix sw scan locking</title>
<updated>2010-10-07T18:41:27Z</updated>
<author>
<name>Johannes Berg</name>
</author>
<published>2010-10-07T10:55:24Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7b99a7c2dab7efe7c265b66fedbf3444958ebfe3'/>
<id>urn:sha1:7b99a7c2dab7efe7c265b66fedbf3444958ebfe3</id>
<content type='text'>
The recent scan overhaul broke locking
because now we can jump to code that
attempts to unlock, while we don't have
the mutex held. Fix this by holding the
mutex around all the relevant code.

Reported-by: Ben Greear &lt;greearb@candelatech.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>mac80211: avoid uninitialized var warning in ieee80211_scan_cancel</title>
<updated>2010-10-06T20:40:40Z</updated>
<author>
<name>John W. Linville</name>
</author>
<published>2010-10-06T20:40:40Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=494486f8fd0eec956c5df823581df5dcf5409a6f'/>
<id>urn:sha1:494486f8fd0eec956c5df823581df5dcf5409a6f</id>
<content type='text'>
net/mac80211/scan.c: In function ‘ieee80211_scan_cancel’:
net/mac80211/scan.c:794: warning: ‘finish’ may be used uninitialized in this function

Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>mac80211: compete scan to cfg80211 if deferred scan fail to start</title>
<updated>2010-10-06T20:30:42Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2010-10-06T09:22:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3aed49ef17c7bc8397420529ac976fe058818e3d'/>
<id>urn:sha1:3aed49ef17c7bc8397420529ac976fe058818e3d</id>
<content type='text'>
We nulify local-&gt;scan_req on failure in __ieee80211_start_scan, so
__ieee80211_scan_completed will not call cfg80211_scan_done. Fix that.

Signed-off-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Acked-by: Johannes Berg &lt;johannes@sipsolutions.net&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>mac80211: do not requeue scan work when not needed</title>
<updated>2010-10-06T20:30:42Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2010-10-06T09:22:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6eb11a9a311a0f7e5b9b66c18f7498a26c9ec206'/>
<id>urn:sha1:6eb11a9a311a0f7e5b9b66c18f7498a26c9ec206</id>
<content type='text'>
When performing hw scan and not abort it, __ieee80211_scan_completed()
is currently called from scan work, so does not need to reschedule work
to call drv_hw_scan().

Signed-off-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Acked-by: Johannes Berg &lt;johannes@sipsolutions.net&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>mac80211: assure we also cancel deferred scan request</title>
<updated>2010-10-06T20:30:42Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2010-10-06T09:22:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4136c4224ccf1907d309e1cdfaefef9da97dbc5e'/>
<id>urn:sha1:4136c4224ccf1907d309e1cdfaefef9da97dbc5e</id>
<content type='text'>
This is partial revert and fix for commit
85f72bc839705294b32b6c16b491c0422f0a71b3 "mac80211: only cancel
software-based scans on suspend"

When cfg80211 request the scan and mac80211 perform some management work,
we defer the scan request. We do not canceling such requests when calling
ieee80211_scan_cancel(), because of SCAN_SW_SCANNING bit check just
before the call. So fix that problem.

Another problem, which commit 85f72bc839705294b32b6c16b491c0422f0a71b3
tries to solve, is we can not cancel HW scan. Hence patch make
ieee80211_scan_cancel() ignore HW scan (see code comments). Keeping
local-&gt;mtx lock assures that the deferred scan will not become
"working" HW scan.

Signed-off-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Acked-by: Johannes Berg &lt;johannes@sipsolutions.net&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>mac80211: keep lock when calling __ieee80211_scan_completed()</title>
<updated>2010-10-06T20:30:42Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2010-10-06T09:22:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e229f844d7223b7063bea1e649203ac521a58fe1'/>
<id>urn:sha1:e229f844d7223b7063bea1e649203ac521a58fe1</id>
<content type='text'>
We are taking local-&gt;mtx inside __ieee80211_scan_completed(), but just
before call to that function we drop the lock. Dropping/taking lock is not
good, because can lead to hard to understand race conditions.

Patch split scan_completed() code into two functions, first must be called
with local-&gt;mtx taken and second without it.

Signed-off-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Acked-by: Johannes Berg &lt;johannes@sipsolutions.net&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>mac80211: reduce number of __ieee80211_scan_completed calls</title>
<updated>2010-10-06T20:30:41Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2010-10-06T09:22:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=259b62e35bf44a97983f275de569929a7d2bd5dd'/>
<id>urn:sha1:259b62e35bf44a97983f275de569929a7d2bd5dd</id>
<content type='text'>
Use goto instruction to call __ieee80211_scan_completed only ones in
ieee80211_scan_work. This is prepare for the next patch.

Signed-off-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Acked-by: Johannes Berg &lt;johannes@sipsolutions.net&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>mac80211: Add DS Parameter Set into Probe Request on 2.4 GHz</title>
<updated>2010-09-24T19:54:28Z</updated>
<author>
<name>Jouni Malinen</name>
</author>
<published>2010-08-28T16:37:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=651b52254fc061f02d965524e71de4333a009a5a'/>
<id>urn:sha1:651b52254fc061f02d965524e71de4333a009a5a</id>
<content type='text'>
IEEE Std 802.11k-2008 added DS Parameter Set information element into
Probe Request frames as an optional information on 2.4 GHz band (and
mandatory, if radio measurements are enabled). This allows APs to
filter out Probe Request frames that may be received from neighboring
overlapping channels and by doing so, reduce the number of unnecessary
frames in the air. Make mac80211 add this IE into Probe Request frames
whenever the channel is known (i.e., whenever hwscan is not used).

Signed-off-by: Jouni Malinen &lt;j@w1.fi&gt;
Acked-by: Johannes Berg &lt;johannes@sipsolutions.net&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>mac80211: Filter ProbeReq SuppRates based on TX rate mask</title>
<updated>2010-09-24T19:54:27Z</updated>
<author>
<name>Jouni Malinen</name>
</author>
<published>2010-08-28T16:36:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8dcb20038ade81f9a87c024e7f12ec74f0e95f33'/>
<id>urn:sha1:8dcb20038ade81f9a87c024e7f12ec74f0e95f33</id>
<content type='text'>
If the TX rate set has been masked, the removed rates can also be
removed from the Supported Rates and Extended Supported Rates IEs in
Probe Request frames.

Signed-off-by: Jouni Malinen &lt;j@w1.fi&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>mac80211: allow scan to complete from any context</title>
<updated>2010-08-27T17:27:06Z</updated>
<author>
<name>Johannes Berg</name>
</author>
<published>2010-08-26T11:30:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8789d459bc5e837bf37d261453df96ef54018d7b'/>
<id>urn:sha1:8789d459bc5e837bf37d261453df96ef54018d7b</id>
<content type='text'>
The ieee80211_scan_completed() function was a frequent
source of potential deadlocks, since it is called by
drivers but may call back into drivers, so drivers had
to make sure to call it without any locks held, which
frequently lead to more complex code in drivers. Avoid
that problem by allowing the function to be called in
any context, and queueing the actual work it does.
Also update the documentation for it to indicate this.

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
</feed>
