<feed xmlns='http://www.w3.org/2005/Atom'>
<title>BMC/Intel-BMC/linux.git/net/mac80211/driver-ops.h, branch dev-4.4</title>
<subtitle>Intel OpenBMC Linux kernel source tree (mirror)</subtitle>
<id>https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=dev-4.4</id>
<link rel='self' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=dev-4.4'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/'/>
<updated>2015-11-03T10:15:48+00:00</updated>
<entry>
<title>mac80211: document sleep requirements for channel context ops</title>
<updated>2015-11-03T10:15:48+00:00</updated>
<author>
<name>Chaitanya T K</name>
<email>chaitanya.mgit@gmail.com</email>
</author>
<published>2015-10-30T17:46:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=dcae9e0203dfd887a7413cd38d1f87aaac1127f4'/>
<id>urn:sha1:dcae9e0203dfd887a7413cd38d1f87aaac1127f4</id>
<content type='text'>
Channel context driver operations can sleep, so add might_sleep()
and document this.

Signed-off-by: Chaitanya T K &lt;chaitanya.mgit@gmail.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: call drv_stop only if driver is started</title>
<updated>2015-11-03T09:41:12+00:00</updated>
<author>
<name>Eliad Peller</name>
<email>eliad@wizery.com</email>
</author>
<published>2015-10-25T08:59:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=968a76cef3d1bb9a3b4d135cd788056e742859f3'/>
<id>urn:sha1:968a76cef3d1bb9a3b4d135cd788056e742859f3</id>
<content type='text'>
If drv_start() fails during hw_restart, all the running
interfaces are being closed/stopped, which results in
drv_stop() being called, although the driver was never
started successfully.

This might cause drivers to perform operations on uninitialized
memory (as they assume it was initialized on drv_start)

Consider the local-&gt;started flag, and call the driver's stop()
op only if drv_start() succeeded before.

Move drv_start() and drv_stop() to driver-ops.c, as they are no
longer simple wrappers.

Signed-off-by: Eliad Peller &lt;eliadx.peller@intel.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: Deinline drv_get/set/reset_tsf()</title>
<updated>2015-09-29T13:56:49+00:00</updated>
<author>
<name>Denys Vlasenko</name>
<email>dvlasenk@redhat.com</email>
</author>
<published>2015-09-23T12:18:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=416eb9fc29469f036c85b412edf89774d6b34b0f'/>
<id>urn:sha1:416eb9fc29469f036c85b412edf89774d6b34b0f</id>
<content type='text'>
With this .config: http://busybox.net/~vda/kernel_config_ALLYES_Os,
after deinlining these functions have sizes and callsite counts
as follows:

drv_get_tsf: 634 bytes, 6 calls
drv_set_tsf: 626 bytes, 2 calls
drv_reset_tsf: 617 bytes, 2 calls

Total size reduction is about 4.2 kbytes.

Signed-off-by: Denys Vlasenko &lt;dvlasenk@redhat.com&gt;
CC: Johannes Berg &lt;johannes.berg@intel.com&gt;
CC: John Linville &lt;linville@tuxdriver.com&gt;
CC: Michal Kazior &lt;michal.kazior@tieto.com&gt;
CC: linux-wireless@vger.kernel.org
CC: linux-kernel@vger.kernel.org
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: Deinline drv_ampdu_action()</title>
<updated>2015-09-29T13:56:49+00:00</updated>
<author>
<name>Denys Vlasenko</name>
<email>dvlasenk@redhat.com</email>
</author>
<published>2015-09-23T12:18:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=6db96838971eb4c8ae6285795188f391e97d47c3'/>
<id>urn:sha1:6db96838971eb4c8ae6285795188f391e97d47c3</id>
<content type='text'>
With this .config: http://busybox.net/~vda/kernel_config_ALLYES_Os,
after deinlining the function size is 755 bytes and there are
6 callsites.

Total size reduction is about 3.3 kbytes.

Signed-off-by: Denys Vlasenko &lt;dvlasenk@redhat.com&gt;
CC: Johannes Berg &lt;johannes.berg@intel.com&gt;
CC: John Linville &lt;linville@tuxdriver.com&gt;
CC: Michal Kazior &lt;michal.kazior@tieto.com&gt;
CC: linux-wireless@vger.kernel.org
CC: linux-kernel@vger.kernel.org
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: Deinline drv_switch_vif_chanctx()</title>
<updated>2015-09-29T13:56:48+00:00</updated>
<author>
<name>Denys Vlasenko</name>
<email>dvlasenk@redhat.com</email>
</author>
<published>2015-09-23T12:18:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=42677ed33a8b6995e6af2ec15643840afcf1c48b'/>
<id>urn:sha1:42677ed33a8b6995e6af2ec15643840afcf1c48b</id>
<content type='text'>
With this .config: http://busybox.net/~vda/kernel_config_ALLYES_Os,
after deinlining the function size is 821 bytes and there are
2 callsites, reducing code size by about 800 bytes.

Signed-off-by: Denys Vlasenko &lt;dvlasenk@redhat.com&gt;
CC: Johannes Berg &lt;johannes.berg@intel.com&gt;
CC: John Linville &lt;linville@tuxdriver.com&gt;
CC: Michal Kazior &lt;michal.kazior@tieto.com&gt;
CC: linux-wireless@vger.kernel.org
CC: linux-kernel@vger.kernel.org
[adjust code-style a bit]
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: Deinline drv_add/remove/change_interface()</title>
<updated>2015-09-29T13:56:46+00:00</updated>
<author>
<name>Denys Vlasenko</name>
<email>dvlasenk@redhat.com</email>
</author>
<published>2015-09-18T13:19:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=9aae296a6208188fb40da987efb6bcd92f4fb169'/>
<id>urn:sha1:9aae296a6208188fb40da987efb6bcd92f4fb169</id>
<content type='text'>
With this .config: http://busybox.net/~vda/kernel_config_ALLYES_Os,
after deinlining these functions have sizes and callsite counts
as follows:

drv_add_interface: 638 bytes, 5 calls
drv_remove_interface: 611 bytes, 6 calls
drv_change_interface: 658 bytes, 1 call

Total size reduction is about 9 kbytes.

Signed-off-by: Denys Vlasenko &lt;dvlasenk@redhat.com&gt;
CC: John Linville &lt;linville@tuxdriver.com&gt;
CC: Michal Kazior &lt;michal.kazior@tieto.com&gt;
CC: Johannes Berg &lt;johannes.berg@intel.com&gt;
CC: linux-wireless@vger.kernel.org
CC: linux-kernel@vger.kernel.org
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: Deinline drv_sta_rc_update()</title>
<updated>2015-09-29T13:56:45+00:00</updated>
<author>
<name>Denys Vlasenko</name>
<email>dvlasenk@redhat.com</email>
</author>
<published>2015-09-18T13:19:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=4fbd572c29bd184146e8adf52631db193c4e34b9'/>
<id>urn:sha1:4fbd572c29bd184146e8adf52631db193c4e34b9</id>
<content type='text'>
With this .config: http://busybox.net/~vda/kernel_config_ALLYES_Os,
after deinlining the function size is 706 bytes and there are
2 callsites, reducing code size by about 700 bytes.

Signed-off-by: Denys Vlasenko &lt;dvlasenk@redhat.com&gt;
CC: John Linville &lt;linville@tuxdriver.com&gt;
CC: Michal Kazior &lt;michal.kazior@tieto.com&gt;
CC: Johannes Berg &lt;johannes.berg@intel.com&gt;
CC: linux-wireless@vger.kernel.org
CC: linux-kernel@vger.kernel.org
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: Deinline drv_conf_tx()</title>
<updated>2015-09-29T13:56:45+00:00</updated>
<author>
<name>Denys Vlasenko</name>
<email>dvlasenk@redhat.com</email>
</author>
<published>2015-09-18T13:19:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=b23dcd4aca1854cda520def01731ad035cae94d8'/>
<id>urn:sha1:b23dcd4aca1854cda520def01731ad035cae94d8</id>
<content type='text'>
With this .config: http://busybox.net/~vda/kernel_config_ALLYES_Os,
after deinlining the function size is 785 bytes and there are
7 callsites.

Total size reduction is about 3.5 kbytes.

Signed-off-by: Denys Vlasenko &lt;dvlasenk@redhat.com&gt;
CC: John Linville &lt;linville@tuxdriver.com&gt;
CC: Michal Kazior &lt;michal.kazior@tieto.com&gt;
CC: Johannes Berg &lt;johannes.berg@intel.com&gt;
CC: linux-wireless@vger.kernel.org
CC: linux-kernel@vger.kernel.org
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
</entry>
<entry>
<title>mac80211: allow to transmit A-MSDU within A-MPDU</title>
<updated>2015-09-22T13:21:23+00:00</updated>
<author>
<name>Emmanuel Grumbach</name>
<email>emmanuel.grumbach@intel.com</email>
</author>
<published>2015-08-16T08:13:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=e3abc8ff0fc18b3925fd5d5c5fbd1613856f4e7c'/>
<id>urn:sha1:e3abc8ff0fc18b3925fd5d5c5fbd1613856f4e7c</id>
<content type='text'>
Advertise the capability to send A-MSDU within A-MPDU
in the AddBA request sent by mac80211. Let the driver
know about the peer's capabilities.

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: introduce per vif frame registration API</title>
<updated>2015-09-22T13:21:22+00:00</updated>
<author>
<name>Andrei Otcheretianski</name>
<email>andrei.otcheretianski@intel.com</email>
</author>
<published>2015-08-15T19:39:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=1b09b5568e5f46c6dfb781d7c1dfad431a6d8ec1'/>
<id>urn:sha1:1b09b5568e5f46c6dfb781d7c1dfad431a6d8ec1</id>
<content type='text'>
Currently the cfg80211's frame registration api receives wdev, however
mac80211 assumes per device filter configuration and ignores wdev.
Per device filtering is too wasteful, especially for multi-channel
devices.
Introduce new per vif frame registration API and use it for probe
request registrations in ieee80211_mgmt_frame_register()
Also call directly to ieee80211_configure_filter instead of using a work
since it is now allowed to sleep in ieee80211_mgmt_frame_register.

Signed-off-by: Andrei Otcheretianski &lt;andrei.otcheretianski@intel.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>
</feed>
