Linux bluetooth development
 help / color / mirror / Atom feed
* [PATCH BlueZ v2 0/3] BAP transport Release and reacquire fixes
@ 2026-10-06 10:59 dt
  2026-10-06 11:00 ` [PATCH BlueZ v2 1/3] transport: Preserve Release on late BAP ready dt
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: dt @ 2026-10-06 10:59 UTC (permalink / raw)
  To: linux-bluetooth@vger.kernel.org; +Cc: Luiz Augusto von Dentz

Hi Luiz,

This v2 rebases the BAP Release/reacquire fixes onto master
7edaa61403390fe1cf2f1fb6d45fdd90fe6e93b3 after the v1 CI PR expired:
https://github.com/bluez/bluez/pull/2550

The first fix prevents a late ready event from replying to Release with
an Acquire payload and losing the pending Disable request. The second
allows deferred IO recreation when a new Enable arrives before the old
CIS has finished disconnecting.

Changes since v1:
- Rebased both fixes and the regression test onto current master.
- Clarified the test's reply barriers in its description and comments.
- Added source-history-verified Fixes and Assisted-by attribution tags.

Regarding the sequencing review: the test waits for both initial Acquire
replies before Release, and for both Release replies before reacquiring.
Every following Acquire also completes before the next Release. Only
calls on different transport paths run concurrently, as in the existing
acquisition test; successive operations on one path are not queued
without waiting for its previous reply.

Fresh validation on this base:
- Current master plus the test: all three pause variants fail with
  malformed Release replies and pending-Disable cleanup crashes.
- Both fixes: all 10 selected BAP functional cases pass.
- ASan/UBSan: coordinated-set creation with SC and legacy pairing, plus
  coordinated-set acquisition, pass including teardown (3 cases).
- make check: all 35 unit-test executables pass, including 697 BAP cases.
- A separate 500 ms userspace-disconnect delay fixture isolates patch 2:
  with only patch 1, both reacquires time out after 26 seconds; with both
  fixes, they complete in about 375 ms and both transports become active.
  This diagnostic instrumentation is excluded from the series.

The v1 functional job failed in coordinated-set cleanup, while its new
resume cases passed. This base includes eb82d81bf26b and 8a1c53517399,
which address the recorded adapter-list and BAP-session lifetime stacks;
the fresh sanitizer checks above cover those previously failing paths.

These are virtual-controller lifecycle tests, not acoustic, full-duplex
range, or physical-earbud validation. The ordinary resume test does not
force the delayed-disconnect ordering exercised by the separate fixture.

Derek


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-10-07 18:40 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-06 10:59 [PATCH BlueZ v2 0/3] BAP transport Release and reacquire fixes dt
2026-10-06 11:00 ` [PATCH BlueZ v2 1/3] transport: Preserve Release on late BAP ready dt
2026-10-06 16:43   ` BAP transport Release and reacquire fixes bluez.test.bot
2026-10-06 11:00 ` [PATCH BlueZ v2 2/3] bap: Recreate stream IO after an early Enable dt
2026-10-06 11:01 ` [PATCH BlueZ v2 3/3] test: Cover BAP transport release and reacquire dt
2026-10-07 18:40 ` [PATCH BlueZ v2 0/3] BAP transport Release and reacquire fixes patchwork-bot+bluetooth

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox