> Staged capture can make readable data available before a complete period > has elapsed. Skipping notification leaves a blocked reader asleep, while > using the period-interrupt path for this event can infer a false ring > wrap when the notification is delayed. > > Add snd_pcm_progress_under_stream_lock() to update the hardware pointer > through the non-interrupt path and notify readers and fasync listeners. > It runs under the caller's PCM stream lock and does not tick the PCM > timer. The driver must release its pointer and trigger locks before > calling it. Existing period notification callers keep their current > behavior. > > Atomic and nonatomic synthetic PCM tests reproduced the missing wakeup > and false-wrap alternatives. The new helper delivered 64 final frames > and reported four available frames after delayed partial progress > without XRUN. > > Assisted-by: LLM > 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=2
