lkml.org 
[lkml]   [2011]   [Dec]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [bluetooth] linux-3.x regression (bisected)
On 28-12-11 17:48, Marcel Holtmann wrote:

> The correct patch would be something like this:
>
> diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
> index 919e3c0..b6eb9c5 100644
> --- a/net/bluetooth/hci_event.c
> +++ b/net/bluetooth/hci_event.c
> @@ -711,7 +711,8 @@ static void hci_cc_read_local_ext_features(struct hci_dev *h
> if (rp->status)
> return;
>
> - memcpy(hdev->extfeatures, rp->features, 8);
> + if (rp->page == 1)
> + memcpy(hdev->extfeatures, rp->features, 8);
>
> hci_req_complete(hdev, HCI_OP_READ_LOCAL_EXT_FEATURES, rp->status);
> }
>
> The current patch is actually fully broken anyway. So besides switching
> LE on when requesting page 0, you will also switch it off when
> requesting any other page and it accidentally returns 0x00 since we
> unconditionally overwrite it.

Don't know anything about pages, but... I can confirm that the above
works for me as well.

Rene.



\
 
 \ /
  Last update: 2011-12-28 18:27    [from the cache]
©2003-2011 Jasper Spaans