[mythtv] ALSA driver lockups.

Gregorio Gervasio Jr. mythtv-dev@snowman.net
18 Nov 2002 20:06:07 -0800


--=-=-=

>>>>> On Mon, 18 Nov 2002 21:18:18 -0500, Isaac Richards <ijr@po.cwru.edu> said:

i> http://www.geocrawler.com/lists/3/SourceForge/12349/75/10112099/
i> Familiar?  That fix is in CVS -- I'm not sure if it's in the very recent 
i> 0.9.0rc6 release..

        Excellent!  That patch works on ALSA 0.9.0rc5 running under RedHat
8.0.

-- 
Gregorio Gervasio, Jr.
gtgj@pacbell.net


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=alsa-lockup.patch
Content-Description: patch for ALSA lockups

--- alsa-kernel/core/oss/pcm_oss.c.orig	2002-10-21 11:28:20.000000000 -0700
+++ alsa-kernel/core/oss/pcm_oss.c	2002-11-18 19:22:43.000000000 -0800
@@ -564,7 +564,15 @@
 		} else {
 			ret = snd_pcm_lib_read(substream, ptr, frames);
 		}
-		if (ret != -EPIPE && ret != -ESTRPIPE)
+		if (ret == -EPIPE) {
+			if (runtime->status->state == SNDRV_PCM_STATE_DRAINING) {
+				ret = snd_pcm_kernel_ioctl(substream, SNDRV_PCM_IOCTL_DROP, 0);
+				if (ret < 0)
+					break;
+			}
+			continue;
+		}
+		if (ret != -ESTRPIPE)								 
 			break;
 	}
 	return ret;

--=-=-=--