<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/net/bluetooth, branch v3.6</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v3.6</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v3.6'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2012-09-22T16:19:22Z</updated>
<entry>
<title>Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless into for-davem</title>
<updated>2012-09-22T16:19:22Z</updated>
<author>
<name>John W. Linville</name>
<email>linville@tuxdriver.com</email>
</author>
<published>2012-09-22T16:19:22Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=1199992df2417dc9a1db1b19930ea4d0a697a61e'/>
<id>urn:sha1:1199992df2417dc9a1db1b19930ea4d0a697a61e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>net: change return values from -EACCES to -EPERM</title>
<updated>2012-09-21T17:58:08Z</updated>
<author>
<name>Zhao Hongjiang</name>
<email>zhaohongjiang@huawei.com</email>
</author>
<published>2012-09-20T22:37:25Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=bf5b30b8a4416de04f1ac1196281ddb318669464'/>
<id>urn:sha1:bf5b30b8a4416de04f1ac1196281ddb318669464</id>
<content type='text'>
Change return value from -EACCES to -EPERM when the permission check fails.

Signed-off-by: Zhao Hongjiang &lt;zhaohongjiang@huawei.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Bluetooth: Fix not removing power_off delayed work</title>
<updated>2012-09-18T23:13:02Z</updated>
<author>
<name>Vinicius Costa Gomes</name>
<email>vinicius.gomes@openbossa.org</email>
</author>
<published>2012-09-14T19:34:46Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=78c04c0bf52360dc2f7185e99c8e9aa05d73ae5a'/>
<id>urn:sha1:78c04c0bf52360dc2f7185e99c8e9aa05d73ae5a</id>
<content type='text'>
For example, when a usb reset is received (I could reproduce it
running something very similar to this[1] in a loop) it could be
that the device is unregistered while the power_off delayed work
is still scheduled to run.

Backtrace:

WARNING: at lib/debugobjects.c:261 debug_print_object+0x7c/0x8d()
Hardware name: To Be Filled By O.E.M.
ODEBUG: free active (active state 0) object type: timer_list hint: delayed_work_timer_fn+0x0/0x26
Modules linked in: nouveau mxm_wmi btusb wmi bluetooth ttm coretemp drm_kms_helper
Pid: 2114, comm: usb-reset Not tainted 3.5.0bt-next #2
Call Trace:
 [&lt;ffffffff8124cc00&gt;] ? free_obj_work+0x57/0x91
 [&lt;ffffffff81058f88&gt;] warn_slowpath_common+0x7e/0x97
 [&lt;ffffffff81059035&gt;] warn_slowpath_fmt+0x41/0x43
 [&lt;ffffffff8124ccb6&gt;] debug_print_object+0x7c/0x8d
 [&lt;ffffffff8106e3ec&gt;] ? __queue_work+0x259/0x259
 [&lt;ffffffff8124d63e&gt;] ? debug_check_no_obj_freed+0x6f/0x1b5
 [&lt;ffffffff8124d667&gt;] debug_check_no_obj_freed+0x98/0x1b5
 [&lt;ffffffffa00aa031&gt;] ? bt_host_release+0x10/0x1e [bluetooth]
 [&lt;ffffffff810fc035&gt;] kfree+0x90/0xe6
 [&lt;ffffffffa00aa031&gt;] bt_host_release+0x10/0x1e [bluetooth]
 [&lt;ffffffff812ec2f9&gt;] device_release+0x4a/0x7e
 [&lt;ffffffff8123ef57&gt;] kobject_release+0x11d/0x154
 [&lt;ffffffff8123ed98&gt;] kobject_put+0x4a/0x4f
 [&lt;ffffffff812ec0d9&gt;] put_device+0x12/0x14
 [&lt;ffffffffa009472b&gt;] hci_free_dev+0x22/0x26 [bluetooth]
 [&lt;ffffffffa0280dd0&gt;] btusb_disconnect+0x96/0x9f [btusb]
 [&lt;ffffffff813581b4&gt;] usb_unbind_interface+0x57/0x106
 [&lt;ffffffff812ef988&gt;] __device_release_driver+0x83/0xd6
 [&lt;ffffffff812ef9fb&gt;] device_release_driver+0x20/0x2d
 [&lt;ffffffff813582a7&gt;] usb_driver_release_interface+0x44/0x7b
 [&lt;ffffffff81358795&gt;] usb_forced_unbind_intf+0x45/0x4e
 [&lt;ffffffff8134f959&gt;] usb_reset_device+0xa6/0x12e
 [&lt;ffffffff8135df86&gt;] usbdev_do_ioctl+0x319/0xe20
 [&lt;ffffffff81203244&gt;] ? avc_has_perm_flags+0xc9/0x12e
 [&lt;ffffffff812031a0&gt;] ? avc_has_perm_flags+0x25/0x12e
 [&lt;ffffffff81050101&gt;] ? do_page_fault+0x31e/0x3a1
 [&lt;ffffffff8135eaa6&gt;] usbdev_ioctl+0x9/0xd
 [&lt;ffffffff811126b1&gt;] vfs_ioctl+0x21/0x34
 [&lt;ffffffff81112f7b&gt;] do_vfs_ioctl+0x408/0x44b
 [&lt;ffffffff81208d45&gt;] ? file_has_perm+0x76/0x81
 [&lt;ffffffff8111300f&gt;] sys_ioctl+0x51/0x76
 [&lt;ffffffff8158db22&gt;] system_call_fastpath+0x16/0x1b

[1] http://cpansearch.perl.org/src/DPAVLIN/Biblio-RFID-0.03/examples/usbreset.c

Signed-off-by: Vinicius Costa Gomes &lt;vinicius.gomes@openbossa.org&gt;
Cc: stable@vger.kernel.org
Signed-off-by: Gustavo Padovan &lt;gustavo.padovan@collabora.co.uk&gt;
</content>
</entry>
<entry>
<title>Bluetooth: Fix freeing uninitialized delayed works</title>
<updated>2012-09-18T23:07:04Z</updated>
<author>
<name>Andrei Emeltchenko</name>
<email>andrei.emeltchenko@intel.com</email>
</author>
<published>2012-09-06T12:05:42Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=aad3d0e343900a4c2c5dbc73f76550aa64a0ac1b'/>
<id>urn:sha1:aad3d0e343900a4c2c5dbc73f76550aa64a0ac1b</id>
<content type='text'>
When releasing L2CAP socket which is in BT_CONFIG state l2cap_chan_close
invokes l2cap_send_disconn_req which cancel delayed works which are only
set in BT_CONNECTED state with l2cap_ertm_init. Add state check before
cancelling those works.

...
[ 9668.574372] [21085] l2cap_sock_release: sock cd065200, sk f073e800
[ 9668.574399] [21085] l2cap_sock_shutdown: sock cd065200, sk f073e800
[ 9668.574411] [21085] l2cap_chan_close: chan f073ec00 state BT_CONFIG sk f073e800
[ 9668.574421] [21085] l2cap_send_disconn_req: chan f073ec00 conn ecc16600
[ 9668.574441] INFO: trying to register non-static key.
[ 9668.574443] the code is fine but needs lockdep annotation.
[ 9668.574446] turning off the locking correctness validator.
[ 9668.574450] Pid: 21085, comm: obex-client Tainted: G           O 3.5.0+ #57
[ 9668.574452] Call Trace:
[ 9668.574463]  [&lt;c10a64b3&gt;] __lock_acquire+0x12e3/0x1700
[ 9668.574468]  [&lt;c10a44fb&gt;] ? trace_hardirqs_on+0xb/0x10
[ 9668.574476]  [&lt;c15e4f60&gt;] ? printk+0x4d/0x4f
[ 9668.574479]  [&lt;c10a6e38&gt;] lock_acquire+0x88/0x130
[ 9668.574487]  [&lt;c1059740&gt;] ? try_to_del_timer_sync+0x60/0x60
[ 9668.574491]  [&lt;c1059790&gt;] del_timer_sync+0x50/0xc0
[ 9668.574495]  [&lt;c1059740&gt;] ? try_to_del_timer_sync+0x60/0x60
[ 9668.574515]  [&lt;f8aa1c23&gt;] l2cap_send_disconn_req+0xe3/0x160 [bluetooth]
...

Signed-off-by: Andrei Emeltchenko &lt;andrei.emeltchenko@intel.com&gt;
Signed-off-by: Gustavo Padovan &lt;gustavo.padovan@collabora.co.uk&gt;
</content>
</entry>
<entry>
<title>Bluetooth: mgmt: Fix enabling LE while powered off</title>
<updated>2012-09-18T23:07:03Z</updated>
<author>
<name>Andrzej Kaczmarek</name>
<email>andrzej.kaczmarek@tieto.com</email>
</author>
<published>2012-08-29T08:02:09Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=562fcc246ebe31ade6e1be08585673b9b2785498'/>
<id>urn:sha1:562fcc246ebe31ade6e1be08585673b9b2785498</id>
<content type='text'>
When new BT USB adapter is plugged in it's configured while still being powered
off (HCI_AUTO_OFF flag is set), thus Set LE will only set dev_flags but won't
write changes to controller. As a result it's not possible to start device
discovery session on LE controller as it uses interleaved discovery which
requires LE Supported Host flag in extended features.

This patch ensures HCI Write LE Host Supported is sent when Set Powered is
called to power on controller and clear HCI_AUTO_OFF flag.

Signed-off-by: Andrzej Kaczmarek &lt;andrzej.kaczmarek@tieto.com&gt;
Cc: stable@vger.kernel.org
Acked-by: Johan Hedberg &lt;johan.hedberg@intel.com&gt;
Signed-off-by: Gustavo Padovan &lt;gustavo.padovan@collabora.co.uk&gt;
</content>
</entry>
<entry>
<title>Bluetooth: mgmt: Fix enabling SSP while powered off</title>
<updated>2012-09-18T23:07:03Z</updated>
<author>
<name>Andrzej Kaczmarek</name>
<email>andrzej.kaczmarek@tieto.com</email>
</author>
<published>2012-08-29T08:02:08Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=3d1cbdd6aefff711bcf389fdabc4af9bc22e8201'/>
<id>urn:sha1:3d1cbdd6aefff711bcf389fdabc4af9bc22e8201</id>
<content type='text'>
When new BT USB adapter is plugged in it's configured while still being powered
off (HCI_AUTO_OFF flag is set), thus Set SSP will only set dev_flags but won't
write changes to controller. As a result remote devices won't use Secure Simple
Pairing with our device due to SSP Host Support flag disabled in extended
features and may also reject SSP attempt from our side (with possible fallback
to legacy pairing).

This patch ensures HCI Write Simple Pairing Mode is sent when Set Powered is
called to power on controller and clear HCI_AUTO_OFF flag.

Signed-off-by: Andrzej Kaczmarek &lt;andrzej.kaczmarek@tieto.com&gt;
Cc: stable@vger.kernel.org
Acked-by: Johan Hedberg &lt;johan.hedberg@intel.com&gt;
Signed-off-by: Gustavo Padovan &lt;gustavo.padovan@collabora.co.uk&gt;
</content>
</entry>
<entry>
<title>Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless into for-davem</title>
<updated>2012-09-07T18:38:50Z</updated>
<author>
<name>John W. Linville</name>
<email>linville@tuxdriver.com</email>
</author>
<published>2012-09-07T17:33:27Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=777bf135b77071672662c67f0abffcf433450d68'/>
<id>urn:sha1:777bf135b77071672662c67f0abffcf433450d68</id>
<content type='text'>
John W. Linville says:

====================
Please pull these fixes intended for 3.6.  There are more commits
here than I would like -- I got a bit behind while I was stalking
Steven Rostedt in San Diego last week...  I'll slow it down after this!

There are a couple of pulls here.  One is from Johannes:

"Please pull (according to the below information) to get a few fixes.

 * a fix to properly disconnect in the driver when authentication or
   association fails
 * a fix to prevent invalid information about mesh paths being reported
   to userspace
 * a memory leak fix in an nl80211 error path"

The other comes via Gustavo:

"A few updates for the 3.6 kernel. There are two btusb patches to add
more supported devices through the new USB_VENDOR_AND_INTEFACE_INFO()
macro and another one that add a new device id for a Sony Vaio laptop,
one fix for a user-after-free and, finally, two patches from Vinicius
to fix a issue in SMP pairing."

Along with those...

Arend van Spriel provides a fix for a use-after-free bug in brcmfmac.

Daniel Drake avoids a hang by not trying to touch the libertas hardware
duing suspend if it is already powered-down.

Felix Fietkau provides a batch of ath9k fixes that adress some
potential problems with power settings, as well as a fix to avoid a
potential interrupt storm.

Gertjan van Wingerde provides a register-width fix for rt2x00, and
a rt2x00 fix to prevent incorrectly detecting the rfkill status.
He also provides a device ID patch.

Hante Meuleman gives us three brcmfmac fixes, one that properly
initializes a command structure, one that fixes a race condition that
could lose usb requests, and one that removes some log spam.

Marc Kleine-Budde offers an rt2x00 fix for a voltage setting on some
specific devices.

Mohammed Shafi Shajakhan sent an ath9k fix to avoid a crash related to
using timers that aren't allocated when 2 wire bluetooth coexistence
hardware is in use.

Sergei Poselenov changes rt2800usb to do some validity checking for
received packets, avoiding crashes on an ARM Soc.

Stone Piao gives us an mwifiex fix for an incorrectly set skb length
value for a command buffer.

All of these are localized to their specific drivers, and relatively
small.  The power-related patches from Felix are bigger than I would
like, but I merged them in consideration of their isolation to ath9k
and the sensitive nature of power settings in wireless devices.
====================

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Bluetooth: Fix sending a HCI Authorization Request over LE links</title>
<updated>2012-08-27T15:11:51Z</updated>
<author>
<name>Vinicius Costa Gomes</name>
<email>vinicius.gomes@openbossa.org</email>
</author>
<published>2012-08-24T00:32:44Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=d8343f125710fb596f7a88cd756679f14f4e77b9'/>
<id>urn:sha1:d8343f125710fb596f7a88cd756679f14f4e77b9</id>
<content type='text'>
In the case that the link is already in the connected state and a
Pairing request arrives from the mgmt interface, hci_conn_security()
would be called but it was not considering LE links.

Reported-by: João Paulo Rechi Vita &lt;jprvita@openbossa.org&gt;
Signed-off-by: Vinicius Costa Gomes &lt;vinicius.gomes@openbossa.org&gt;
Signed-off-by: Gustavo Padovan &lt;gustavo.padovan@collabora.co.uk&gt;
</content>
</entry>
<entry>
<title>Bluetooth: Change signature of smp_conn_security()</title>
<updated>2012-08-27T15:07:18Z</updated>
<author>
<name>Vinicius Costa Gomes</name>
<email>vinicius.gomes@openbossa.org</email>
</author>
<published>2012-08-24T00:32:43Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=cc110922da7e902b62d18641a370fec01a9fa794'/>
<id>urn:sha1:cc110922da7e902b62d18641a370fec01a9fa794</id>
<content type='text'>
To make it clear that it may be called from contexts that may not have
any knowledge of L2CAP, we change the connection parameter, to receive
a hci_conn.

This also makes it clear that it is checking the security of the link.

Signed-off-by: Vinicius Costa Gomes &lt;vinicius.gomes@openbossa.org&gt;
Signed-off-by: Gustavo Padovan &lt;gustavo.padovan@collabora.co.uk&gt;
</content>
</entry>
<entry>
<title>Bluetooth: L2CAP - Fix info leak via getsockname()</title>
<updated>2012-08-16T04:36:31Z</updated>
<author>
<name>Mathias Krause</name>
<email>minipli@googlemail.com</email>
</author>
<published>2012-08-15T11:31:51Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=792039c73cf176c8e39a6e8beef2c94ff46522ed'/>
<id>urn:sha1:792039c73cf176c8e39a6e8beef2c94ff46522ed</id>
<content type='text'>
The L2CAP code fails to initialize the l2_bdaddr_type member of struct
sockaddr_l2 and the padding byte added for alignment. It that for leaks
two bytes kernel stack via the getsockname() syscall. Add an explicit
memset(0) before filling the structure to avoid the info leak.

Signed-off-by: Mathias Krause &lt;minipli@googlemail.com&gt;
Cc: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Cc: Gustavo Padovan &lt;gustavo@padovan.org&gt;
Cc: Johan Hedberg &lt;johan.hedberg@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
