[FFmpeg-devel] [PATCH 1/3] pthread : Remove one unnecessary lock/unlock pair in worker loop.

Aaron Colwell acolwell at chromium.org
Thu Mar 22 20:44:07 CET 2012


On Thu, Mar 22, 2012 at 11:33 AM, Reimar Döffinger <Reimar.Doeffinger at gmx.de
> wrote:

> On Thu, Mar 22, 2012 at 10:54:45AM -0700, Aaron Colwell wrote:
> > From what I can tell p->mutex appears to only be used for allowing
> packets
> > to be submitted when the worker thread is ready for them. It seems like
> > this extra unlocked region opens up the possiblity for submit_packet() to
> > sneak in state modifications when the worker thread isn't really ready.
> Am
> > I misunderstanding the role of p->mutex?
>
> I see what you mean.
> Yes, submit_packet is blocking itself by setting state to SETTING_UP.
> However resetting it outside the mutex as done here might indeed allow
> it to incorrectly submit one additional packet to the same decode call,
> i.e. we would silently lose one input packet.


How about this updated patch for addressing this?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-pthread-Remove-lock-unlock-pairs-in-worker-loop-to-a.patch
Type: application/octet-stream
Size: 1776 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20120322/f1c8c379/attachment.obj>


More information about the ffmpeg-devel mailing list