1
Fork 0

ALSA: Remove alsa timer from IRQ scheduling

As part of the setup for IRQ based scheduling, a period event
was installed. Not only is a timer based polling unecessary for
IRQ scheduling, depending on the state of the system, the timer
could fire far enough from the IRQ, causing alsa wakeup events
with no data in the ring buffer. Pipewire would identify these
events as an "early wakeup", adding an extra quantum of time
to the next_time estimate, skewing the clock and causing issues
with apps that depend on precise timing.
This commit is contained in:
Dimitrios Katsaros 2023-12-13 14:41:04 +01:00
parent 6045ce87b1
commit 1d3013f0f9
1 changed files with 0 additions and 2 deletions

View File

@ -2181,8 +2181,6 @@ static int set_swparams(struct state *state)
/* start the transfer */
CHECK(snd_pcm_sw_params_set_start_threshold(hndl, params, LONG_MAX), "set_start_threshold");
CHECK(snd_pcm_sw_params_set_period_event(hndl, params, state->disable_tsched), "set_period_event");
if (state->disable_tsched) {
snd_pcm_uframes_t avail_min;