<feed xmlns='http://www.w3.org/2005/Atom'>
<title>BMC/Intel-BMC/linux.git/net/mac80211/mesh_plink.c, branch dev</title>
<subtitle>Intel OpenBMC Linux kernel source tree (mirror)</subtitle>
<id>https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=dev</id>
<link rel='self' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=dev'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/'/>
<updated>2015-07-17T12:39:42+00:00</updated>
<entry>
<title>mac80211: add missing length check for confirm frames</title>
<updated>2015-07-17T12:39:42+00:00</updated>
<author>
<name>Bob Copeland</name>
<email>me@bobcopeland.com</email>
</author>
<published>2015-07-14T12:31:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=b3e7de873df77c1fa0bc2cfaf3eaff757b80e773'/>
<id>urn:sha1:b3e7de873df77c1fa0bc2cfaf3eaff757b80e773</id>
<content type='text'>
Although mesh_rx_plink_frame() already checks that frames have enough
bytes for the action code plus another two bytes for capability/reason
code, it doesn't take into account that confirm frames also have an
additional two-byte aid.  As a result, a corrupt frame could cause a
subsequent subtraction to wrap around to ill effect.  Add another
check for this case.

Signed-off-by: Bob Copeland &lt;me@bobcopeland.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: correct aid location in peering frames</title>
<updated>2015-07-17T12:38:10+00:00</updated>
<author>
<name>Bob Copeland</name>
<email>me@bobcopeland.com</email>
</author>
<published>2015-07-14T12:31:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=2ea752cd2ce066c5d8c1807b5310ef329885cecb'/>
<id>urn:sha1:2ea752cd2ce066c5d8c1807b5310ef329885cecb</id>
<content type='text'>
According to 802.11-2012 8.5.16.3.2 AID comes directly after the
capability bytes in mesh peering confirm frames.  The existing
code, however, was adding a 2 byte offset to this location,
resulting in garbage data going out over the air.  Remove the
offset to fix it.

Signed-off-by: Bob Copeland &lt;me@bobcopeland.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: Always check rates and capabilities in mesh mode</title>
<updated>2015-06-09T20:05:06+00:00</updated>
<author>
<name>Alexis Green</name>
<email>agreen@cococorp.com</email>
</author>
<published>2015-06-09T20:00:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=e060e7adc296c0b3eab1d7b96f36b496733109e4'/>
<id>urn:sha1:e060e7adc296c0b3eab1d7b96f36b496733109e4</id>
<content type='text'>
In mesh mode there is a race between establishing links and processing
rates and capabilities in beacons. This is very noticeable with slow
beacons (e.g. beacon intervals of 1s) and manifested for us as stations
using minstrel when minstrel_ht should be used. Fixed by changing
mesh_sta_info_init so that it always checks rates and such if it has not
already done so.

Signed-off-by: Alexis Green &lt;agreen@cococorp.com&gt;
CC: Jesse Jones &lt;jjones@cococorp.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: remove short slot/short preamble incapable flags</title>
<updated>2015-06-02T18:28:58+00:00</updated>
<author>
<name>Johannes Berg</name>
<email>johannes.berg@intel.com</email>
</author>
<published>2015-06-02T18:15:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=ea1b2b45f513c6f9ee49b465b1a9281feb783532'/>
<id>urn:sha1:ea1b2b45f513c6f9ee49b465b1a9281feb783532</id>
<content type='text'>
There are no drivers setting IEEE80211_HW_2GHZ_SHORT_SLOT_INCAPABLE
or IEEE80211_HW_2GHZ_SHORT_PREAMBLE_INCAPABLE, so any code using the
two flags is dead; it's also exceedingly unlikely that any new driver
could ever need to set these flags.

The wcn36xx code is almost certainly broken, but this preserves the
previous behaviour.

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: introduce plink lock for plink fields</title>
<updated>2015-04-20T11:05:29+00:00</updated>
<author>
<name>Bob Copeland</name>
<email>me@bobcopeland.com</email>
</author>
<published>2015-04-13T21:26:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=48bf6beddf455b0cb605915081f3428960a6224e'/>
<id>urn:sha1:48bf6beddf455b0cb605915081f3428960a6224e</id>
<content type='text'>
The mesh plink code uses sta-&gt;lock to serialize access to the
plink state fields between the peer link state machine and the
peer link timer.  Some paths (e.g. those involving
mps_qos_null_tx()) unfortunately hold this spinlock across
frame tx, which is soon to be disallowed.  Add a new spinlock
just for plink access.

Signed-off-by: Bob Copeland &lt;me@bobcopeland.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: add VHT support for IBSS</title>
<updated>2015-03-30T08:48:26+00:00</updated>
<author>
<name>Janusz.Dziedzic@tieto.com</name>
<email>Janusz.Dziedzic@tieto.com</email>
</author>
<published>2015-03-20T05:37:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=abcff6ef01f9ffa6958e50457574132f8f786308'/>
<id>urn:sha1:abcff6ef01f9ffa6958e50457574132f8f786308</id>
<content type='text'>
Add VHT support for IBSS. Drivers could activate
this feature by setting NL80211_EXT_FEATURE_VHT_IBSS
flag.

Signed-off-by: Janusz Dziedzic &lt;janusz.dziedzic@tieto.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mesh_plink: fixup type of timeout to match usage</title>
<updated>2015-03-04T09:34:14+00:00</updated>
<author>
<name>Nicholas Mc Guire</name>
<email>hofrat@osadl.org</email>
</author>
<published>2015-03-02T09:54:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=0df2f6c11813a3e522f72f6998b00ae8e17dd4df'/>
<id>urn:sha1:0df2f6c11813a3e522f72f6998b00ae8e17dd4df</id>
<content type='text'>
timeout was being passed as int but assigned from u32/u16 values and used
as unsigned type. This is really only for better readability.

Signed-off-by: Nicholas Mc Guire &lt;hofrat@osadl.org&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mesh_plink: use msecs_to_jiffies for proper time conversion</title>
<updated>2015-03-04T09:34:13+00:00</updated>
<author>
<name>Nicholas Mc Guire</name>
<email>hofrat@osadl.org</email>
</author>
<published>2015-03-02T09:54:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=cc57ac536a88604824aca1d3c874fd5252f1e867'/>
<id>urn:sha1:cc57ac536a88604824aca1d3c874fd5252f1e867</id>
<content type='text'>
This is primarily an API consolidation and should make things more readable
it replaces var * HZ / 1000 by msecs_to_jiffies(var) which also handles
corner cases correctly.

There is a change of behavior as e.g. for HZ 100, t * HZ / 1000 will
return 0 for t &lt; 10 but msecs_to_jiffies will return at least 1 always.

Signed-off-by: Nicholas Mc Guire &lt;hofrat@osadl.org&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>Revert "mac80211: keep sending peer candidate events while in listen state"</title>
<updated>2015-01-23T09:57:19+00:00</updated>
<author>
<name>Bob Copeland</name>
<email>me@bobcopeland.com</email>
</author>
<published>2015-01-22T21:49:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=985e88b13a25599eeb46b03c123531a5a11ac1cd'/>
<id>urn:sha1:985e88b13a25599eeb46b03c123531a5a11ac1cd</id>
<content type='text'>
This reverts commit 2ae70efcea7a695a62bb47170d3fb16674b8dbea.

The new peer events that are generated by the change are causing problems
with wpa_supplicant in userspace: wpa_s tries to restart SAE authentication
with the peer when receiving the event, even though authentication may be in
progress already, and it gets very confused.

Revert back to the original operating mode, which is to only get events when
there is no corresponding station entry.

Cc: Nishikawa, Kenzoh &lt;Kenzoh.Nishikawa@jp.sony.com&gt;
Cc: Masashi Honma &lt;masashi.honma@gmail.com&gt;
Signed-off-by: Bob Copeland &lt;me@bobcopeland.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: keep sending peer candidate events while in listen state</title>
<updated>2014-12-17T10:49:24+00:00</updated>
<author>
<name>Nishikawa, Kenzoh</name>
<email>Kenzoh.Nishikawa@jp.sony.com</email>
</author>
<published>2014-12-16T01:41:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=2ae70efcea7a695a62bb47170d3fb16674b8dbea'/>
<id>urn:sha1:2ae70efcea7a695a62bb47170d3fb16674b8dbea</id>
<content type='text'>
Instead of sending peer candidate events just once, send them as long
as the peer remains in the LISTEN state in the peering state machine,
when userspace is implementing the peering manager.
Userspace may silence the events from a peer by progressing the state
machine or by setting the link state to BLOCKED.

Fixes the problem that a mesh peering process won't be fired again after
the previous first peering trial fails due to like air propagation error
if the peering is managed by user space such as wpa_supplicant.

This patch works with another patch for wpa_supplicant described here
which fires a peering process again triggered by the notice from kernel.
http://lists.shmoo.com/pipermail/hostap/2014-November/031235.html

Signed-off-by: Kenzoh Nishikawa &lt;Kenzoh.Nishikawa@jp.sony.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
</feed>
