# After switch from 6.3.1 to 6.3.13
dEQP-VK.binding_model.descriptor_buffer.basic.limits,Fail
gmem-dEQP-VK.binding_model.descriptor_buffer.basic.limits,Fail
-dEQP-VK.api.object_management.multithreaded_per_thread_resources.event,Crash
-gmem-dEQP-VK.api.object_management.multithreaded_per_thread_resources.descriptor_pool_free_descriptor_set,Crash
spec@!opengl 3.2@gl-3.2-adj-prims line cull-back pv-last
spec@!opengl 3.2@gl-3.2-adj-prims line cull-front pv-last
spec@!opengl 3.2@gl-3.2-adj-prims pv-last
-
-# https://gitlab.freedesktop.org/mesa/mesa/-/issues/9049
-dEQP-VK.api.object_management.multithreaded_per_thread_resources.descriptor_pool
-dEQP-VK.api.object_management.multithreaded_per_thread_resources.descriptor_pool_free_descriptor_set
-dEQP-VK.api.object_management.multithreaded_per_thread_resources.device_memory_small
-dEQP-VK.api.object_management.multithreaded_per_thread_resources.event
-dEQP-VK.api.object_management.multithreaded_per_thread_resources.query_pool
-dEQP-VK.api.object_management.multithreaded_shared_resources.descriptor_pool
-dEQP-VK.api.object_management.multithreaded_shared_resources.device_memory_small
-dEQP-VK.api.object_management.multithreaded_shared_resources.event
-dEQP-VK.api.object_management.multithreaded_shared_resources.query_pool
-gmem-dEQP-VK.api.object_management.multithreaded_per_thread_resources.descriptor_pool_free_descriptor_set
# since Debian 12 (bookworm) uprev
dEQP-VK.api.driver_properties.conformance_version,Fail
-# https://gitlab.freedesktop.org/mesa/mesa/-/issues/9049
-dEQP-VK.api.object_management.multithreaded_per_thread_resources.descriptor_pool_free_descriptor_set,Crash
-dEQP-VK.api.object_management.multithreaded_per_thread_resources.descriptor_pool,Crash
-dEQP-VK.api.object_management.multithreaded_per_thread_resources.event,Crash
-dEQP-VK.api.object_management.multithreaded_shared_resources.descriptor_pool,Crash
-dEQP-VK.api.object_management.multithreaded_shared_resources.event,Crash
-dEQP-VK.api.object_management.multithreaded_shared_resources.descriptor_pool_free_descriptor_set,Crash
-dEQP-VK.api.object_management.multithreaded_shared_resources.query_pool,Crash
dEQP-VK.binding_model.descriptor_buffer.basic.limits,Fail
gmem-dEQP-VK.binding_model.descriptor_buffer.basic.limits,Fail
# recently started flaking towards to UnexpectedPass
spec@ext_external_objects@vk-depth-display@D24S8
-
-# Inconsistently crashing.
-# https://gitlab.freedesktop.org/mesa/mesa/-/issues/9049
-dEQP-VK.api.object_management.multithreaded_per_thread_resources.descriptor_pool
-dEQP-VK.api.object_management.multithreaded_per_thread_resources.descriptor_pool_free_descriptor_set
-dEQP-VK.api.object_management.multithreaded_per_thread_resources.device_memory_small
-dEQP-VK.api.object_management.multithreaded_per_thread_resources.event
-dEQP-VK.api.object_management.multithreaded_per_thread_resources.query_pool
-dEQP-VK.api.object_management.multithreaded_shared_resources.descriptor_pool
-dEQP-VK.api.object_management.multithreaded_shared_resources.device_memory_small
-dEQP-VK.api.object_management.multithreaded_shared_resources.event
-dEQP-VK.api.object_management.multithreaded_shared_resources.query_pool
-gmem-dEQP-VK.api.object_management.multithreaded_per_thread_resources.descriptor_pool_free_descriptor_set
vma->iova = bo->iova;
vma->size = bo->size;
vma->fence = p_atomic_read(&dev->queues[0]->fence);
- mtx_unlock(&dev->vma_mutex);
+ /* Must be cleared under the VMA mutex, or another thread could race to
+ * reap the VMA, closing the BO and letting a new GEM allocation produce
+ * this handle again.
+ */
memset(bo, 0, sizeof(*bo));
+ mtx_unlock(&dev->vma_mutex);
} else {
/* Our BO structs are stored in a sparse array in the physical device,
* so we don't want to free the BO pointer, instead we want to reset it