On Tue Jan 13 15:20:36 2026 +0000, Rémi Bernon wrote:
If system is suspended / resumed right between these two calls the bias gets completely off. I don't think we can make any cross-clock measurement reliable in user space, we need to use a consistent clock source across every measurement and this means Vulkan will need to have BOOTTIME clock source if we want to use BOOTTIME clock source for QPC. Note as well that this here doesn't prevent other processes from executing and reading stale bias values from USD after system is resumed, which would end up with stale Vulkan timestamp values while calling QPC would return already updated timestamps.
If we really want to implement this in user space we will have to implement system suspend / resume hooks to make sure wineserver executes first and update these USD data, before any other Wine process resumes and executes, which seems tricky if not straight impossible depending on the platforms. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9875#note_126694