At Tue, 25 Nov 2003 12:51:11 +0100 (CET),
Jaroslav wrote:
> 
> On Mon, 24 Nov 2003, Takashi Iwai wrote:
> 
> > At Mon, 24 Nov 2003 13:51:50 +0100,
> > I wrote:
> > > 
> > > At Mon, 24 Nov 2003 13:36:42 +0100,
> > > I wrote:
> > > > 
> > > > meanwhile, i'm trying to implement:
> > > > 
> > > > (4) allow prepare callback to sleep with a special flag.
> > > > 
> > > > this will be useful for other drivers, too, such as vx and korg1212
> > > > drivers which require the handshaking.
> > > > but what i'm doing is still a hack, and will be a fundamental rewrite
> > > > later.
> > > 
> > > the attached is a quick-hacked version.
> > > it's untested for linked streams.  we need a test case here.
> > 
> > ok, here is the final version.  this one seems working fine.
> > 
> > Jaroslav, could you check whether it's ok?
> > the changes in pcm_native.c shouldn't affect other cards.
> 
> It's ok, but it still looks like an ugly hack, but I don't see any other 
> way to solve this problem so you can apply this code to CVS.

yeah, agreed, it's a quick'n'dirty hack :)

the better way would be to move all prepare callback in every driver
as non-atomic, and call it inside a mutex.  linking/unlinking streams
will need to issue both a mutex and a spinlock for prepare and trigger
callbacks.
but, for this, we have to audit all drivers.  let's beautify later.

ok, i'll commit the changes now.


thanks,

Takashi


-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive?  Does it
help you create better code?  SHARE THE LOVE, and help us help
YOU!  Click Here: http://sourceforge.net/donate/
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to