<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/net/wireless/libertas, branch v3.9.4</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless into for-davem</title>
<updated>2013-03-01T18:52:03+00:00</updated>
<author>
<name>John W. Linville</name>
<email>linville@tuxdriver.com</email>
</author>
<published>2013-03-01T18:52:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=98b7ff9a4977e4f4f451c30288b197ad79e5ab7f'/>
<id>98b7ff9a4977e4f4f451c30288b197ad79e5ab7f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>libertas: fix crash for SD8688</title>
<updated>2013-02-27T19:12:52+00:00</updated>
<author>
<name>Bing Zhao</name>
<email>bzhao@marvell.com</email>
</author>
<published>2013-02-26T20:58:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=466026989f112e0546ca39ab00a759af82dbe83a'/>
<id>466026989f112e0546ca39ab00a759af82dbe83a</id>
<content type='text'>
For SD8688, FUNC_INIT command is queued before fw_ready flag is
set. This causes the following crash as lbs_thread blocks any
command if fw_ready is not set.

[  209.338953] [&lt;c0502248&gt;] (__schedule+0x610/0x764) from [&lt;bf20ae24&gt;] (__lbs_cmd+0xb8/0x130 [libertas])
[  209.348340] [&lt;bf20ae24&gt;] (__lbs_cmd+0xb8/0x130 [libertas]) from [&lt;bf222474&gt;] (if_sdio_finish_power_on+0xec/0x1b0 [libertas_sdio])
[  209.360136] [&lt;bf222474&gt;] (if_sdio_finish_power_on+0xec/0x1b0 [libertas_sdio]) from [&lt;bf2226c4&gt;] (if_sdio_power_on+0x18c/0x20c [libertas_sdio])
[  209.373052] [&lt;bf2226c4&gt;] (if_sdio_power_on+0x18c/0x20c [libertas_sdio]) from [&lt;bf222944&gt;] (if_sdio_probe+0x200/0x31c [libertas_sdio])
[  209.385316] [&lt;bf222944&gt;] (if_sdio_probe+0x200/0x31c [libertas_sdio]) from [&lt;bf01d820&gt;] (sdio_bus_probe+0x94/0xfc [mmc_core])
[  209.396748] [&lt;bf01d820&gt;] (sdio_bus_probe+0x94/0xfc [mmc_core]) from [&lt;c02e729c&gt;] (driver_probe_device+0x12c/0x348)
[  209.407214] [&lt;c02e729c&gt;] (driver_probe_device+0x12c/0x348) from [&lt;c02e7530&gt;] (__driver_attach+0x78/0x9c)
[  209.416798] [&lt;c02e7530&gt;] (__driver_attach+0x78/0x9c) from [&lt;c02e5658&gt;] (bus_for_each_dev+0x50/0x88)
[  209.425946] [&lt;c02e5658&gt;] (bus_for_each_dev+0x50/0x88) from [&lt;c02e6810&gt;] (bus_add_driver+0x108/0x268)
[  209.435180] [&lt;c02e6810&gt;] (bus_add_driver+0x108/0x268) from [&lt;c02e782c&gt;] (driver_register+0xa4/0x134)
[  209.444426] [&lt;c02e782c&gt;] (driver_register+0xa4/0x134) from [&lt;bf22601c&gt;] (if_sdio_init_module+0x1c/0x3c [libertas_sdio])
[  209.455339] [&lt;bf22601c&gt;] (if_sdio_init_module+0x1c/0x3c [libertas_sdio]) from [&lt;c00085b8&gt;] (do_one_initcall+0x98/0x174)
[  209.466236] [&lt;c00085b8&gt;] (do_one_initcall+0x98/0x174) from [&lt;c0076504&gt;] (load_module+0x1c5c/0x1f80)
[  209.475390] [&lt;c0076504&gt;] (load_module+0x1c5c/0x1f80) from [&lt;c007692c&gt;] (sys_init_module+0x104/0x128)
[  209.484632] [&lt;c007692c&gt;] (sys_init_module+0x104/0x128) from [&lt;c0008c40&gt;] (ret_fast_syscall+0x0/0x38)

Fix it by setting fw_ready flag prior to queuing FUNC_INIT command.

Cc: &lt;stable@vger.kernel.org&gt; # 3.5+
Reported-by: Lubomir Rintel &lt;lkundrak@v3.sk&gt;
Tested-by: Lubomir Rintel &lt;lkundrak@v3.sk&gt;
Signed-off-by: Bing Zhao &lt;bzhao@marvell.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For SD8688, FUNC_INIT command is queued before fw_ready flag is
set. This causes the following crash as lbs_thread blocks any
command if fw_ready is not set.

[  209.338953] [&lt;c0502248&gt;] (__schedule+0x610/0x764) from [&lt;bf20ae24&gt;] (__lbs_cmd+0xb8/0x130 [libertas])
[  209.348340] [&lt;bf20ae24&gt;] (__lbs_cmd+0xb8/0x130 [libertas]) from [&lt;bf222474&gt;] (if_sdio_finish_power_on+0xec/0x1b0 [libertas_sdio])
[  209.360136] [&lt;bf222474&gt;] (if_sdio_finish_power_on+0xec/0x1b0 [libertas_sdio]) from [&lt;bf2226c4&gt;] (if_sdio_power_on+0x18c/0x20c [libertas_sdio])
[  209.373052] [&lt;bf2226c4&gt;] (if_sdio_power_on+0x18c/0x20c [libertas_sdio]) from [&lt;bf222944&gt;] (if_sdio_probe+0x200/0x31c [libertas_sdio])
[  209.385316] [&lt;bf222944&gt;] (if_sdio_probe+0x200/0x31c [libertas_sdio]) from [&lt;bf01d820&gt;] (sdio_bus_probe+0x94/0xfc [mmc_core])
[  209.396748] [&lt;bf01d820&gt;] (sdio_bus_probe+0x94/0xfc [mmc_core]) from [&lt;c02e729c&gt;] (driver_probe_device+0x12c/0x348)
[  209.407214] [&lt;c02e729c&gt;] (driver_probe_device+0x12c/0x348) from [&lt;c02e7530&gt;] (__driver_attach+0x78/0x9c)
[  209.416798] [&lt;c02e7530&gt;] (__driver_attach+0x78/0x9c) from [&lt;c02e5658&gt;] (bus_for_each_dev+0x50/0x88)
[  209.425946] [&lt;c02e5658&gt;] (bus_for_each_dev+0x50/0x88) from [&lt;c02e6810&gt;] (bus_add_driver+0x108/0x268)
[  209.435180] [&lt;c02e6810&gt;] (bus_add_driver+0x108/0x268) from [&lt;c02e782c&gt;] (driver_register+0xa4/0x134)
[  209.444426] [&lt;c02e782c&gt;] (driver_register+0xa4/0x134) from [&lt;bf22601c&gt;] (if_sdio_init_module+0x1c/0x3c [libertas_sdio])
[  209.455339] [&lt;bf22601c&gt;] (if_sdio_init_module+0x1c/0x3c [libertas_sdio]) from [&lt;c00085b8&gt;] (do_one_initcall+0x98/0x174)
[  209.466236] [&lt;c00085b8&gt;] (do_one_initcall+0x98/0x174) from [&lt;c0076504&gt;] (load_module+0x1c5c/0x1f80)
[  209.475390] [&lt;c0076504&gt;] (load_module+0x1c5c/0x1f80) from [&lt;c007692c&gt;] (sys_init_module+0x104/0x128)
[  209.484632] [&lt;c007692c&gt;] (sys_init_module+0x104/0x128) from [&lt;c0008c40&gt;] (ret_fast_syscall+0x0/0x38)

Fix it by setting fw_ready flag prior to queuing FUNC_INIT command.

Cc: &lt;stable@vger.kernel.org&gt; # 3.5+
Reported-by: Lubomir Rintel &lt;lkundrak@v3.sk&gt;
Tested-by: Lubomir Rintel &lt;lkundrak@v3.sk&gt;
Signed-off-by: Bing Zhao &lt;bzhao@marvell.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem</title>
<updated>2013-02-18T18:47:13+00:00</updated>
<author>
<name>John W. Linville</name>
<email>linville@tuxdriver.com</email>
</author>
<published>2013-02-18T18:47:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=98d5fac2330779e6eea6431a90b44c7476260dcc'/>
<id>98d5fac2330779e6eea6431a90b44c7476260dcc</id>
<content type='text'>
Conflicts:
	drivers/net/wireless/iwlwifi/dvm/tx.c
	drivers/net/wireless/ti/wlcore/sdio.c
	drivers/net/wireless/ti/wlcore/spi.c
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Conflicts:
	drivers/net/wireless/iwlwifi/dvm/tx.c
	drivers/net/wireless/ti/wlcore/sdio.c
	drivers/net/wireless/ti/wlcore/spi.c
</pre>
</div>
</content>
</entry>
<entry>
<title>cfg80211: pass wiphy to cfg80211_ref_bss/put_bss</title>
<updated>2013-02-11T17:44:52+00:00</updated>
<author>
<name>Johannes Berg</name>
<email>johannes.berg@intel.com</email>
</author>
<published>2013-02-01T00:49:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=5b112d3d098c97b867cc580f590395cd1e72f18c'/>
<id>5b112d3d098c97b867cc580f590395cd1e72f18c</id>
<content type='text'>
This prepares for using the spinlock instead of krefs
which is needed in the next patch to track the refs
of combined BSSes correctly.

Acked-by: Bing Zhao &lt;bzhao@marvell.com&gt; [mwifiex]
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This prepares for using the spinlock instead of krefs
which is needed in the next patch to track the refs
of combined BSSes correctly.

Acked-by: Bing Zhao &lt;bzhao@marvell.com&gt; [mwifiex]
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>wireless: Remove unnecessary alloc/OOM messages, alloc cleanups</title>
<updated>2013-02-04T18:22:34+00:00</updated>
<author>
<name>Joe Perches</name>
<email>joe@perches.com</email>
</author>
<published>2013-02-03T17:28:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=0d2e7a5c608063f72048899d20505c2ee130566c'/>
<id>0d2e7a5c608063f72048899d20505c2ee130566c</id>
<content type='text'>
alloc failures already get standardized OOM
messages and a dump_stack.

Convert kzalloc's with multiplies to kcalloc.
Convert kmalloc's with multiplies to kmalloc_array.
Remove now unused variables.
Remove unnecessary memset after kzalloc-&gt;kcalloc.
Whitespace cleanups for these changes.

Signed-off-by: Joe Perches &lt;joe@perches.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
alloc failures already get standardized OOM
messages and a dump_stack.

Convert kzalloc's with multiplies to kcalloc.
Convert kmalloc's with multiplies to kmalloc_array.
Remove now unused variables.
Remove unnecessary memset after kzalloc-&gt;kcalloc.
Whitespace cleanups for these changes.

Signed-off-by: Joe Perches &lt;joe@perches.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>wireless: make the reg_notifier() void</title>
<updated>2013-01-14T10:32:44+00:00</updated>
<author>
<name>Luis R. Rodriguez</name>
<email>mcgrof@do-not-panic.com</email>
</author>
<published>2013-01-11T18:39:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=0c0280bd0ba410326eecdaeb1b936696eda6381d'/>
<id>0c0280bd0ba410326eecdaeb1b936696eda6381d</id>
<content type='text'>
The reg_notifier()'s return value need not be checked
as it is only supposed to do post regulatory work and
that should never fail. Any behaviour to regulatory
that needs to be considered before cfg80211 does work
to a driver should be specified by using the already
existing flags, the reg_notifier() just does post
processing should it find it needs to.

Also make lbs_reg_notifier static.

Signed-off-by: Luis R. Rodriguez &lt;mcgrof@do-not-panic.com&gt;
[move lbs_reg_notifier to not break compile]
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The reg_notifier()'s return value need not be checked
as it is only supposed to do post regulatory work and
that should never fail. Any behaviour to regulatory
that needs to be considered before cfg80211 does work
to a driver should be specified by using the already
existing flags, the reg_notifier() just does post
processing should it find it needs to.

Also make lbs_reg_notifier static.

Signed-off-by: Luis R. Rodriguez &lt;mcgrof@do-not-panic.com&gt;
[move lbs_reg_notifier to not break compile]
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>libertas: remove __dev* attributes</title>
<updated>2012-12-06T20:04:57+00:00</updated>
<author>
<name>Bill Pemberton</name>
<email>wfp5p@virginia.edu</email>
</author>
<published>2012-12-03T14:56:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=fbdb7fcefe95cb77b9d692e6f9c7c02ecc846c10'/>
<id>fbdb7fcefe95cb77b9d692e6f9c7c02ecc846c10</id>
<content type='text'>
CONFIG_HOTPLUG is going away as an option.  As result the __dev*
markings will be going away.

Remove use of __devinit, __devexit_p, __devinitdata, __devinitconst,
and __devexit.

Signed-off-by: Bill Pemberton &lt;wfp5p@virginia.edu&gt;
Cc: Dan Williams &lt;dcbw@redhat.com&gt;
Cc: libertas-dev@lists.infradead.org
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
CONFIG_HOTPLUG is going away as an option.  As result the __dev*
markings will be going away.

Remove use of __devinit, __devexit_p, __devinitdata, __devinitconst,
and __devexit.

Signed-off-by: Bill Pemberton &lt;wfp5p@virginia.edu&gt;
Cc: Dan Williams &lt;dcbw@redhat.com&gt;
Cc: libertas-dev@lists.infradead.org
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'for-john' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next</title>
<updated>2012-12-06T19:58:41+00:00</updated>
<author>
<name>John W. Linville</name>
<email>linville@tuxdriver.com</email>
</author>
<published>2012-12-06T19:58:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=403e16731ffddc097eae89f53f9a7b0f0c9769c4'/>
<id>403e16731ffddc097eae89f53f9a7b0f0c9769c4</id>
<content type='text'>
Conflicts:
	drivers/net/wireless/mwifiex/sta_ioctl.c
	net/mac80211/scan.c
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Conflicts:
	drivers/net/wireless/mwifiex/sta_ioctl.c
	net/mac80211/scan.c
</pre>
</div>
</content>
</entry>
<entry>
<title>cfg80211: fix BSS struct IE access races</title>
<updated>2012-11-30T12:42:20+00:00</updated>
<author>
<name>Johannes Berg</name>
<email>johannes.berg@intel.com</email>
</author>
<published>2012-11-29T00:25:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=9caf03640279e64d0ba36539b42daa1b43a49486'/>
<id>9caf03640279e64d0ba36539b42daa1b43a49486</id>
<content type='text'>
When a BSS struct is updated, the IEs are currently
overwritten or freed. This can lead to races if some
other CPU is accessing the BSS struct and using the
IEs concurrently.

Fix this by always allocating the IEs in a new struct
that holds the data and length and protecting access
to this new struct with RCU.

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When a BSS struct is updated, the IEs are currently
overwritten or freed. This can lead to races if some
other CPU is accessing the BSS struct and using the
IEs concurrently.

Fix this by always allocating the IEs in a new struct
that holds the data and length and protecting access
to this new struct with RCU.

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'for-john' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next</title>
<updated>2012-11-26T19:46:41+00:00</updated>
<author>
<name>John W. Linville</name>
<email>linville@tuxdriver.com</email>
</author>
<published>2012-11-26T19:46:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=62c8003ecb973986958e9dade4a7e598349caf48'/>
<id>62c8003ecb973986958e9dade4a7e598349caf48</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
