mbox series

[BlueZ,0/3] Fix wake_allowed reported error and not being set after pairing

Message ID 20250325172846.139431-1-ludovico.denittis@collabora.com (mailing list archive)
Headers show
Series Fix wake_allowed reported error and not being set after pairing | expand

Message

Ludovico de Nittis March 25, 2025, 5:28 p.m. UTC
When a new HID or HOG device is in range, Bluez reports the following error:
```
src/device.c:set_wake_allowed_complete() Set device flags return status:
Invalid Parameters
```

Also, a side effect of that issue, when pairing a HID or HOG device, the
wake_allowed property doesn't get enabled by default, as expected.
It requires a Bluez restart in order to get that property correctly set.

This patch series addresses those issues.

Ludovico de Nittis (3):
  adapter: Preserve pending flags when setting the Device Privacy Mode
  device: Preserve pending flags when setting the wake allowed
  device: Try to set the wake_allowed property only for bonded devices

 src/adapter.c |  5 ++++-
 src/device.c  | 19 +++++++++++++++----
 2 files changed, 19 insertions(+), 5 deletions(-)

Comments

Luiz Augusto von Dentz March 25, 2025, 7:38 p.m. UTC | #1
Hi Ludovico,

On Tue, Mar 25, 2025 at 1:30 PM Ludovico de Nittis
<ludovico.denittis@collabora.com> wrote:
>
> When a new HID or HOG device is in range, Bluez reports the following error:
> ```
> src/device.c:set_wake_allowed_complete() Set device flags return status:
> Invalid Parameters
> ```
>
> Also, a side effect of that issue, when pairing a HID or HOG device, the
> wake_allowed property doesn't get enabled by default, as expected.
> It requires a Bluez restart in order to get that property correctly set.
>
> This patch series addresses those issues.
>
> Ludovico de Nittis (3):
>   adapter: Preserve pending flags when setting the Device Privacy Mode
>   device: Preserve pending flags when setting the wake allowed
>   device: Try to set the wake_allowed property only for bonded devices
>
>  src/adapter.c |  5 ++++-
>  src/device.c  | 19 +++++++++++++++----
>  2 files changed, 19 insertions(+), 5 deletions(-)
>
> --
> 2.49.0

One thing I just realized is that we do not persist the flags accross
restart/reboot, so while at it it might be worth adding support for
it, the other remark is that perhaps we should store things like
pending flags into struct mgmt so we can add unit test to make things
a little more future-proof in this respect, any these can probably
come later so we don't need to delay including these fixes.
patchwork-bot+bluetooth@kernel.org March 26, 2025, 3:10 p.m. UTC | #2
Hello:

This series was applied to bluetooth/bluez.git (master)
by Luiz Augusto von Dentz <luiz.von.dentz@intel.com>:

On Tue, 25 Mar 2025 18:28:43 +0100 you wrote:
> When a new HID or HOG device is in range, Bluez reports the following error:
> ```
> src/device.c:set_wake_allowed_complete() Set device flags return status:
> Invalid Parameters
> ```
> 
> Also, a side effect of that issue, when pairing a HID or HOG device, the
> wake_allowed property doesn't get enabled by default, as expected.
> It requires a Bluez restart in order to get that property correctly set.
> 
> [...]

Here is the summary with links:
  - [BlueZ,1/3] adapter: Preserve pending flags when setting the Device Privacy Mode
    (no matching commit)
  - [BlueZ,2/3] device: Preserve pending flags when setting the wake allowed
    https://git.kernel.org/pub/scm/bluetooth/bluez.git/?id=41cfe55ea759
  - [BlueZ,3/3] device: Try to set the wake_allowed property only for bonded devices
    (no matching commit)

You are awesome, thank you!