summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/video_core/renderer_vulkan/vk_master_semaphore.cpp11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/video_core/renderer_vulkan/vk_master_semaphore.cpp b/src/video_core/renderer_vulkan/vk_master_semaphore.cpp
index 8b65aeaeb..b128c4f6e 100644
--- a/src/video_core/renderer_vulkan/vk_master_semaphore.cpp
+++ b/src/video_core/renderer_vulkan/vk_master_semaphore.cpp
@@ -128,15 +128,12 @@ VkResult MasterSemaphore::SubmitQueueTimeline(vk::CommandBuffer& cmdbuf,
128 const std::array signal_values{host_tick, u64(0)}; 128 const std::array signal_values{host_tick, u64(0)};
129 const std::array signal_semaphores{timeline_semaphore, signal_semaphore}; 129 const std::array signal_semaphores{timeline_semaphore, signal_semaphore};
130 130
131 const u32 num_wait_semaphores = wait_semaphore ? 2 : 1; 131 const u32 num_wait_semaphores = wait_semaphore ? 1 : 0;
132 const std::array wait_values{host_tick - 1, u64(1)};
133 const std::array wait_semaphores{timeline_semaphore, wait_semaphore};
134
135 const VkTimelineSemaphoreSubmitInfo timeline_si{ 132 const VkTimelineSemaphoreSubmitInfo timeline_si{
136 .sType = VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO, 133 .sType = VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO,
137 .pNext = nullptr, 134 .pNext = nullptr,
138 .waitSemaphoreValueCount = num_wait_semaphores, 135 .waitSemaphoreValueCount = 0,
139 .pWaitSemaphoreValues = wait_values.data(), 136 .pWaitSemaphoreValues = nullptr,
140 .signalSemaphoreValueCount = num_signal_semaphores, 137 .signalSemaphoreValueCount = num_signal_semaphores,
141 .pSignalSemaphoreValues = signal_values.data(), 138 .pSignalSemaphoreValues = signal_values.data(),
142 }; 139 };
@@ -144,7 +141,7 @@ VkResult MasterSemaphore::SubmitQueueTimeline(vk::CommandBuffer& cmdbuf,
144 .sType = VK_STRUCTURE_TYPE_SUBMIT_INFO, 141 .sType = VK_STRUCTURE_TYPE_SUBMIT_INFO,
145 .pNext = &timeline_si, 142 .pNext = &timeline_si,
146 .waitSemaphoreCount = num_wait_semaphores, 143 .waitSemaphoreCount = num_wait_semaphores,
147 .pWaitSemaphores = wait_semaphores.data(), 144 .pWaitSemaphores = &wait_semaphore,
148 .pWaitDstStageMask = wait_stage_masks.data(), 145 .pWaitDstStageMask = wait_stage_masks.data(),
149 .commandBufferCount = 1, 146 .commandBufferCount = 1,
150 .pCommandBuffers = cmdbuf.address(), 147 .pCommandBuffers = cmdbuf.address(),