Thread (97 messages) 97 messages, 1 author, 2014-01-13
STALE4569d

[PATCH 3.5 42/96] ALSA: Add SNDRV_PCM_STATE_PAUSED case in wait_for_avail function

From: Luis Henriques <hidden>
Date: 2014-01-13 14:51:50
Also in: lkml
Subsystem: sound, the rest · Maintainers: Jaroslav Kysela, Takashi Iwai, Linus Torvalds

3.5.7.29 -stable review patch.  If anyone has any objections, please let me know.

------------------

From: JongHo Kim <redacted>

commit ed697e1aaf7237b1a62af39f64463b05c262808d upstream.

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 <redacted>
Signed-off-by: Takashi Iwai <redacted>
Signed-off-by: Luis Henriques <redacted>
---
 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 8f312fa..d8b6c81 100644
--- a/sound/core/pcm_lib.c
+++ b/sound/core/pcm_lib.c
@@ -1860,6 +1860,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",
-- 
1.8.3.2
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help