[FFmpeg-cvslog] avcodec/ff_init_vlc_sparse: use a spinlock for thread sync

Michael Niedermayer michaelni at gmx.at
Mon Jun 16 20:22:16 CEST 2014


On Mon, Jun 16, 2014 at 09:44:49AM +0200, Reimar Döffinger wrote:
> 
> 
> On 16.06.2014, at 00:41, Carl Eugen Hoyos <cehoyos at ag.or.at> wrote:
> 
> > Michael Niedermayer <git <at> videolan.org> writes:
> > 
> >> ffmpeg | branch: master | Michael Niedermayer | 
> >> Sat Jul 13 13:32:39 2013 +0200|
> >> [6af8326354ed6c1c68b53b3f2bba6697fb2d3bff] | 
> >> committer: Michael Niedermayer
> >> 
> >> avcodec/ff_init_vlc_sparse: use a spinlock for thread sync
> > 
> > This commit leads to many deadlocks when running fate 
> > on AIX PPC64, for example when reading the mp2 file 
> > produced by fate-acodec-mp2.

should be fixed


> 
> I don't know the exact code that was used, but spinlocks in the traditional sense can only be used when you can _guarantee_ that each thread runs on its own, fully independent CPU.
> I.e. spinlocks can't be used correctly in user-space, and hangs are the expected outcome when you do it anyway.

i assumed that all supported OS use modern shedulers that make
such deadlocks impossible.
the deadlocks on AIX smell like thats not the case

also someone should write a test that opens, demuxes and decodes
from 2 files at once repeatly so races and deadlocks could be detected

Thanks

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Complexity theory is the science of finding the exact solution to an
approximation. Benchmarking OTOH is finding an approximation of the exact
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <https://ffmpeg.org/pipermail/ffmpeg-cvslog/attachments/20140616/e6778433/attachment.asc>


More information about the ffmpeg-cvslog mailing list