[PATCH v4] winevulkan: Implement VK_EXT_calibrated_timestamps

Joshua Ashton joshua at froggi.es
Wed Jul 22 00:31:58 CDT 2020


CLOCK_MONOTONIC_RAW has been around since Linux 2.6.28 and is simply just
CLOCK_MONOTONIC without NTP adjustments.

There are no Vulkan drivers for 2009-era kernels so this is a non-issue.

 - Josh 🐸

On Tue, 21 Jul 2020 at 19:24, Alexandre Julliard <julliard at winehq.org>
wrote:

> Joshua Ashton <joshua at froggi.es> writes:
>
> > @@ -1265,6 +1267,150 @@ VkResult WINAPI
> wine_vkGetPhysicalDeviceImageFormatProperties2KHR(VkPhysicalDevi
> >      return res;
> >  }
> >
> > +/* From ntdll/unix/sync.c */
> > +#define NANOSECONDS_IN_A_SECOND 1000000000
> > +#define TICKSPERSEC             10000000
> > +
> > +static inline VkTimeDomainEXT get_performance_counter_time_domain(void)
> > +{
> > +#if !defined(__APPLE__) && defined(HAVE_CLOCK_GETTIME)
> > +# ifdef CLOCK_MONOTONIC_RAW
> > +    return VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT;
> > +# else
> > +    return VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT;
> > +# endif
> > +#else
> > +    FIXME("No mapping for VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT
> on this platform.");
> > +    return VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT;
> > +#endif
> > +}
>
> Do we really need to second-guess what QueryPerformanceCounter() is
> using internally?  If so, use of CLOCK_MONOTONIC_RAW is detected at
> run-time so #ifdefs are not sufficient.
>
> --
> Alexandre Julliard
> julliard at winehq.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.winehq.org/pipermail/wine-devel/attachments/20200722/c07adf7a/attachment.htm>


More information about the wine-devel mailing list