If the user created a fence with VK_FENCE_CREATE_SIGNALED_BIT set, we
shouldn't fail to wait for a fence if it was not submitted since that is
not necessary.
---
 src/amd/vulkan/radv_device.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index 1894b10..ed72109 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -1111,12 +1111,12 @@ VkResult radv_WaitForFences(
                RADV_FROM_HANDLE(radv_fence, fence, pFences[i]);
                bool expired = false;
 
-               if (!fence->submitted)
-                       return VK_TIMEOUT;
-
                if (fence->signalled)
                        continue;
 
+               if (!fence->submitted)
+                       return VK_TIMEOUT;
+
                expired = device->ws->fence_wait(device->ws, fence->fence, 
true, timeout);
                if (!expired)
                        return VK_TIMEOUT;
-- 
2.10.0

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to