From 8eec3284e1d98923b462a8b0dc07667ecfe781a3 Mon Sep 17 00:00:00 2001 From: Boris Brezillon Date: Fri, 28 Jun 2024 09:19:52 +0200 Subject: [PATCH] panvk: Add missing vk_device_finish() calls We do free the device object, but never call vk_device_finish() on it. Signed-off-by: Boris Brezillon Reviewed-by: Mary Guillemard Part-of: --- src/panfrost/vulkan/panvk_vX_device.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/panfrost/vulkan/panvk_vX_device.c b/src/panfrost/vulkan/panvk_vX_device.c index b4221af1bd3..face860a654 100644 --- a/src/panfrost/vulkan/panvk_vX_device.c +++ b/src/panfrost/vulkan/panvk_vX_device.c @@ -152,7 +152,7 @@ panvk_per_arch(create_device)(struct panvk_physical_device *physical_device, if (!device->kmod.dev) { result = vk_errorf(instance, panvk_errno_to_vk_error(), "cannot create device"); - goto err_free_dev; + goto err_finish_dev; } if (instance->debug_flags & @@ -257,6 +257,9 @@ err_free_priv_bos: err_destroy_kdev: pan_kmod_dev_destroy(device->kmod.dev); +err_finish_dev: + vk_device_finish(&device->vk); + err_free_dev: vk_free(&device->vk.alloc, device); return result; @@ -287,6 +290,7 @@ panvk_per_arch(destroy_device)(struct panvk_device *device, pandecode_destroy_context(device->debug.decode_ctx); pan_kmod_dev_destroy(device->kmod.dev); + vk_device_finish(&device->vk); vk_free(&device->vk.alloc, device); }