anv/descriptor_set: Destroy sets before pool finalization
Fixes: 105002bd2d
"anv: destroy descriptor sets when pool gets..."
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
This commit is contained in:
@@ -745,6 +745,11 @@ void anv_DestroyDescriptorPool(
|
|||||||
if (!pool)
|
if (!pool)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
list_for_each_entry_safe(struct anv_descriptor_set, set,
|
||||||
|
&pool->desc_sets, pool_link) {
|
||||||
|
anv_descriptor_set_destroy(device, pool, set);
|
||||||
|
}
|
||||||
|
|
||||||
if (pool->bo.size) {
|
if (pool->bo.size) {
|
||||||
anv_gem_munmap(pool->bo.map, pool->bo.size);
|
anv_gem_munmap(pool->bo.map, pool->bo.size);
|
||||||
anv_vma_free(device, &pool->bo);
|
anv_vma_free(device, &pool->bo);
|
||||||
@@ -752,11 +757,6 @@ void anv_DestroyDescriptorPool(
|
|||||||
}
|
}
|
||||||
anv_state_stream_finish(&pool->surface_state_stream);
|
anv_state_stream_finish(&pool->surface_state_stream);
|
||||||
|
|
||||||
list_for_each_entry_safe(struct anv_descriptor_set, set,
|
|
||||||
&pool->desc_sets, pool_link) {
|
|
||||||
anv_descriptor_set_destroy(device, pool, set);
|
|
||||||
}
|
|
||||||
|
|
||||||
util_vma_heap_finish(&pool->bo_heap);
|
util_vma_heap_finish(&pool->bo_heap);
|
||||||
|
|
||||||
vk_free2(&device->alloc, pAllocator, pool);
|
vk_free2(&device->alloc, pAllocator, pool);
|
||||||
|
Reference in New Issue
Block a user