From b816167312315f5840fbff38207a97aee75e3ec1 Mon Sep 17 00:00:00 2001
From: Yiwei Zhang <zzyiwei@chromium.org>
Date: Sat, 21 Aug 2021 22:21:17 +0000
Subject: [PATCH] venus: fix all missing vn_object_base_fini

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12498>
---
 src/virtio/vulkan/vn_buffer.c         | 1 +
 src/virtio/vulkan/vn_command_buffer.c | 1 +
 src/virtio/vulkan/vn_descriptor_set.c | 2 ++
 src/virtio/vulkan/vn_device_memory.c  | 3 +++
 src/virtio/vulkan/vn_image.c          | 2 ++
 src/virtio/vulkan/vn_queue.c          | 2 ++
 6 files changed, 11 insertions(+)

diff --git a/src/virtio/vulkan/vn_buffer.c b/src/virtio/vulkan/vn_buffer.c
index cb65c2d29f1..766fb3ad05a 100644
--- a/src/virtio/vulkan/vn_buffer.c
+++ b/src/virtio/vulkan/vn_buffer.c
@@ -42,6 +42,7 @@ vn_buffer_create(struct vn_device *dev,
    result = vn_call_vkCreateBuffer(dev->instance, device, create_info, NULL,
                                    &buffer);
    if (result != VK_SUCCESS) {
+      vn_object_base_fini(&buf->base);
       vk_free(alloc, buf);
       return result;
    }
diff --git a/src/virtio/vulkan/vn_command_buffer.c b/src/virtio/vulkan/vn_command_buffer.c
index de6bd7cac05..6ee5237b32a 100644
--- a/src/virtio/vulkan/vn_command_buffer.c
+++ b/src/virtio/vulkan/vn_command_buffer.c
@@ -542,6 +542,7 @@ vn_AllocateCommandBuffers(VkDevice device,
             cmd = vn_command_buffer_from_handle(pCommandBuffers[j]);
             vn_cs_encoder_fini(&cmd->cs);
             list_del(&cmd->head);
+            vn_object_base_fini(&cmd->base);
             vk_free(alloc, cmd);
          }
          memset(pCommandBuffers, 0,
diff --git a/src/virtio/vulkan/vn_descriptor_set.c b/src/virtio/vulkan/vn_descriptor_set.c
index d50c07056f9..d5d0f484c4d 100644
--- a/src/virtio/vulkan/vn_descriptor_set.c
+++ b/src/virtio/vulkan/vn_descriptor_set.c
@@ -252,6 +252,7 @@ vn_AllocateDescriptorSets(VkDevice device,
          for (uint32_t j = 0; j < i; j++) {
             set = vn_descriptor_set_from_handle(pDescriptorSets[j]);
             list_del(&set->head);
+            vn_object_base_fini(&set->base);
             vk_free(alloc, set);
          }
          memset(pDescriptorSets, 0,
@@ -276,6 +277,7 @@ vn_AllocateDescriptorSets(VkDevice device,
          struct vn_descriptor_set *set =
             vn_descriptor_set_from_handle(pDescriptorSets[i]);
          list_del(&set->head);
+         vn_object_base_fini(&set->base);
          vk_free(alloc, set);
       }
       memset(pDescriptorSets, 0,
diff --git a/src/virtio/vulkan/vn_device_memory.c b/src/virtio/vulkan/vn_device_memory.c
index d244f109e39..89226dde332 100644
--- a/src/virtio/vulkan/vn_device_memory.c
+++ b/src/virtio/vulkan/vn_device_memory.c
@@ -48,6 +48,7 @@ vn_device_memory_simple_alloc(struct vn_device *dev,
       },
       NULL, &mem_handle);
    if (result != VK_SUCCESS) {
+      vn_object_base_fini(&mem->base);
       vk_free(alloc, mem);
       return result;
    }
@@ -61,6 +62,7 @@ vn_device_memory_simple_alloc(struct vn_device *dev,
    if (result != VK_SUCCESS) {
       vn_async_vkFreeMemory(dev->instance, vn_device_to_handle(dev),
                             mem_handle, NULL);
+      vn_object_base_fini(&mem->base);
       vk_free(alloc, mem);
       return result;
    }
@@ -370,6 +372,7 @@ vn_AllocateMemory(VkDevice device,
                                       mem_type->propertyFlags, 0);
    }
    if (result != VK_SUCCESS) {
+      vn_object_base_fini(&mem->base);
       vk_free(alloc, mem);
       return vn_error(dev->instance, result);
    }
diff --git a/src/virtio/vulkan/vn_image.c b/src/virtio/vulkan/vn_image.c
index 76fbd3fb05b..88a3c7bce77 100644
--- a/src/virtio/vulkan/vn_image.c
+++ b/src/virtio/vulkan/vn_image.c
@@ -191,6 +191,7 @@ vn_image_create(struct vn_device *dev,
 
    result = vn_image_init(dev, create_info, img);
    if (result != VK_SUCCESS) {
+      vn_object_base_fini(&img->base);
       vk_free(alloc, img);
       return result;
    }
@@ -227,6 +228,7 @@ vn_image_create_deferred(struct vn_device *dev,
    result = vn_image_store_deferred_create_info(create_info, alloc,
                                                 &img->deferred_info);
    if (result != VK_SUCCESS) {
+      vn_object_base_fini(&img->base);
       vk_free(alloc, img);
       return result;
    }
diff --git a/src/virtio/vulkan/vn_queue.c b/src/virtio/vulkan/vn_queue.c
index 2f067f1f581..062aa43d5e8 100644
--- a/src/virtio/vulkan/vn_queue.c
+++ b/src/virtio/vulkan/vn_queue.c
@@ -493,6 +493,7 @@ vn_CreateFence(VkDevice device,
    VkResult result = vn_fence_init_payloads(
       dev, fence, pCreateInfo->flags & VK_FENCE_CREATE_SIGNALED_BIT, alloc);
    if (result != VK_SUCCESS) {
+      vn_object_base_fini(&fence->base);
       vk_free(alloc, fence);
       return vn_error(dev->instance, result);
    }
@@ -816,6 +817,7 @@ vn_CreateSemaphore(VkDevice device,
 
    VkResult result = vn_semaphore_init_payloads(dev, sem, initial_val, alloc);
    if (result != VK_SUCCESS) {
+      vn_object_base_fini(&sem->base);
       vk_free(alloc, sem);
       return vn_error(dev->instance, result);
    }
-- 
2.33.0.259.gc128427fd7-goog

