> Use request-owned RX storage and separate produced, observed and
> consumed positions for shared capture clients. Serialize lifecycle
> operations with lifecycle_lock and ACK accounting with the PCM stream
> lock.
> 
> Close ACK admission before any sleeping teardown and keep prepare's gate
> through the core pointer reset. Reject unavailable epochs with -EBADFD.
> Real transfer XRUNs arm stop_operating in ACK and pause/restart
> triggers, so DROP and prepare retire the remaining device state.
> 
> Track RELEASE completion and rearm release_required immediately after a
> successful resume PREPARE. Publish the resumed prepared state before RX
> submission because a device can complete RX before the START response.
> Record suspend state even when the stopped stream has no queued
> messages.
> [ ... ]
> access. DRAINING state alone does not authorize access after prepared
> has been cleared; retain the explicit PAUSED/RELEASED exception.
> 
> Restore full-ring occupancy after active RESET requeues discarded RX 
> requests, including native paused RESET. Keep linked XRUNs latched while 
> PAUSED; publish them after successful resume so the ordinary pointer path 
> stops the running group.
> Signed-off-by: Joonho Lee <[email protected]>

Sashiko has reviewed this patch and found no issues.

-- 
Sashiko AI review ยท 
https://sashiko.dev/#/patchset/[email protected]?part=10


Reply via email to