The Advanced Linux Sound Architecture (ALSA) - library
Find a file
Joshua Frkuska 2dd78251ff pcm: direct: Protect from freeing semaphore when already in use
In the case of dshare, dsnoop, and dmix when a device is opened twice
and fails the second time, the semaphore is completely discarded. This
creates dangling semaphore data.

This patch removes the possibility for the semaphore to be destroyed during
a typical open failure by first checking if the shared memory can be destroyed
or not. If the shared memory cannot be released it means both it and the
semaphore are still in use and therefore the semaphore is just released.

Signed-off-by: Joshua Frkuska <joshua_frkuska@mentor.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2016-11-28 20:13:36 +01:00
alsalisp autotools: update style 2014-02-26 08:16:22 +01:00
aserver coverity fixes 2016-01-12 16:26:58 +01:00
doc doxygen: Suppress timestamp 2016-06-23 16:29:07 +02:00
include topology: Revise document and comments for ABI v5 2016-11-22 07:50:30 +01:00
m4 Add the attributes.m4 macro file from xine/lscube. 2008-11-21 13:04:19 +01:00
modules mixer: Don't install smixer modules unless python is enabled 2016-11-14 11:46:05 +01:00
src pcm: direct: Protect from freeing semaphore when already in use 2016-11-28 20:13:36 +01:00
test test: use actual information for TLV operation 2016-09-30 17:12:38 +02:00
utils autotools: update style 2014-02-26 08:16:22 +01:00
.gitignore Add pcm-multi-thread to .gitignore 2016-07-07 16:30:54 +02:00
acinclude.m4 fixed for the recent autoconf. 2004-01-26 15:52:17 +00:00
ChangeLog * update to libtool 1.3.3 1999-07-22 12:18:42 +00:00
configure.ac conf/ucm: skylake: add skylake-rt286 conf files 2016-10-10 11:59:44 +02:00
COPYING Updated GNU GPL license (address). 2001-12-30 09:22:54 +00:00
gitcompile Introduce --with-pkgconfdir, add 64-bit defaults to gitcompile 2012-01-20 16:14:44 +01:00
INSTALL pcm: Add thread-safety to PCM API 2016-07-11 15:25:30 +02:00
Makefile.am autotools: update style 2014-02-26 08:16:22 +01:00
MEMORY-LEAK Initial version 2003-02-04 14:56:07 +00:00
NOTES Change assert condition in error message handler 2007-10-24 12:53:08 +02:00
TODO Added snd_config_load_override(). 2002-01-09 21:28:15 +00:00