Message ID | 20221010203522.1251151-1-brian.gix@intel.com (mailing list archive) |
---|---|
State | Accepted |
Commit | ca57023e7c4978e1eb10de3f200ee0c04610ff19 |
Headers | show |
Series | [1/2] Bluetooth: hci_sync: Fix not setting static address | expand |
Context | Check | Description |
---|---|---|
tedd_an/pre-ci_am | success | Success |
tedd_an/checkpatch | success | Checkpatch PASS |
tedd_an/gitlint | success | Gitlint PASS |
tedd_an/subjectprefix | success | PASS |
tedd_an/buildkernel | success | Build Kernel PASS |
tedd_an/buildkernel32 | success | Build Kernel32 PASS |
tedd_an/incremental_build | success | Pass |
tedd_an/testrunnersetup | success | Test Runner Setup PASS |
tedd_an/testrunnerl2cap-tester | success | Total: 40, Passed: 40 (100.0%), Failed: 0, Not Run: 0 |
tedd_an/testrunneriso-tester | success | Total: 55, Passed: 55 (100.0%), Failed: 0, Not Run: 0 |
tedd_an/testrunnerbnep-tester | success | Total: 1, Passed: 1 (100.0%), Failed: 0, Not Run: 0 |
tedd_an/testrunnermgmt-tester | fail | Total: 494, Passed: 492 (99.6%), Failed: 2, Not Run: 0 |
tedd_an/testrunnerrfcomm-tester | success | Total: 11, Passed: 11 (100.0%), Failed: 0, Not Run: 0 |
tedd_an/testrunnersco-tester | success | Total: 12, Passed: 12 (100.0%), Failed: 0, Not Run: 0 |
tedd_an/testrunnerioctl-tester | success | Total: 28, Passed: 28 (100.0%), Failed: 0, Not Run: 0 |
tedd_an/testrunnermesh-tester | success | Total: 10, Passed: 10 (100.0%), Failed: 0, Not Run: 0 |
tedd_an/testrunnersmp-tester | success | Total: 8, Passed: 8 (100.0%), Failed: 0, Not Run: 0 |
tedd_an/testrunneruserchan-tester | success | Total: 4, Passed: 4 (100.0%), Failed: 0, Not Run: 0 |
Hello: This series was applied to bluetooth/bluetooth-next.git (master) by Luiz Augusto von Dentz <luiz.von.dentz@intel.com>: On Mon, 10 Oct 2022 13:35:21 -0700 you wrote: > From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> > > This attempts to program the address stored in hdev->static_addr after > the init sequence has been complete: > > @ MGMT Command: Set Static A.. (0x002b) plen 6 > Address: C0:55:44:33:22:11 (Static) > @ MGMT Event: Command Complete (0x0001) plen 7 > Set Static Address (0x002b) plen 4 > Status: Success (0x00) > Current settings: 0x00008200 > Low Energy > Static Address > @ MGMT Event: New Settings (0x0006) plen 4 > Current settings: 0x00008200 > Low Energy > Static Address > < HCI Command: LE Set Random.. (0x08|0x0005) plen 6 > Address: C0:55:44:33:22:11 (Static) > > HCI Event: Command Complete (0x0e) plen 4 > LE Set Random Address (0x08|0x0005) ncmd 1 > Status: Success (0x00) > @ MGMT Event: Command Complete (0x0001) plen 7 > Set Powered (0x0005) plen 4 > Status: Success (0x00) > Current settings: 0x00008201 > Powered > Low Energy > Static Address > @ MGMT Event: New Settings (0x0006) plen 4 > Current settings: 0x00008201 > Powered > Low Energy > Static Address > > [...] Here is the summary with links: - [1/2] Bluetooth: hci_sync: Fix not setting static address https://git.kernel.org/bluetooth/bluetooth-next/c/ca57023e7c49 - [2/2] Bluetooth: hci_sync: Fix not able to set force_static_address https://git.kernel.org/bluetooth/bluetooth-next/c/8549542298e9 You are awesome, thank you!
This is automated email and please do not reply to this email! Dear submitter, Thank you for submitting the patches to the linux bluetooth mailing list. This is a CI test results with your patch series: PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=684318 ---Test result--- Test Summary: CheckPatch PASS 2.59 seconds GitLint PASS 1.52 seconds SubjectPrefix PASS 1.31 seconds BuildKernel PASS 34.07 seconds BuildKernel32 PASS 31.07 seconds Incremental Build with patchesPASS 51.01 seconds TestRunner: Setup PASS 511.19 seconds TestRunner: l2cap-tester PASS 17.17 seconds TestRunner: iso-tester PASS 16.48 seconds TestRunner: bnep-tester PASS 6.24 seconds TestRunner: mgmt-tester FAIL 108.40 seconds TestRunner: rfcomm-tester PASS 10.01 seconds TestRunner: sco-tester PASS 9.54 seconds TestRunner: ioctl-tester PASS 10.59 seconds TestRunner: mesh-tester PASS 7.67 seconds TestRunner: smp-tester PASS 9.43 seconds TestRunner: userchan-tester PASS 6.46 seconds Details ############################## Test: TestRunner: mgmt-tester - FAIL - 108.40 seconds Run test-runner with mgmt-tester Total: 494, Passed: 492 (99.6%), Failed: 2, Not Run: 0 Failed Test Cases Set Static Address - Success 1 Timed out 2.669 seconds Set Static Address - Success 2 Timed out 2.002 seconds --- Regards, Linux Bluetooth
diff --git a/net/bluetooth/hci_sync.c b/net/bluetooth/hci_sync.c index 76c3107c9f91..b53bb0ee9d39 100644 --- a/net/bluetooth/hci_sync.c +++ b/net/bluetooth/hci_sync.c @@ -3054,6 +3054,7 @@ int hci_update_name_sync(struct hci_dev *hdev) * Enable Authentication * lmp_bredr_capable(Set Fast Connectable -> Set Scan Type -> Set Class -> * Set Name -> Set EIR) + * HCI_FORCE_STATIC_ADDR | BDADDR_ANY && !HCI_BREDR_ENABLED (Set Static Address) */ int hci_powered_update_sync(struct hci_dev *hdev) { @@ -3093,6 +3094,23 @@ int hci_powered_update_sync(struct hci_dev *hdev) hci_update_eir_sync(hdev); } + /* If forcing static address is in use or there is no public + * address use the static address as random address (but skip + * the HCI command if the current random address is already the + * static one. + * + * In case BR/EDR has been disabled on a dual-mode controller + * and a static address has been configured, then use that + * address instead of the public BR/EDR address. + */ + if (hci_dev_test_flag(hdev, HCI_FORCE_STATIC_ADDR) || + (!bacmp(&hdev->bdaddr, BDADDR_ANY) && + !hci_dev_test_flag(hdev, HCI_BREDR_ENABLED))) { + if (bacmp(&hdev->static_addr, BDADDR_ANY)) + return hci_set_random_addr_sync(hdev, + &hdev->static_addr); + } + return 0; }