[alsa-devel] [PATCH][RESEND] ALSA: Add SNDRV_PCM_STATE_PAUSED case in wait_for_avail function
When the process is sleeping at the SNDRV_PCM_STATE_PAUSED state from the wait_for_avail function, the sleep process will be woken by timeout(10 seconds). Even if the sleep process wake up by timeout, by this patch, the process will continue with sleep and wait for the other state.
Signed-off-by: JongHo Kim furmuwon@gmail.com --- sound/core/pcm_lib.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/sound/core/pcm_lib.c b/sound/core/pcm_lib.c index 6e03b46..a210467 100644 --- a/sound/core/pcm_lib.c +++ b/sound/core/pcm_lib.c @@ -1937,6 +1937,8 @@ static int wait_for_avail(struct snd_pcm_substream *substream, case SNDRV_PCM_STATE_DISCONNECTED: err = -EBADFD; goto _endloop; + case SNDRV_PCM_STATE_PAUSED: + continue; } if (!tout) { snd_printd("%s write error (DMA or IRQ trouble?)\n",
At Tue, 17 Dec 2013 23:02:24 +0900 (KST), JongHo Kim wrote:
When the process is sleeping at the SNDRV_PCM_STATE_PAUSED state from the wait_for_avail function, the sleep process will be woken by timeout(10 seconds). Even if the sleep process wake up by timeout, by this patch, the process will continue with sleep and wait for the other state.
Signed-off-by: JongHo Kim furmuwon@gmail.com
Hrm, still I couldn't apply it cleanly. Did you test whether git-am works with your mail?
Anyways, I applied it manually since it's just two liners.
thanks,
Takashi
sound/core/pcm_lib.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/sound/core/pcm_lib.c b/sound/core/pcm_lib.c index 6e03b46..a210467 100644 --- a/sound/core/pcm_lib.c +++ b/sound/core/pcm_lib.c @@ -1937,6 +1937,8 @@ static int wait_for_avail(struct snd_pcm_substream *substream, case SNDRV_PCM_STATE_DISCONNECTED: err = -EBADFD; goto _endloop;
case SNDRV_PCM_STATE_PAUSED:
} if (!tout) { snd_printd("%s write error (DMA or IRQ trouble?)\n",continue;
-- 1.8.1.2
participants (2)
-
JongHo Kim
-
Takashi Iwai