[Mesa-dev] [PATCH] anv/pipeline_cache: fix incorrect guards for NIR cache

Iago Toral Quiroga itoral at igalia.com
Fri Jan 11 10:50:36 UTC 2019


Fixes: f6aa9f718516 'anv/pipeline_cache: Add support for caching NIR'
---
 src/intel/vulkan/anv_pipeline_cache.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

Or maybe just check cache->cache instead, which I guess was the original
intention, but I kind of prefer having all fields initialized.

diff --git a/src/intel/vulkan/anv_pipeline_cache.c b/src/intel/vulkan/anv_pipeline_cache.c
index 18f310b06e..f9733c5309 100644
--- a/src/intel/vulkan/anv_pipeline_cache.c
+++ b/src/intel/vulkan/anv_pipeline_cache.c
@@ -239,6 +239,7 @@ anv_pipeline_cache_init(struct anv_pipeline_cache *cache,
                                                  sha1_compare_func);
    } else {
       cache->cache = NULL;
+      cache->nir_cache = NULL;
    }
 }
 
@@ -670,7 +671,7 @@ anv_device_search_for_nir(struct anv_device *device,
                           unsigned char sha1_key[20],
                           void *mem_ctx)
 {
-   if (cache) {
+   if (cache && cache->nir_cache) {
       const struct serialized_nir *snir = NULL;
 
       pthread_mutex_lock(&cache->mutex);
@@ -702,7 +703,7 @@ anv_device_upload_nir(struct anv_device *device,
                       const struct nir_shader *nir,
                       unsigned char sha1_key[20])
 {
-   if (cache) {
+   if (cache && cache->nir_cache) {
       pthread_mutex_lock(&cache->mutex);
       struct hash_entry *entry =
          _mesa_hash_table_search(cache->nir_cache, sha1_key);
-- 
2.17.1



More information about the mesa-dev mailing list