2020-09-25 12:30:11

by Sathish Narasimman

[permalink] [raw]
Subject: [PATCH] Bluetooth: Fix - update own_addr_type if ll_privacy supported

During system powercycle when trying to get the random address
hci_get_random_address set own_addr_type as 0x01. In which if we enable
ll_privacy it is supposed to be 0x03.

Signed-off-by: Sathish Narasimman <[email protected]>
---
net/bluetooth/hci_request.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/net/bluetooth/hci_request.c b/net/bluetooth/hci_request.c
index d2b06f5c9380..6f12bab4d2fa 100644
--- a/net/bluetooth/hci_request.c
+++ b/net/bluetooth/hci_request.c
@@ -1885,7 +1885,13 @@ int hci_get_random_address(struct hci_dev *hdev, bool require_privacy,
if (use_rpa) {
int to;

- *own_addr_type = ADDR_LE_DEV_RANDOM;
+ /* If Controller supports LL Privacy use own address type is
+ * 0x03
+ */
+ if (use_ll_privacy(hdev))
+ *own_addr_type = ADDR_LE_DEV_RANDOM_RESOLVED;
+ else
+ *own_addr_type = ADDR_LE_DEV_RANDOM;

if (adv_instance) {
if (!adv_instance->rpa_expired &&
--
2.17.1


2020-09-25 17:31:44

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [PATCH] Bluetooth: Fix - update own_addr_type if ll_privacy supported

Hi Satish,

> During system powercycle when trying to get the random address
> hci_get_random_address set own_addr_type as 0x01. In which if we enable
> ll_privacy it is supposed to be 0x03.
>
> Signed-off-by: Sathish Narasimman <[email protected]>
> ---
> net/bluetooth/hci_request.c | 8 +++++++-
> 1 file changed, 7 insertions(+), 1 deletion(-)

patch has been applied to bluetooth-next tree.

Regards

Marcel