wsi/x11: Create a present queue for VK_PRESENT_MODE_FIFO_RELAXED_KHR
This activates the target_msc computation that we'd otherwise be using
if we were just FIFO; otherwise we'd always set target_msc = 0 and it'd
act like IMMEDIATE.
Fixes: 77d2562793
"wsi/x11: Hook up VK_PRESENT_MODE_FIFO_RELAXED_KHR"
Fixes: mesa/mesa#3512
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6804>
This commit is contained in:
@@ -1606,6 +1606,7 @@ x11_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
|
||||
}
|
||||
|
||||
if ((chain->base.present_mode == VK_PRESENT_MODE_FIFO_KHR ||
|
||||
chain->base.present_mode == VK_PRESENT_MODE_FIFO_RELAXED_KHR ||
|
||||
chain->base.present_mode == VK_PRESENT_MODE_MAILBOX_KHR) && !chain->base.wsi->sw) {
|
||||
chain->has_present_queue = true;
|
||||
|
||||
@@ -1619,7 +1620,8 @@ x11_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
|
||||
goto fail_init_images;
|
||||
}
|
||||
|
||||
if (chain->base.present_mode == VK_PRESENT_MODE_FIFO_KHR) {
|
||||
if (chain->base.present_mode == VK_PRESENT_MODE_FIFO_KHR ||
|
||||
chain->base.present_mode == VK_PRESENT_MODE_FIFO_RELAXED_KHR) {
|
||||
chain->has_acquire_queue = true;
|
||||
|
||||
ret = wsi_queue_init(&chain->acquire_queue, chain->base.image_count + 1);
|
||||
|
Reference in New Issue
Block a user