anv: Use vk_object_alloc/free

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10123>
This commit is contained in:
Jason Ekstrand
2021-04-08 16:12:27 -05:00
committed by Marge Bot
parent 22478bb0e4
commit c43109c07b
10 changed files with 70 additions and 137 deletions

View File

@@ -253,14 +253,11 @@ static VkResult anv_create_cmd_buffer(
struct anv_cmd_buffer *cmd_buffer;
VkResult result;
cmd_buffer = vk_alloc(&pool->alloc, sizeof(*cmd_buffer), 8,
VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
cmd_buffer = vk_object_alloc(&device->vk, &pool->alloc, sizeof(*cmd_buffer),
VK_OBJECT_TYPE_COMMAND_BUFFER);
if (cmd_buffer == NULL)
return vk_error(VK_ERROR_OUT_OF_HOST_MEMORY);
vk_object_base_init(&device->vk, &cmd_buffer->base,
VK_OBJECT_TYPE_COMMAND_BUFFER);
cmd_buffer->batch.status = VK_SUCCESS;
cmd_buffer->device = device;
@@ -341,8 +338,7 @@ anv_cmd_buffer_destroy(struct anv_cmd_buffer *cmd_buffer)
vk_free(&cmd_buffer->pool->alloc, cmd_buffer->self_mod_locations);
vk_object_base_finish(&cmd_buffer->base);
vk_free(&cmd_buffer->pool->alloc, cmd_buffer);
vk_object_free(&cmd_buffer->device->vk, &cmd_buffer->pool->alloc, cmd_buffer);
}
void anv_FreeCommandBuffers(
@@ -1137,13 +1133,11 @@ VkResult anv_CreateCommandPool(
ANV_FROM_HANDLE(anv_device, device, _device);
struct anv_cmd_pool *pool;
pool = vk_alloc2(&device->vk.alloc, pAllocator, sizeof(*pool), 8,
VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
pool = vk_object_alloc(&device->vk, pAllocator, sizeof(*pool),
VK_OBJECT_TYPE_COMMAND_POOL);
if (pool == NULL)
return vk_error(VK_ERROR_OUT_OF_HOST_MEMORY);
vk_object_base_init(&device->vk, &pool->base, VK_OBJECT_TYPE_COMMAND_POOL);
if (pAllocator)
pool->alloc = *pAllocator;
else
@@ -1174,8 +1168,7 @@ void anv_DestroyCommandPool(
anv_cmd_buffer_destroy(cmd_buffer);
}
vk_object_base_finish(&pool->base);
vk_free2(&device->vk.alloc, pAllocator, pool);
vk_object_free(&device->vk, pAllocator, pool);
}
VkResult anv_ResetCommandPool(