This fixes a test failure on 32bit architectures. Patch adapted from upstream source repository: https://cgit.freedesktop.org/mesa/mesa/commit/?id=61bbb25a080e48a8ca897ba7f6e73cc6a8e9b5b8 From a2121a13b912c5c3cc2aa22009c978b69b3bbadc Mon Sep 17 00:00:00 2001 From: Grazvydas Ignotas Date: Thu, 9 Mar 2017 02:54:53 +0200 Subject: [PATCH] util/disk_cache: fix size subtraction on 32bit Negating size_t on 32bit produces a 32bit result. This was effectively adding values close to UINT_MAX to the cache size (the files are usually small) instead of intended subtraction. Fixes 'make check' disk_cache failures on 32bit. Signed-off-by: Grazvydas Ignotas Reviewed-by: Timothy Arceri --- src/util/disk_cache.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/util/disk_cache.c b/src/util/disk_cache.c index d3e8b40123..ea7832d29e 100644 --- a/src/util/disk_cache.c +++ b/src/util/disk_cache.c @@ -521,7 +521,7 @@ evict_random_item(struct disk_cache *cache) free(dir_path); if (size) { - p_atomic_add(cache->size, - size); + p_atomic_add(cache->size, - (uint64_t)size); return; } @@ -542,7 +542,7 @@ evict_random_item(struct disk_cache *cache) free(dir_path); if (size) - p_atomic_add(cache->size, - size); + p_atomic_add(cache->size, - (uint64_t)size); } void -- 2.12.2