[PATCH 1/3] drm: Send pending vblank events before disabling vblank.

Jesse Barnes jbarnes at virtuousgeek.org
Thu Apr 28 13:42:26 PDT 2011

On Wed, 27 Apr 2011 10:32:36 +0200
Michel Dänzer <michel at daenzer.net> wrote:

> On Mit, 2011-04-27 at 16:10 +1000, christopher.halse.rogers at canonical.com wrote:
> > From: Christopher James Halse Rogers <christopher.halse.rogers at canonical.com>
> > 
> > This is the least-bad behaviour.  It means that we signal the
> > vblank event before it actually happens, but since we're disabling
> > vblanks there's no guarantee that it will *ever* happen otherwise.
> This may indeed be the best we can do for events that are pending when
> the CRTC is disabled[0], but I can't see anything that would prevent new
> events from getting scheduled (or synchronous vblank waits from timing
> out) while the CRTC is disabled?
> [0] Though it might unnecessarily send events prematurely when the CRTC
> is just disabled temporarily, e.g. as part of a modeset.

We should return -EINVAL in that case from drm_wait_vblank due to
drm_vblank_get failing (i.e. the driver enable_vblank hook should fail
if the corresponding crtc is off).  At least that's how it's supposed
to work.

Jesse Barnes, Intel Open Source Technology Center

More information about the dri-devel mailing list