diff --git a/src/util/disk_cache.c b/src/util/disk_cache.c index f0381eebff8..943141cb627 100644 --- a/src/util/disk_cache.c +++ b/src/util/disk_cache.c @@ -264,7 +264,7 @@ disk_cache_destroy(struct disk_cache *cache) if (cache && !cache->path_init_failed) { util_queue_finish(&cache->cache_queue); util_queue_destroy(&cache->cache_queue); - munmap(cache->index_mmap, cache->index_mmap_size); + disk_cache_destroy_mmap(cache); } ralloc_free(cache); diff --git a/src/util/disk_cache_os.c b/src/util/disk_cache_os.c index f63098158be..48b79ac570c 100644 --- a/src/util/disk_cache_os.c +++ b/src/util/disk_cache_os.c @@ -249,6 +249,12 @@ path_fail: return mapped; } + +void +disk_cache_destroy_mmap(struct disk_cache *cache) +{ + munmap(cache->index_mmap, cache->index_mmap_size); +} #endif #endif /* ENABLE_SHADER_CACHE */ diff --git a/src/util/disk_cache_os.h b/src/util/disk_cache_os.h index 3fe10f9f812..a8524ba6b43 100644 --- a/src/util/disk_cache_os.h +++ b/src/util/disk_cache_os.h @@ -83,6 +83,9 @@ bool disk_cache_mmap_cache_index(void *mem_ctx, struct disk_cache *cache, char *path); +void +disk_cache_destroy_mmap(struct disk_cache *cache); + #endif #endif /* DISK_CACHE_OS_H */