[FFmpeg-devel] [PATCH] submit_thread should also lock the mutex that guards the source avctx (prev_thread->avctx) when calling update_context_from_thread.

Wan-Teh Chang wtc at google.com
Mon Feb 29 20:16:30 CET 2016


Hi James,

On Thu, Feb 25, 2016 at 6:50 PM, James Almer <jamrial at gmail.com> wrote:
>
> Did you try running the FATE suite using threadsanitizer, or just decoded random
> videos? I remember like half the tests were failing because of data races and
> most of them pointed to code changed by your patches. It would be interesting to
> see how they are affected.

When I submitted my patch for review, I only decoded random videos
(with an old version of ffmpeg). Later in this email thread, Ronald
showed my patch removed all concurrency, so I'll need to go back to
the drawing board.

> configure has the --toolchain=gcc-tsan option for this. Make sure to also add
> --disable-stripping, then run "make fate THREADS=4 SAMPLES=/path/to/samples" or
> similar. You may instead want to run a small set at a time instead of the whole
> suite since it's big and threadsanitizer slow. Try for example fate-h264 in that
> case.

Thank you very much for the command line. I did this last Saturday on
the ffmpeg HEAD. Although the h264 decoding code has changed
significantly between the old version I'm using and the ffmpeg HEAD, I
am certain these are the same class of data race.

Wan-Teh Chang


More information about the ffmpeg-devel mailing list