Commit 47228e48aecdbec423a1275a5e27697d47f1f912
Committed by
Takashi Iwai
1 parent
59ff878ffb
Exists in
master
and in
39 other branches
ALSA: pcm: optimize xrun detection in no-period-wakeup mode
Add a lightweight condition on top of the xrun checking so that we can avoid the division when the application is calling the update function often enough. Suggested-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Showing 1 changed file with 2 additions and 0 deletions Side-by-side Diff
sound/core/pcm_lib.c
... | ... | @@ -380,6 +380,8 @@ |
380 | 380 | * the elapsed time to detect xruns. |
381 | 381 | */ |
382 | 382 | jdelta = jiffies - runtime->hw_ptr_jiffies; |
383 | + if (jdelta < runtime->hw_ptr_buffer_jiffies / 2) | |
384 | + goto no_delta_check; | |
383 | 385 | hdelta = jdelta - delta * HZ / runtime->rate; |
384 | 386 | while (hdelta > runtime->hw_ptr_buffer_jiffies / 2 + 1) { |
385 | 387 | delta += runtime->buffer_size; |