Passing an existing valid swapchain to the
oldSwapchain parameter of
VkSwapchainCreateInfoKHR causes a timeout with
Here is an example self contained program. Resizing the surface is the most common case of needing to recreate the swapchain, so resizing triggers the swapchain resize in this example. Comment out the linked line and the program works perfectly fine with Linux. Compiling and running the same program listed here on Windows works fine without commenting this line.
From outside observation it looks like internally the driver uses the remaining swapchain images in the previous swapchain before switching to the newly created one. However, it doesn’t seem to actually switch to the new swapchain and therefore times out acquiring the next swapchain image for the new swapchain. I guess this is the case because it acquires a couple more swapchain images before it hits the timeout.
nvidia-bug-report.log.gz (409.2 KB)