[PATCH] drm: Don't zero vblank timestamps from the irq handler

Daniel Vetter daniel at ffwll.ch
Thu Oct 1 00:50:16 PDT 2015


On Thu, Oct 01, 2015 at 09:27:20AM +0200, Thierry Reding wrote:
> On Wed, Sep 30, 2015 at 07:21:34PM +0300, ville.syrjala at linux.intel.com wrote:
> > From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> > 
> > If we couldn't get a high precisions vblank timestamp, we currently
> > store a zeroed timestamp instead and assume the next vblank irq to
> > get us something better. This makes sense when trying to update the
> > timestamp from eg. vblank enable. But if we do this from the vblank
> > irq we will never get a vblank timestamp unless we high precision
> > timestamps are available and succeeded. This break weston for instance
> > on drivers lacking high precision timestamps.
> > 
> > To fix this, zero the timestamp only when not called from vbl irq.
> > When called from the irq, we still want the timestamp, even if not
> > perfect.
> > 
> > This fixes a regression from
> > 4dfd64862ff852df drm: Use vblank timestamps to guesstimate how many vblanks were missed
> > 
> > Cc: Mario Kleiner <mario.kleiner.de at gmail.com>
> > Cc: Thierry Reding <thierry.reding at gmail.com>
> > Reported-by: Thierry Reding <thierry.reding at gmail.com>
> > Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> > ---
> >  drivers/gpu/drm/drm_irq.c | 7 ++++---
> >  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> Applied on top of next-20151001 and the weston problem I was seeing is
> gone, so:
> 
> Tested-by: Thierry Reding <treding at nvidia.com>
> 
> I think it might be worth considering squashing this into the offending
> commit to avoid breaking bisectibility.

Can't squash any more since history is frozen in drm-next. Applied to
drm-misc, thanks.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the dri-devel mailing list