On Wed, Mar 15, 2017 at 11:06:32PM +0200, Ville Syrjälä wrote: > > @@ -1608,6 +1619,21 @@ int drm_wait_vblank(struct drm_device *dev, void *data, > > > > vblank = &dev->vblank[pipe]; > > > > + /* If the counter is currently enabled and accurate, short-circuit queries > > + * to return the cached timestamp of the last vblank. > > + */ > > + if (dev->vblank_disable_immediate && > > + drm_wait_vblank_is_query(vblwait) && > > + vblank->enabled) { > > Hmm. I'm wondering if this could give us something stale if we're just > about to enable the vblank interrupt. > > We seem to set enabled=true before we update the count/ts. So I'm > thinking we'd need to flip those around and make sure proper barriers > are in place. Yes, that is a valid concern. -Chris -- Chris Wilson, Intel Open Source Technology Centre _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx