vulkan/pipeline_cache: use vk_pipeline_cache_create_and_insert_object() during vk_pip...
authorDaniel Schürmann <daniel@schuermann.dev>
Thu, 16 Mar 2023 19:24:31 +0000 (20:24 +0100)
committerMarge Bot <emma+marge@anholt.net>
Mon, 10 Apr 2023 09:14:30 +0000 (09:14 +0000)
This avoids an extra serialize() step for disk-cache insertion.

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

src/vulkan/runtime/vk_pipeline_cache.c

index 7e8c8c8..11398b5 100644 (file)
@@ -593,13 +593,12 @@ vk_pipeline_cache_load(struct vk_pipeline_cache *cache,
          find_ops_for_type(cache->base.device->physical, type);
 
       struct vk_pipeline_cache_object *object =
-         vk_pipeline_cache_object_deserialize(cache,
-                                              key_data, key_size,
-                                              data, data_size, ops);
+         vk_pipeline_cache_create_and_insert_object(cache, key_data, key_size,
+                                                    data, data_size, ops);
+
       if (object == NULL)
          continue;
 
-      object = vk_pipeline_cache_add_object(cache, object);
       vk_pipeline_cache_object_unref(cache->base.device, object);
    }
 }