Hi,
My last pull request to 3.7. There is nothin really exciting here.
The biggest stuff is hci_connect() code re-write, the rest is just bugfixes,
clean up and small improvements.
Please pull!
Gustavo
---
The following changes since commit 22c5649eef0fc37532e20c14d2656b28ca708a69:
p54: fix powerpc gcc warnings (2012-08-13 15:28:35 -0400)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next master
for you to fetch changes up to 3c860f3d3cd75f0e1a33ba6eb9f96bdb2194ec41:
Bluetooth: Add support for BCM20702A0 [04ca, 2003] (2012-09-18 21:22:39 -0300)
----------------------------------------------------------------
Andrei Emeltchenko (7):
Bluetooth: trivial: Shorten variable scope
Bluetooth: trivial: Use preferred method for NULL check
Bluetooth: Remove unneeded zero init
Bluetooth: trivial: Make hci_chan_del return void
Bluetooth: trivial: Remove empty line
Bluetooth: debug: Print refcnt for hci_dev
Bluetooth: AMP: Add Read Data Block Size to amp_init
Gustavo Padovan (1):
Bluetooth: Add USB_VENDOR_AND_INTERFACE_INFO() for Broadcom/Foxconn
Jaroslav Resler (1):
Bluetooth: Add support for BCM20702A0 [04ca, 2003]
Johan Hedberg (2):
Bluetooth: mgmt: Implement support for passkey notification
Bluetooth: Update management interface revision
Mikel Astiz (3):
Bluetooth: Add more HCI error codes
Bluetooth: Fix minor coding style in hci_event.c
Bluetooth: mgmt: Add device disconnect reason
Peter Senna Tschudin (5):
drivers/bluetooth/bluecard_cs.c: removes unnecessary semicolon
drivers/bluetooth/hci_ldisc.c: removes unnecessary semicolon
drivers/bluetooth/hci_ll.c: removes unnecessary semicolon
drivers/bluetooth/hci_vhci.c: removes unnecessary semicolon
drivers/bluetooth/btuart_cs.c: removes unnecessary semicolon
Sachin Kamat (1):
Bluetooth: Use module_platform_driver() in btwilink.c file
Syam Sidhardhan (2):
Bluetooth: debug: Correct the PSM printing
Bluetooth: Use kref for l2cap channel reference counting
Vinicius Costa Gomes (8):
Bluetooth: Remove some functions from being exported
Bluetooth: Rename LE and ACL connection functions
Bluetooth: Refactor LE connection into its own function
Bluetooth: Refactor ACL connection into its own function
Bluetooth: Refactor SCO connection into its own function
Bluetooth: Simplify a the connection type handling
Bluetooth: Add type information to the hci_connect() debug statement
Bluetooth: Fix establishing ESCO links
Wei Yongjun (1):
Bluetooth: btmrvl: remove pointless conditional before kfree_skb()
drivers/bluetooth/bluecard_cs.c | 2 +-
drivers/bluetooth/btmrvl_sdio.c | 3 +-
drivers/bluetooth/btuart_cs.c | 2 +-
drivers/bluetooth/btusb.c | 3 +-
drivers/bluetooth/btwilink.c | 16 +------
drivers/bluetooth/hci_ldisc.c | 2 +-
drivers/bluetooth/hci_ll.c | 2 +-
drivers/bluetooth/hci_vhci.c | 2 +-
include/net/bluetooth/hci.h | 21 +++++++++
include/net/bluetooth/hci_core.h | 26 +++++------
include/net/bluetooth/l2cap.h | 3 +-
include/net/bluetooth/mgmt.h | 16 +++++++
net/bluetooth/af_bluetooth.c | 10 ++---
net/bluetooth/hci_conn.c | 100 +++++++++++++++++++++++++----------------
net/bluetooth/hci_core.c | 6 ++-
net/bluetooth/hci_event.c | 99 +++++++++++++++++++++++++++++++++++++---
net/bluetooth/l2cap_core.c | 17 +++----
net/bluetooth/mgmt.c | 28 +++++++++---
18 files changed, 255 insertions(+), 103 deletions(-)
From: Luis R. Rodriguez <hidden> Date: 2012-09-22 01:07:09
On Tue, Sep 18, 2012 at 6:31 PM, Gustavo Padovan [off-list ref] wrote:
Johan Hedberg (2):
Bluetooth: mgmt: Implement support for passkey notification
Too late now... but why did we allow this a stable fix? I get its a
feature that is important and likely overlooked / someone had a brain
fart, but from what I gather this is not on v3.5.4 and yet may make it
to v3.5.5. At least for backporting this was a bitch:
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3290:52:
error: dereferencing pointer to incomplete type
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3294:6:
error: ‘struct hci_conn’ has no member named ‘passkey_notify’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3294:25:
error: dereferencing pointer to incomplete type
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3295:6:
error: ‘struct hci_conn’ has no member named ‘passkey_entered’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3298:3:
error: implicit declaration of function ‘mgmt_user_passkey_notify’
[-Werror=implicit-function-declaration]
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3299:27:
error: ‘struct hci_conn’ has no member named ‘passkey_notify’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3300:11:
error: ‘struct hci_conn’ has no member named ‘passkey_entered’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:
In function ‘hci_keypress_notify_evt’:
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3310:52:
error: dereferencing pointer to incomplete type
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3314:12:
error: dereferencing pointer to incomplete type
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3315:7:
error: ‘HCI_KEYPRESS_STARTED’ undeclared (first use in this function)
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3315:7:
note: each undeclared identifier is reported only once for each
function it appears in
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3316:7:
error: ‘struct hci_conn’ has no member named ‘passkey_entered’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3319:7:
error: ‘HCI_KEYPRESS_ENTERED’ undeclared (first use in this function)
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3320:7:
error: ‘struct hci_conn’ has no member named ‘passkey_entered’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3323:7:
error: ‘HCI_KEYPRESS_ERASED’ undeclared (first use in this function)
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3324:7:
error: ‘struct hci_conn’ has no member named ‘passkey_entered’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3327:7:
error: ‘HCI_KEYPRESS_CLEARED’ undeclared (first use in this function)
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3328:7:
error: ‘struct hci_conn’ has no member named ‘passkey_entered’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3331:7:
error: ‘HCI_KEYPRESS_COMPLETED’ undeclared (first use in this
function)
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3337:27:
error: ‘struct hci_conn’ has no member named ‘passkey_notify’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3338:11:
error: ‘struct hci_conn’ has no member named ‘passkey_entered’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:
In function ‘hci_event_packet’:
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3701:7:
error: ‘HCI_EV_USER_PASSKEY_NOTIFY’ undeclared (first use in this
function)
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3705:7:
error: ‘HCI_EV_KEYPRESS_NOTIFY’ undeclared (first use in this
function)
I'd much prefer to see things like these identified as 'important' but
not 'fuck, this fixes that crash'. The fact that kernel maintainers
may be anal about these sorts of patches is *good* for many reasons
and figuring out a way to categorize, identify and allow users to reap
benefits of backporting suck fixes / cherry picking a full solution is
what something that should not interfere and hopefully be transparent
to Linux upstream development.
Here's one way I dealt with these type of patches:
https://backports.wiki.kernel.org/index.php/Documentation/compat-drivers/additional-patches
If you look at the patch 'Bluetooth: mgmt: Implement support for
passkey' its a clear "feature" implementation, not a fucking fix.
Luis
* Luis R. Rodriguez [off-list ref] [2012-09-21 18:06:42 -0700]:
On Tue, Sep 18, 2012 at 6:31 PM, Gustavo Padovan [off-list ref] wrote:
quoted
Johan Hedberg (2):
Bluetooth: mgmt: Implement support for passkey notification
Too late now... but why did we allow this a stable fix? I get its a
feature that is important and likely overlooked / someone had a brain
fart, but from what I gather this is not on v3.5.4 and yet may make it
to v3.5.5. At least for backporting this was a bitch:
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3290:52:
error: dereferencing pointer to incomplete type
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3294:6:
error: ‘struct hci_conn’ has no member named ‘passkey_notify’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3294:25:
error: dereferencing pointer to incomplete type
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3295:6:
error: ‘struct hci_conn’ has no member named ‘passkey_entered’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3298:3:
error: implicit declaration of function ‘mgmt_user_passkey_notify’
[-Werror=implicit-function-declaration]
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3299:27:
error: ‘struct hci_conn’ has no member named ‘passkey_notify’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3300:11:
error: ‘struct hci_conn’ has no member named ‘passkey_entered’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:
In function ‘hci_keypress_notify_evt’:
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3310:52:
error: dereferencing pointer to incomplete type
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3314:12:
error: dereferencing pointer to incomplete type
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3315:7:
error: ‘HCI_KEYPRESS_STARTED’ undeclared (first use in this function)
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3315:7:
note: each undeclared identifier is reported only once for each
function it appears in
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3316:7:
error: ‘struct hci_conn’ has no member named ‘passkey_entered’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3319:7:
error: ‘HCI_KEYPRESS_ENTERED’ undeclared (first use in this function)
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3320:7:
error: ‘struct hci_conn’ has no member named ‘passkey_entered’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3323:7:
error: ‘HCI_KEYPRESS_ERASED’ undeclared (first use in this function)
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3324:7:
error: ‘struct hci_conn’ has no member named ‘passkey_entered’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3327:7:
error: ‘HCI_KEYPRESS_CLEARED’ undeclared (first use in this function)
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3328:7:
error: ‘struct hci_conn’ has no member named ‘passkey_entered’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3331:7:
error: ‘HCI_KEYPRESS_COMPLETED’ undeclared (first use in this
function)
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3337:27:
error: ‘struct hci_conn’ has no member named ‘passkey_notify’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3338:11:
error: ‘struct hci_conn’ has no member named ‘passkey_entered’
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:
In function ‘hci_event_packet’:
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3701:7:
error: ‘HCI_EV_USER_PASSKEY_NOTIFY’ undeclared (first use in this
function)
/home/mcgrof/staging/v3.5.4/compat-wireless-3.5.3-2-snpc/net/bluetooth/hci_event.c:3705:7:
error: ‘HCI_EV_KEYPRESS_NOTIFY’ undeclared (first use in this
function)
I'd much prefer to see things like these identified as 'important' but
not 'fuck, this fixes that crash'. The fact that kernel maintainers
may be anal about these sorts of patches is *good* for many reasons
and figuring out a way to categorize, identify and allow users to reap
benefits of backporting suck fixes / cherry picking a full solution is
what something that should not interfere and hopefully be transparent
to Linux upstream development.
Here's one way I dealt with these type of patches:
https://backports.wiki.kernel.org/index.php/Documentation/compat-drivers/additional-patches
If you look at the patch 'Bluetooth: mgmt: Implement support for
passkey' its a clear "feature" implementation, not a fucking fix.
Yes, this patch is wrongly marked as stable, it is not even going to 3.5. I'm
just removing the tag from it and resending the pull request to John.
Gustavo
From: John W. Linville <hidden> Date: 2012-09-24 20:00:25
On Mon, Sep 24, 2012 at 03:46:22PM -0300, Gustavo Padovan wrote:
* Luis R. Rodriguez [off-list ref] [2012-09-21 18:06:42 -0700]:
quoted
On Tue, Sep 18, 2012 at 6:31 PM, Gustavo Padovan [off-list ref] wrote:
quoted
Johan Hedberg (2):
Bluetooth: mgmt: Implement support for passkey notification
Too late now... but why did we allow this a stable fix? I get its a
feature that is important and likely overlooked / someone had a brain
fart, but from what I gather this is not on v3.5.4 and yet may make it
to v3.5.5. At least for backporting this was a bitch:
<snip>
Yes, this patch is wrongly marked as stable, it is not even going to 3.5. I'm
just removing the tag from it and resending the pull request to John.
Hmmm...well, I already pulled it, and I just pushed it out. Can we live with it?
John
--
John W. Linville Someday the world will need a hero, and you
linville@tuxdriver.com might be all we have. Be ready.
* John W. Linville [off-list ref] [2012-09-24 15:54:22 -0400]:
On Mon, Sep 24, 2012 at 03:46:22PM -0300, Gustavo Padovan wrote:
quoted
* Luis R. Rodriguez [off-list ref] [2012-09-21 18:06:42 -0700]:
quoted
On Tue, Sep 18, 2012 at 6:31 PM, Gustavo Padovan [off-list ref] wrote:
quoted
Johan Hedberg (2):
Bluetooth: mgmt: Implement support for passkey notification
Too late now... but why did we allow this a stable fix? I get its a
feature that is important and likely overlooked / someone had a brain
fart, but from what I gather this is not on v3.5.4 and yet may make it
to v3.5.5. At least for backporting this was a bitch:
<snip>
quoted
Yes, this patch is wrongly marked as stable, it is not even going to 3.5. I'm
just removing the tag from it and resending the pull request to John.
Hmmm...well, I already pulled it, and I just pushed it out. Can we live with it?