--- src/intel/vulkan/anv_pipeline_cache.c | 37 +++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 17 deletions(-)
diff --git a/src/intel/vulkan/anv_pipeline_cache.c b/src/intel/vulkan/anv_pipeline_cache.c index d4c7262dc0..5825bf9f01 100644 --- a/src/intel/vulkan/anv_pipeline_cache.c +++ b/src/intel/vulkan/anv_pipeline_cache.c @@ -570,23 +570,26 @@ anv_device_search_for_kernel(struct anv_device *device, } #ifdef ENABLE_SHADER_CACHE - struct disk_cache *disk_cache = device->instance->physicalDevice.disk_cache; - if (disk_cache) { - cache_key cache_key; - disk_cache_compute_key(disk_cache, key_data, key_size, cache_key); - - size_t buffer_size; - uint8_t *buffer = disk_cache_get(disk_cache, cache_key, &buffer_size); - if (buffer) { - struct blob_reader blob; - blob_reader_init(&blob, buffer, buffer_size); - bin = anv_shader_bin_create_from_blob(device, &blob); - free(buffer); - - if (bin) { - if (cache) - anv_pipeline_cache_add_shader_bin(cache, bin); - return bin; + if (device->instance->pipeline_cache_enabled) { + struct disk_cache *disk_cache = + device->instance->physicalDevice.disk_cache; + if (disk_cache) { + cache_key cache_key; + disk_cache_compute_key(disk_cache, key_data, key_size, cache_key); + + size_t buffer_size; + uint8_t *buffer = disk_cache_get(disk_cache, cache_key, &buffer_size); + if (buffer) { + struct blob_reader blob; + blob_reader_init(&blob, buffer, buffer_size); + bin = anv_shader_bin_create_from_blob(device, &blob); + free(buffer); + + if (bin) { + if (cache) + anv_pipeline_cache_add_shader_bin(cache, bin); + return bin; + } } } } -- 2.14.1 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev