summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/amd/vulkan/radv_device.c4
-rw-r--r--src/util/disk_cache.h9
2 files changed, 9 insertions, 4 deletions
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index 5cc5ddb9c07..4ce98098b5c 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -61,10 +61,6 @@ radv_get_build_id(void *ptr, struct mesa_sha1 *ctx)
} else
#endif
if (disk_cache_get_function_timestamp(ptr, &timestamp)) {
- if (!timestamp) {
- fprintf(stderr, "radv: The provided filesystem timestamp for the cache is bogus!\n");
- }
-
_mesa_sha1_update(ctx, &timestamp, sizeof(timestamp));
} else
return false;
diff --git a/src/util/disk_cache.h b/src/util/disk_cache.h
index 50bd9f41ac4..c8685a53ed3 100644
--- a/src/util/disk_cache.h
+++ b/src/util/disk_cache.h
@@ -26,6 +26,7 @@
#ifdef HAVE_DLFCN_H
#include <dlfcn.h>
+#include <stdio.h>
#endif
#include <assert.h>
#include <stdint.h>
@@ -100,7 +101,15 @@ disk_cache_get_function_timestamp(void *ptr, uint32_t* timestamp)
if (stat(info.dli_fname, &st)) {
return false;
}
+
+ if (!st.st_mtime) {
+ fprintf(stderr, "Mesa: The provided filesystem timestamp for the cache "
+ "is bogus! Disabling On-disk cache.\n");
+ return false;
+ }
+
*timestamp = st.st_mtime;
+
return true;
}
#endif