Difference between revisions of "SMP Design"

From AlsaProject
Jump to: navigation, search
(Created page with "The SMP / multithread design has several levels in the ALSA project codebase. The kernel drivers are fully SMP / thread safe. The alsa-lib was designed to allow grouping of co...")
 
Line 1: Line 1:
The SMP / multithread design has several levels in the ALSA project codebase. The kernel drivers are fully SMP / thread safe. The alsa-lib was designed to allow grouping of commands for returned handle to optimize pthread locking - so the serialization should be done inside an application. The snd_*_open() calls are thread safe. The use of returned handles must be serialized in the application using own locking scheme.
+
The SMP / multithread design has several levels in the ALSA project codebase. The kernel drivers are fully SMP / thread safe. The alsa-lib was designed to allow grouping of commands for returned handle to optimize pthread locking. The snd_*_open() calls are thread safe. The use of returned handles must be serialized in the application using own locking scheme. Standalone (not handle related) functions in alsa-lib should be fully thread safe.
  
 
If you find a bug in kernel or alsa-lib which breaks these rules, please, let us know.
 
If you find a bug in kernel or alsa-lib which breaks these rules, please, let us know.

Revision as of 16:07, 13 November 2012

The SMP / multithread design has several levels in the ALSA project codebase. The kernel drivers are fully SMP / thread safe. The alsa-lib was designed to allow grouping of commands for returned handle to optimize pthread locking. The snd_*_open() calls are thread safe. The use of returned handles must be serialized in the application using own locking scheme. Standalone (not handle related) functions in alsa-lib should be fully thread safe.

If you find a bug in kernel or alsa-lib which breaks these rules, please, let us know.

Custom Search
Personal tools
Namespaces

Variants
Actions
Navigation
wiki
Toolbox