diff --git a/src/freedreno/vulkan/tu_knl_drm_msm.cc b/src/freedreno/vulkan/tu_knl_drm_msm.cc index cbb15bc16fb..ff6a2ede495 100644 --- a/src/freedreno/vulkan/tu_knl_drm_msm.cc +++ b/src/freedreno/vulkan/tu_knl_drm_msm.cc @@ -460,6 +460,8 @@ tu_bo_init(struct tu_device *dev, vk_realloc(&dev->vk.alloc, dev->bo_list, new_len * sizeof(*dev->bo_list), 8, VK_SYSTEM_ALLOCATION_SCOPE_DEVICE); if (!new_ptr) { + dev->bo_count--; + mtx_unlock(&dev->bo_mutex); tu_gem_close(dev, gem_handle); return VK_ERROR_OUT_OF_HOST_MEMORY; }