<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/mac80211/offchannel.c, branch linux-3.8.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.8.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.8.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2013-04-12T16:52:07Z</updated>
<entry>
<title>mac80211: fix remain-on-channel cancel crash</title>
<updated>2013-04-12T16:52:07Z</updated>
<author>
<name>Johannes Berg</name>
</author>
<published>2013-03-25T10:51:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5c4a5a843043493ee5ddd9978517c4357a7245ee'/>
<id>urn:sha1:5c4a5a843043493ee5ddd9978517c4357a7245ee</id>
<content type='text'>
commit 3fbd45ca8d1c98f3c2582ef8bc70ade42f70947b upstream.

If a ROC item is canceled just as it expires, the work
struct may be scheduled while it is running (and waiting
for the mutex). This results in it being run after being
freed, which obviously crashes.

To fix this don't free it when aborting is requested but
instead mark it as "to be freed", which makes the work a
no-op and allows freeing it outside.

Reported-by: Jouni Malinen &lt;j@w1.fi&gt;
Tested-by: Jouni Malinen &lt;j@w1.fi&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>mac80211: synchronize scan off/on-channel and PS states</title>
<updated>2013-01-16T14:06:18Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2012-12-20T13:41:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=aacde9ee45225f7e0b90960f479aef83c66bfdc0'/>
<id>urn:sha1:aacde9ee45225f7e0b90960f479aef83c66bfdc0</id>
<content type='text'>
Since:

commit b23b025fe246f3acc2988eb6d400df34c27cb8ae
Author: Ben Greear &lt;greearb@candelatech.com&gt;
Date:   Fri Feb 4 11:54:17 2011 -0800

    mac80211: Optimize scans on current operating channel.

we do not disable PS while going back to operational channel (on
ieee80211_scan_state_suspend) and deffer that until scan finish.
But since we are allowed to send frames, we can send a frame to AP
without PM bit set, so disable PS on AP side. Then when we switch
to off-channel (in ieee80211_scan_state_resume) we do not enable PS.
Hence we are off-channel with PS disabled, frames are not buffered
by AP.

To fix remove offchannel_ps_disable argument and always enable PS when
going off-channel and disable it when going on-channel, like it was
before.

Cc: stable@vger.kernel.org # 2.6.39+
Signed-off-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Tested-by: Seth Forshee &lt;seth.forshee@canonical.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>Merge tag 'nfc-fixes-3.7-2' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/nfc-3.0</title>
<updated>2012-12-06T19:55:57Z</updated>
<author>
<name>John W. Linville</name>
</author>
<published>2012-12-06T19:55:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=55cb0797fa779e36f62876a8aa44cbf3984e8d59'/>
<id>urn:sha1:55cb0797fa779e36f62876a8aa44cbf3984e8d59</id>
<content type='text'>
This is an NFC LLCP fix for 3.7 and contains only one patch.

It fixes a potential crash when receiving an LLCP HDLC frame acking a frame
that is not the last sent one. In that case we may dereference an already
freed pointer.
</content>
</entry>
<entry>
<title>mac80211: fix remain-on-channel (non-)cancelling</title>
<updated>2012-11-26T19:41:40Z</updated>
<author>
<name>Johannes Berg</name>
</author>
<published>2012-11-23T23:32:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6bdd253f635f7b2ef027d116933a6c9ec148b87f'/>
<id>urn:sha1:6bdd253f635f7b2ef027d116933a6c9ec148b87f</id>
<content type='text'>
Felix Liao reported that when an interface is set DOWN
while another interface is executing a ROC, the warning
in ieee80211_start_next_roc() (about the first item on
the list having started already) triggers.

This is because ieee80211_roc_purge() calls it even if
it never actually changed the list of ROC items. To fix
this, simply remove the function call. If it is needed
then it will be done by the ieee80211_sw_roc_work()
function when the ROC item that is being removed while
active is cleaned up.

Cc: stable@vger.kernel.org
Reported-by: Felix Liao &lt;Felix.Liao@watchguard.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>cfg80211: remove remain-on-channel channel type</title>
<updated>2012-11-26T11:42:58Z</updated>
<author>
<name>Johannes Berg</name>
</author>
<published>2012-11-08T17:31:02Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=42d97a599eb6b2aab3a401b3e5799a399d6c7652'/>
<id>urn:sha1:42d97a599eb6b2aab3a401b3e5799a399d6c7652</id>
<content type='text'>
As mwifiex (and mac80211 in the software case) are the
only drivers actually implementing remain-on-channel
with channel type, userspace can't be relying on it.
This is the case, as it's used only for P2P operations
right now.

Rather than adding a flag to tell userspace whether or
not it can actually rely on it, simplify all the code
by removing the ability to use different channel types.
Leave only the validation of the attribute, so that if
we extend it again later (with the needed capability
flag), it can't break userspace sending invalid data.

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: make remain_on_channel() op pass vif param</title>
<updated>2012-11-19T15:20:37Z</updated>
<author>
<name>Eliad Peller</name>
</author>
<published>2012-11-19T15:05:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=49884568628db47a1f8c1f596c6ab3b8db81b73c'/>
<id>urn:sha1:49884568628db47a1f8c1f596c6ab3b8db81b73c</id>
<content type='text'>
Drivers (e.g. wl12xx) might need to know the vif
to roc on (mainly in order to configure the
rx filters correctly).

Add the vif to the op params, and update the current
users (iwlwifi) to use the new api.

Signed-off-by: Eliad Peller &lt;eliad@wizery.com&gt;
[fix hwsim]
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: use a counter for remain-on-channel cookie</title>
<updated>2012-10-30T08:33:40Z</updated>
<author>
<name>Johannes Berg</name>
</author>
<published>2012-10-26T14:13:06Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=50febf6a1a9270b3558671864a27b23f671598ab'/>
<id>urn:sha1:50febf6a1a9270b3558671864a27b23f671598ab</id>
<content type='text'>
Instead of using the pointer which can be re-used
fairly quickly due to allocator patterns and then
makes debugging difficult, maintain a counter and
use its value. Since it's a 64-bit value it can't
really wrap, but catch that case anyway since it
most likely points to a bug somewhere.

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: use channel contexts</title>
<updated>2012-10-17T09:02:09Z</updated>
<author>
<name>Johannes Berg</name>
</author>
<published>2012-07-26T15:24:39Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=55de908ab292c03f1eb280f51170ddb9c6b57e31'/>
<id>urn:sha1:55de908ab292c03f1eb280f51170ddb9c6b57e31</id>
<content type='text'>
Instead of operating on a single channel only,
use the new channel context infrastructure in
all mac80211 code.

This enables drivers that want to use the new
channel context infrastructure to use multiple
channels, while nothing should change for all
the other drivers that don't support it.

Right now this disables both TX power settings
and spatial multiplexing powersave. Both need
to be re-enabled on a channel context basis.

Additionally, when channel contexts are used
drop the connection when channel switch is
received rather than trying to handle it. This
will have to be improved later.

[With fixes from Eliad and Emmanuel incorporated]
Signed-off-by: Eliad Peller &lt;eliad@wizery.com&gt;
Signed-off-by: Emmanuel Grumbach &lt;emmanuel.grumbach@intel.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: track whether to use channel contexts</title>
<updated>2012-10-16T18:22:46Z</updated>
<author>
<name>Johannes Berg</name>
</author>
<published>2012-07-26T12:55:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fe57d9f5c0a2c1ef97ba8cdc42cfda5743f287b8'/>
<id>urn:sha1:fe57d9f5c0a2c1ef97ba8cdc42cfda5743f287b8</id>
<content type='text'>
Depending on the driver, channel contexts may be used or
not. If they are used, the driver must have support for
hardware scan and remain-on-channel; otherwise the driver
must not advertise support for multiple channels.

Also prohibit WDS type interfaces when channel contexts
are to be used as there's no clear definition of which
channel they use.

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: use list_move instead of list_del/list_add</title>
<updated>2012-09-06T09:55:47Z</updated>
<author>
<name>Wei Yongjun</name>
</author>
<published>2012-09-06T05:20:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a4ed53466a289a4139405bf7190c78a8e9d8debf'/>
<id>urn:sha1:a4ed53466a289a4139405bf7190c78a8e9d8debf</id>
<content type='text'>
Using list_move() instead of list_del() + list_add().

spatch with a semantic match is used to found this problem.
(http://coccinelle.lip6.fr/)

Signed-off-by: Wei Yongjun &lt;yongjun_wei@trendmicro.com.cn&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
</feed>
