[Mesa-dev] [PATCH 3/6] radeonsi: use build-id when available for disk cache

Timothy Arceri tarceri at itsqueeze.com
Wed Sep 19 02:13:25 UTC 2018


---
 src/gallium/drivers/radeonsi/si_pipe.c | 21 +++++++++------------
 1 file changed, 9 insertions(+), 12 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_pipe.c b/src/gallium/drivers/radeonsi/si_pipe.c
index 82af9dd1de7..c38b754bf20 100644
--- a/src/gallium/drivers/radeonsi/si_pipe.c
+++ b/src/gallium/drivers/radeonsi/si_pipe.c
@@ -768,17 +768,14 @@ static void si_disk_cache_create(struct si_screen *sscreen)
 	if (sscreen->debug_flags & DBG_ALL_SHADERS)
 		return;
 
-	uint32_t mesa_timestamp;
-	if (disk_cache_get_function_timestamp(si_disk_cache_create,
-					      &mesa_timestamp)) {
-		char *timestamp_str;
+	uint32_t mesa_id;
+	if (disk_cache_get_function_identifier(si_disk_cache_create, &mesa_id)) {
+		char *driver_id_str;
 		int res = -1;
-		uint32_t llvm_timestamp;
-
-		if (disk_cache_get_function_timestamp(LLVMInitializeAMDGPUTargetInfo,
-						      &llvm_timestamp)) {
-			res = asprintf(&timestamp_str, "%u_%u",
-				       mesa_timestamp, llvm_timestamp);
+		uint32_t llvm_id;
+		if (disk_cache_get_function_identifier(LLVMInitializeAMDGPUTargetInfo,
+						       &llvm_id)) {
+			res = asprintf(&driver_id_str, "%u_%u", mesa_id, llvm_id);
 		}
 
 		if (res != -1) {
@@ -799,9 +796,9 @@ static void si_disk_cache_create(struct si_screen *sscreen)
 
 			sscreen->disk_shader_cache =
 				disk_cache_create(sscreen->info.name,
-						  timestamp_str,
+						  driver_id_str,
 						  shader_debug_flags);
-			free(timestamp_str);
+			free(driver_id_str);
 		}
 	}
 }
-- 
2.17.1



More information about the mesa-dev mailing list