mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-06-10 07:48:19 +02:00
anv: fix descriptor pool leak in VMA object
Quoting the spec :
"When a pool is destroyed, all descriptor sets allocated from the
pool are implicitly freed and become invalid. Descriptor sets
allocated from a given pool do not need to be freed before
destroying that descriptor pool."
This implies we might leak nodes allocated in the vma object.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 0a6d2593b8 ("anv: Allocate descriptor buffers from the BO cache")
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7796>
(cherry picked from commit 5d55ca9c30)
This commit is contained in:
parent
bfc05f365c
commit
ec53c72f58
2 changed files with 4 additions and 2 deletions
|
|
@ -1912,7 +1912,7 @@
|
|||
"description": "anv: fix descriptor pool leak in VMA object",
|
||||
"nominated": true,
|
||||
"nomination_type": 1,
|
||||
"resolution": 0,
|
||||
"resolution": 1,
|
||||
"master_sha": null,
|
||||
"because_sha": "0a6d2593b8b63d2429e79eed900848c5c9a522c9"
|
||||
},
|
||||
|
|
|
|||
|
|
@ -800,8 +800,10 @@ void anv_DestroyDescriptorPool(
|
|||
anv_descriptor_set_layout_unref(device, set->layout);
|
||||
}
|
||||
|
||||
if (pool->bo)
|
||||
if (pool->bo) {
|
||||
util_vma_heap_finish(&pool->bo_heap);
|
||||
anv_device_release_bo(device, pool->bo);
|
||||
}
|
||||
anv_state_stream_finish(&pool->surface_state_stream);
|
||||
|
||||
vk_object_base_finish(&pool->base);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue