Skip to content

fix: harden Anland direct-surface pipeline - #81

Open
wyyyz1937365497 wants to merge 1 commit into
SuperTurtleDev:legacyfrom
wyyyz1937365497:legacy
Open

wyyyz1937365497 wants to merge 1 commit into
SuperTurtleDev:legacyfrom
wyyyz1937365497:legacy

Conversation

@wyyyz1937365497

@wyyyz1937365497 wyyyz1937365497 commented Sep 15, 2026

Copy link
Copy Markdown

Summary

  • select the actual writable Surface dma-buf and preserve acquire/render fence ownership
  • serialize complete consumer data-channel frames without holding state across blocking sends
  • make fallback shutdown blocked writers before descriptor close/reuse
  • bind variable-length output payloads to their originating connection generation
  • keep active dma-buf republishing active and restore/reannounce audio after reconnect
  • run service resource callbacks outside internal locks with generation-checked commit
  • supervise the KWin/Plasma session with stale Wayland-socket protection
  • complete Android key mapping and document the updated consumer contracts

Verification

  • final Android plain debug APK builds successfully with JDK 17
  • host regression passed active republish plus 4,000 input and 4,000 dma-buf frames concurrently
  • reconnect regression proves a stale clipboard drain cannot consume the new-generation stream
  • blocked-writer regression proves fallback interrupts an undrained data socket without deadlock
  • the pre-amend direct-surface build was installed and cold-started on the target device
  • a controlled producer restart completed fallback and reconnect without killing the consumer
  • direct input was manually verified on-device

The final audio/payload/deadlock amendments were build- and host-regression-verified only; no additional device experiment was run per request.

Select and synchronize real Surface dma-bufs, serialize reconnect data frames, preserve active buffer republishing, and supervise the Plasma session. Add consumer concurrency coverage and document the updated fence and fd ownership contracts.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant