diff options
author | Alex Smith <asmith@feralinteractive.com> | 2018-01-04 11:28:46 +0000 |
---|---|---|
committer | Alex Smith <asmith@feralinteractive.com> | 2018-01-04 14:54:02 +0000 |
commit | 00a81e9909365065545a3c2dc362b645a8238fb2 (patch) | |
tree | 3fbfe474c80f75e7323cab744a315ef0e36b2beb /src/intel | |
parent | e923075a82af63e5b5019c17dcf86a573deb7282 (diff) |
anv: Add missing unlock in anv_scratch_pool_alloc
Fixes hangs seen due to the lock not being released here.
Signed-off-by: Alex Smith <asmith@feralinteractive.com>
Cc: mesa-stable@lists.freedesktop.org
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Diffstat (limited to 'src/intel')
-rw-r--r-- | src/intel/vulkan/anv_allocator.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/intel/vulkan/anv_allocator.c b/src/intel/vulkan/anv_allocator.c index 33bd3c68c55..fe14d6cfabd 100644 --- a/src/intel/vulkan/anv_allocator.c +++ b/src/intel/vulkan/anv_allocator.c @@ -1088,8 +1088,10 @@ anv_scratch_pool_alloc(struct anv_device *device, struct anv_scratch_pool *pool, pthread_mutex_lock(&device->mutex); __sync_synchronize(); - if (bo->exists) + if (bo->exists) { + pthread_mutex_unlock(&device->mutex); return &bo->bo; + } const struct anv_physical_device *physical_device = &device->instance->physicalDevice; |