[pulseaudio-discuss] pulseaudio 0.9.7-SVN mutex problem

Jim Carter jimc at math.ucla.edu
Wed Oct 10 22:29:55 PDT 2007


OK, I got pulseaudio-0.9.7-SVN to compile by commenting out the AM_ICONV 
macro in ./configure.ac.  In my instance of autoconf-2.60, nothing in 
/usr/share/autoconf defines this macro.  /usr/include/iconv.h is present, 
and the functions themselves are in /lib/libc.so.6, actually 
/lib/libc-2.5.so from package glibc-2.5.  Probably as a result, HAVE_ICONV 
was not defined, and likely ./src/pulse/utf8.c does nothing.  But I doubt 
that PulseAudio on my system will see many non-ASCII character strings, so 
it's not a big deal.  As far as I could see, there were no compile-time 
errors or warnings.  I did, however, need to run ldconfig so the new 
libpulsecore.so.4 could be found.

So, having verified that I could play a wav file direct to the Bluetooth 
device, I started up pulseaudio, and it said:

pulseaudio: pulsecore/mutex-posix.c:98: pa_mutex_unlock: Assertion 
`pthread_mutex_unlock(&m->mutex) == 0' failed.

strace showed no files opened that might contain saved state from the 
previous version, in fact no system calls of any kind after basic setup.  
Here is a summary (repetitive stuff deleted):

11431 open("/lib/libc.so.6", O_RDONLY)  = 3 (finishes mapping libraries)
11431 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 
	-1, 0) = 0xb786d000 (total of 5 of these)
11431 set_thread_area({entry_number:-1 -> 6, base_addr:0xb78698f0, 
	limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, 
	limit_in_pages:1, seg_not_present:0, useable:1}) = 0
11431 mprotect(0xb7996000, 4096, PROT_READ) = 0 (69 different addresses)
11431 munmap(0xb7de5000, 140743)        = 0
11431 set_tid_address(0xb7869938)       = 11431
11431 SYS_311(0xb7869940, 0xc, 0xb7b30ff4, 0xb78698f0, 0xb7b30eec) = 0
11431 rt_sigaction(SIGRTMIN, {0xb7b20520, [], SA_SIGINFO}, NULL, 8) = 0
11431 rt_sigaction(SIGRT_1, {0xb7b20430, [], SA_RESTART|SA_SIGINFO}, NULL, 
	8) = 0
11431 rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
11431 getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) 
	= 0
11431 uname({sys="Linux", node="xena", ...}) = 0
11431 getuid32()                        = 500
11431 geteuid32()                       = 500
11431 brk(0)                            = 0x8062000
11431 brk(0x8083000)                    = 0x8083000
11431 open("/usr/share/locale/locale.alias", O_RDONLY) = 3 (error message)

I have /lib/libpthread-2.5.so from package glibc-2.5.  

Does anyone have any idea what's going on here?

James F. Carter          Voice 310 825 2897    FAX 310 206 6673
UCLA-Mathnet;  6115 MSA; 405 Hilgard Ave.; Los Angeles, CA, USA 90095-1555
Email: jimc at math.ucla.edu  http://www.math.ucla.edu/~jimc (q.v. for PGP key)



More information about the pulseaudio-discuss mailing list