GNOME Bugzilla – Bug 742174
vtenc_h264: potential deadlock upon EOS
Last modified: 2015-01-08 13:49:02 UTC
Created attachment 293550 [details] [review]
fix deadlock on EOS
I experience deadlocks in the vtenc_h264 component when the element receives an EOS. It does not happen with every pipeline I create though.
After investigating a little I _think_ I understood the problem. Simply because there was already a similar fix inside the code at a different location. So I reused the same thing and did a couple of tests. For me the patch completely removes the deadlocks completely.
Thanks for the patch! :) Please attach patches in "git format-patch" format in the future though, that way it will automatically include your name and a commit message.
Author: Florian Zwoch <email@example.com>
Date: Thu Jan 8 14:47:16 2015 +0100
vtenc: Unlock the stream lock while waiting for pending frames to be completed in finish()
We might otherwise deadlock because gst_vtenc_enqueue_buffer() can be
called again and will take the stream lock again from another thread.