From 25b09d1b5d74a946700f0956799cf00db0edae1a Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Thu, 11 Feb 2016 18:57:37 -0800 Subject: [PATCH] anv/event: Use a 64-bit value The immediate write from PIPE_CONTROL is 64-bits at least on BDW. This used to work on 64-bit archs because the compiler would align the following anv_state struct up for us. However, in 32-bit builds, they overlap and it causes problems. --- src/vulkan/anv_device.c | 2 +- src/vulkan/anv_private.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/vulkan/anv_device.c b/src/vulkan/anv_device.c index 6f874b2d1ab..21184c4a201 100644 --- a/src/vulkan/anv_device.c +++ b/src/vulkan/anv_device.c @@ -1534,7 +1534,7 @@ VkResult anv_CreateEvent( assert(pCreateInfo->sType == VK_STRUCTURE_TYPE_EVENT_CREATE_INFO); state = anv_state_pool_alloc(&device->dynamic_state_pool, - sizeof(*event), 4); + sizeof(*event), 8); event = state.map; event->state = state; event->semaphore = VK_EVENT_RESET; diff --git a/src/vulkan/anv_private.h b/src/vulkan/anv_private.h index 29d3c82b9b9..6da714ad8b2 100644 --- a/src/vulkan/anv_private.h +++ b/src/vulkan/anv_private.h @@ -1306,7 +1306,7 @@ struct anv_fence { }; struct anv_event { - uint32_t semaphore; + uint64_t semaphore; struct anv_state state; }; -- 2.30.2