nvk: Drop memory object tracking
authorFaith Ekstrand <faith.ekstrand@collabora.com>
Mon, 25 Sep 2023 22:19:59 +0000 (17:19 -0500)
committerMarge Bot <emma+marge@anholt.net>
Tue, 26 Sep 2023 05:05:26 +0000 (05:05 +0000)
We no longer have to pass a list of BOs to the kernel so there's no need
to track allocated memory objects like this.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25357>

src/nouveau/vulkan/nvk_device.c
src/nouveau/vulkan/nvk_device.h
src/nouveau/vulkan/nvk_device_memory.c
src/nouveau/vulkan/nvk_device_memory.h

index a0bf50a..8cbe9a3 100644 (file)
@@ -174,8 +174,6 @@ nvk_CreateDevice(VkPhysicalDevice physicalDevice,
       goto fail_ws_dev;
    }
 
-   list_inithead(&dev->memory_objects);
-
    result = nvk_descriptor_table_init(dev, &dev->images,
                                       8 * 4 /* tic entry size */,
                                       1024, 1024 * 1024);
@@ -326,7 +324,6 @@ nvk_DestroyDevice(VkDevice _device, const VkAllocationCallbacks *pAllocator)
    nvk_heap_finish(dev, &dev->shader_heap);
    nvk_descriptor_table_finish(dev, &dev->samplers);
    nvk_descriptor_table_finish(dev, &dev->images);
-   assert(list_is_empty(&dev->memory_objects));
    nouveau_ws_context_destroy(dev->ws_ctx);
    nouveau_ws_device_destroy(dev->ws_dev);
    vk_free(&dev->vk.alloc, dev);
index 8dee8f3..deded52 100644 (file)
@@ -36,9 +36,6 @@ struct nvk_device {
    struct nouveau_ws_device *ws_dev;
    struct nouveau_ws_context *ws_ctx;
 
-   /* Protected by nvk_device::mutex */
-   struct list_head memory_objects;
-
    struct nvk_descriptor_table images;
    struct nvk_descriptor_table samplers;
    struct nvk_heap shader_heap;
index 664f4a4..c8a5f6a 100644 (file)
@@ -254,10 +254,6 @@ nvk_allocate_memory(struct nvk_device *dev,
       close(fd_info->fd);
    }
 
-   pthread_mutex_lock(&dev->mutex);
-   list_addtail(&mem->link, &dev->memory_objects);
-   pthread_mutex_unlock(&dev->mutex);
-
    *mem_out = mem;
 
    return VK_SUCCESS;
@@ -277,10 +273,6 @@ nvk_free_memory(struct nvk_device *dev,
    if (mem->map)
       nouveau_ws_bo_unmap(mem->bo, mem->map);
 
-   pthread_mutex_lock(&dev->mutex);
-   list_del(&mem->link);
-   pthread_mutex_unlock(&dev->mutex);
-
    nouveau_ws_bo_destroy(mem->bo);
 
    vk_device_memory_destroy(&dev->vk, pAllocator, &mem->vk);
index f1e272b..278bf7f 100644 (file)
@@ -17,9 +17,6 @@ struct nvk_image_plane;
 struct nvk_device_memory {
    struct vk_device_memory vk;
 
-   struct list_head link;
-
-
    struct nouveau_ws_bo *bo;
 
    void *map;