From: Seungha Yang Date: Mon, 11 Jan 2021 15:13:22 +0000 (+0900) Subject: va: allocator: Fix deadlock caused by double lock X-Git-Tag: 1.19.3~507^2~897 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=98eebf332287a6e26a0d7e0d56a094b7861d5cdf;p=platform%2Fupstream%2Fgstreamer.git va: allocator: Fix deadlock caused by double lock Trivial bug fix for deadlock Part-of: --- diff --git a/sys/va/gstvaallocator.c b/sys/va/gstvaallocator.c index e114046..c1d35be 100644 --- a/sys/va/gstvaallocator.c +++ b/sys/va/gstvaallocator.c @@ -1437,11 +1437,11 @@ gst_va_allocator_wait_for_memory (GstAllocator * allocator, GstBuffer * buffer) GST_VA_MEMORY_POOL_LOCK (&self->pool); if (!gst_va_memory_pool_wait_unlocked (&self->pool)) { - GST_VA_MEMORY_POOL_LOCK (&self->pool); + GST_VA_MEMORY_POOL_UNLOCK (&self->pool); return FALSE; } surface = gst_va_allocator_prepare_buffer_unlocked (self, buffer); - GST_VA_MEMORY_POOL_LOCK (&self->pool); + GST_VA_MEMORY_POOL_UNLOCK (&self->pool); if (surface != VA_INVALID_ID) { GST_TRACE_OBJECT (self, "Prepared surface %#x in buffer %p", surface,