[PATCH 1/3] drm: Send pending vblank events before disabling vblank.
michel at daenzer.net
Wed Apr 27 01:32:36 PDT 2011
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, 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?
 Though it might unnecessarily send events prematurely when the CRTC
is just disabled temporarily, e.g. as part of a modeset.
Also, this patch won't seem to help at all for other drivers which don't
call drm_vblank_off() directly when disabling a CRTC.
Maybe it would be possible to move those calls to core code, and/or only
force sending out events when the CRTC isn't just getting disabled
Earthling Michel Dänzer | http://www.vmware.com
Libre software enthusiast | Debian, X and DRI developer
More information about the dri-devel