diff options
author | Dave Airlie <[email protected]> | 2016-10-13 12:43:07 +1000 |
---|---|---|
committer | Dave Airlie <[email protected]> | 2016-10-14 04:45:11 +1000 |
commit | 8980ac041167fb5a80be76e2f912b96117afa2cf (patch) | |
tree | 58971c0b7e204b8d8c1d87391431bbca14a31f0a | |
parent | 8bdac874e667179bd2682f0111cd7db58b858e5b (diff) |
anv/wsi: fix apps that acquire multiple images up front
This fix was found in the radv codebase when running dota2,
no idea if anyone has reported it on anv, but the same problem
occurs.
Once an image is acquired we need to mark it busy.
Acked-by: Edward O'Callaghan <[email protected]>
Cc: "12.0" <[email protected]>
Signed-off-by: Dave Airlie <[email protected]>
-rw-r--r-- | src/intel/vulkan/anv_wsi_wayland.c | 1 | ||||
-rw-r--r-- | src/intel/vulkan/anv_wsi_x11.c | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/src/intel/vulkan/anv_wsi_wayland.c b/src/intel/vulkan/anv_wsi_wayland.c index afce96f2df4..e6cc09ff216 100644 --- a/src/intel/vulkan/anv_wsi_wayland.c +++ b/src/intel/vulkan/anv_wsi_wayland.c @@ -523,6 +523,7 @@ wsi_wl_swapchain_acquire_next_image(struct anv_swapchain *anv_chain, if (!chain->images[i].busy) { /* We found a non-busy image */ *image_index = i; + chain->images[image_index].busy = true; return VK_SUCCESS; } } diff --git a/src/intel/vulkan/anv_wsi_x11.c b/src/intel/vulkan/anv_wsi_x11.c index 010c86c4f26..57485060322 100644 --- a/src/intel/vulkan/anv_wsi_x11.c +++ b/src/intel/vulkan/anv_wsi_x11.c @@ -574,6 +574,7 @@ x11_acquire_next_image(struct anv_swapchain *anv_chain, /* We found a non-busy image */ xshmfence_await(chain->images[i].shm_fence); *image_index = i; + chain->images[i].busy = true; return VK_SUCCESS; } } |