Bug#406754: [Portaudio] Re: More memory barriers

Bjorn Roche bjorn at xowave.com
Sat Jan 13 22:28:21 CET 2007


On Jan 13, 2007, at 4:15 PM, Mikael Magnusson wrote:

> Bjorn Roche wrote:
>
>> Now, it should work on Linux x86, Linux PPC, Mac OS X and FreeBSD.  
>> On other systems (I don't know what else uses these ring-buffers,  
>> other than Jack/Linux and CoreAudio) it should fail to compile,  
>> but give the user enough info to compile without SMP safety if  
>> they want (by defining ALLOW_SMP_DANGERS, which should probably  
>> have a better name).
>>     Any feedback before I commit (especially from someone familiar  
>> with x86)?
>
> What about other architectures? The Debian portaudio19 package I'm  
> maintaining together with the Debian VoIP team fails to build on  
> most architectures. (Reported in Debian BTS #406754[1])
>
> error:
> src/common/pa_ringbuffer.c:100:11: error: #error Memory barriers  
> are not define d on this system. You can still compile by defining  
> ALLOW_SMP_DANGERS, but SMP safety will not be guaranteed.
>
> PortAudio V19 used to build on all architectures: alpha, amd64,  
> arm, hppa ,i386, ia64, m68k, mips, mipsel, powerpc, s390 and sparc.
>
> Any solution?
>

As the error message says, you can compile by defining  
ALLOW_SMP_DANGERS (-DALLOW_SMP_DANGERS). This will not cause problems  
for single processor machines, but could cause problems on SMP (same  
as with the old code). Alternatively, if you could tell us what the  
appropriate memory barriers are (or if none are needed) for the  
platform and a way to detect it using #defines, I'll fix it.

	bjorn


-----------------------------
Bjorn Roche
XO Wave
Digital Audio Production and Post-Production Software
http://www.xowave.com
http://blog.bjornroche.com
http://myspace.com/xowave






More information about the Pkg-voip-maintainers mailing list