anv: Fix destroying descriptor sets when pool gets reset
pool->next and pool->free_list were reset before their usage in
anv_descriptor_pool_free_set
Fixes: 775aabdd
"anv: destroy descriptor sets when pool gets reset"
Signed-off-by: Danylo Piliaiev <danylo.piliaiev@globallogic.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
This commit is contained in:
parent
ccce940947
commit
9c80be956f
|
@ -627,6 +627,11 @@ VkResult anv_ResetDescriptorPool(
|
|||
ANV_FROM_HANDLE(anv_device, device, _device);
|
||||
ANV_FROM_HANDLE(anv_descriptor_pool, pool, descriptorPool);
|
||||
|
||||
list_for_each_entry_safe(struct anv_descriptor_set, set,
|
||||
&pool->desc_sets, pool_link) {
|
||||
anv_descriptor_set_destroy(device, pool, set);
|
||||
}
|
||||
|
||||
pool->next = 0;
|
||||
pool->free_list = EMPTY;
|
||||
|
||||
|
@ -636,12 +641,6 @@ VkResult anv_ResetDescriptorPool(
|
|||
}
|
||||
|
||||
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);
|
||||
}
|
||||
|
||||
anv_state_stream_init(&pool->surface_state_stream,
|
||||
&device->surface_state_pool, 4096);
|
||||
pool->surface_state_free_list = NULL;
|
||||
|
|
Loading…
Reference in New Issue