From 69a686b0ae1916dbaf0d3e06c6eba2b2730ab180 Mon Sep 17 00:00:00 2001 From: Jordan Justen Date: Fri, 20 Jul 2018 23:41:23 -0700 Subject: [PATCH] i965, anv: Add extra unused character in disk_cache renderer temp string This extra character should not be used by snprintf, but we make it available to verify that we printed the exact number we wanted, and didn't overflow. v2: * Also update Anvil Signed-off-by: Jordan Justen Reviewed-by: Lionel Landwerlin --- src/intel/vulkan/anv_device.c | 4 ++-- src/mesa/drivers/dri/i965/brw_disk_cache.c | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c index 04fd6a829ed..247ba641336 100644 --- a/src/intel/vulkan/anv_device.c +++ b/src/intel/vulkan/anv_device.c @@ -278,10 +278,10 @@ static void anv_physical_device_init_disk_cache(struct anv_physical_device *device) { #ifdef ENABLE_SHADER_CACHE - char renderer[9]; + char renderer[10]; MAYBE_UNUSED int len = snprintf(renderer, sizeof(renderer), "anv_%04x", device->chipset_id); - assert(len == sizeof(renderer) - 1); + assert(len == sizeof(renderer) - 2); char timestamp[41]; _mesa_sha1_format(timestamp, device->driver_build_sha1); diff --git a/src/mesa/drivers/dri/i965/brw_disk_cache.c b/src/mesa/drivers/dri/i965/brw_disk_cache.c index c478753d4ad..a678c355b9d 100644 --- a/src/mesa/drivers/dri/i965/brw_disk_cache.c +++ b/src/mesa/drivers/dri/i965/brw_disk_cache.c @@ -377,10 +377,11 @@ void brw_disk_cache_init(struct intel_screen *screen) { #ifdef ENABLE_SHADER_CACHE - char renderer[10]; + /* array length: print length + null char + 1 extra to verify it is unused */ + char renderer[11]; MAYBE_UNUSED int len = snprintf(renderer, sizeof(renderer), "i965_%04x", screen->deviceID); - assert(len == sizeof(renderer) - 1); + assert(len == sizeof(renderer) - 2); const struct build_id_note *note = build_id_find_nhdr_for_addr(brw_disk_cache_init); -- 2.30.2