Three recent blog postings on DRI3000

Maarten Lankhorst maarten.lankhorst at canonical.com
Wed Jul 24 14:23:22 PDT 2013


Op 24-07-13 21:59, Keith Packard schreef:
> Maarten Lankhorst <maarten.lankhorst at canonical.com> writes:
>
>> One of the things that bug me in dri2 is that I have to use the absolute frame number in the swapbuffers call.
>> This breaks when moving a window from 1 screen to another. And for example mesa/src/gallium/auxiliary/vl/vl_winsys_dri.c
>> has to deal with converting time to frame number, which breaks if a window is moved to another crtc. Instead of scheduling
>> frames with absolute frame number, could a system time like CLOCK_MONOTONIC be used instead, and have the kernel
>> drm layer round this to the nearest frame?
> Present creates a per-window MSC domain, which moves with the window as
> it switches screens automatically, so you should be able to at least
> consistently schedule swaps across monitors.
>
> Using CLOCK_MONOTONIC does have a certain appeal though; the trouble
> here is that applications would essentially have to phase-lock the
> system clock with the video clock to avoid occasional glitches.
>
drm_calc_vbltimestamp_from_scanoutpos already uses CLOCK_MONOTONIC
for the timestamps afaict. If you round to the nearest frame I don't see how you could
possibly get glitches.

~Maarten


More information about the xorg-devel mailing list