[Intel-gfx] [PATCH 5/5] drm/i915: Allow vblank interrupts during modeset and eliminate some vblank races

Daniel Vetter daniel at ffwll.ch
Thu May 29 03:56:00 PDT 2014

On Thu, May 29, 2014 at 6:11 AM, Michel Dänzer <michel at daenzer.net> wrote:
>> We could rename the off/on to pre/post_modeset if you like, but then
>> someone gets to audit all the other drivers. That someone isn't
>> going to be me.
> I appreciate your caution wrt other drivers, but I'm worried that having
> a second mechanism for keeping the DRM vblank counter consistent might
> cause subtle problems for drivers using the existing mechanism anyway.

I think that risk is rather low. Only i915 has been stupid enough to
use both drm_vblank_off + pre/post_modeset in the normal crtc
enable/disable functions. Everyone else uses either or the other,
except for tegra which uses pre/post in the ->prepare/commit hooks and
off in the crtc->disable callback. So should still get consistent
results (since after ->disable vblank consistency stops mattering).

The reason we do all this is that we want to kill the delayed vblank
put for i915, which is possible if you have a hw vblank counter.
There's apparently more stuff wrong here still, so while we wrestle
around probably best to leave other drivers out. I guess once this is
all done I have to roll it out across all drivers so that we have
consistent behaviour again ...
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch

More information about the dri-devel mailing list