[alsa-devel] Races in alsa-lib with threads
Takashi Iwai
tiwai at suse.de
Tue Nov 13 07:32:09 CET 2012
At Mon, 12 Nov 2012 19:40:42 +0000 (UTC),
Rob Krakora wrote:
>
> Jaroslav Kysela <perex <at> perex.cz> writes:
>
> >
> > Date 10.11.2012 14:53, Takashi Iwai wrote:
> > > At Fri, 9 Nov 2012 18:03:25 -0800,
> > > Trent Piepho wrote:
> > >>
> > >> We've found a race with alsa-lib functions are called from multiple
> > >> threads. I was under the impression that alsa-lib was supposed to be
> > >> thread safe. Is this not the case and all alsa calls should be done
> > >> one from thread or protected by a mutex?
> > >
> > > Yes. alsa-lib isn't thread-safe.
> >
> > The alsa-lib is designed to be thread safe but the calls for one handle
> > (PCM, control, rawmidi etc.) should be serialized using mutexes in apps.
> > Or basically, it's assumed that one thread will maintain one handle.
> >
> > This should be documented somewhere.
> >
> > Jaroslav
> >
>
> Hi Jaroslav,
>
> Would you be able to point me the the ALSA documentation that indicates the
> stipulations on handle usage using multiple threads? I cannot find it.
Think other way round:
The fact that it isn't documented means it's not safe to use in that
way :)
Takashi
More information about the Alsa-devel
mailing list