Message ID | 20190613121802.2193-1-oleg.vasilev@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [1/3] drm: add debug print to update_vblank_count | expand |
On Thu, Jun 13, 2019 at 03:18:00PM +0300, Oleg Vasilev wrote: > Since we are logging all vblank counter updates 30 lines below, > it is also good to have some details whether and how vblank count > difference is calculated. > > Signed-off-by: Oleg Vasilev <oleg.vasilev@intel.com> > --- > drivers/gpu/drm/drm_vblank.c | 10 +++++++--- > 1 file changed, 7 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/drm_vblank.c b/drivers/gpu/drm/drm_vblank.c > index 0d704bddb1a6..603ab105125d 100644 > --- a/drivers/gpu/drm/drm_vblank.c > +++ b/drivers/gpu/drm/drm_vblank.c > @@ -241,12 +241,16 @@ static void drm_update_vblank_count(struct drm_device *dev, unsigned int pipe, > * on the difference in the timestamps and the > * frame/field duration. > */ > + > + DRM_DEBUG_VBL("crtc %u: Calculating number of vblanks." > + " diff_ns = %lld, framedur_ns = %d)\n", > + pipe, (long long) diff_ns, framedur_ns); You can generally extract that info from the timestamps that already get dumped, but I guess that is a bit of a hassle. So might as well print the stuff the kernel already calculated for you. The only downside is that lots of printks from the irq handler bogs the machine down quite a bit. But these shouldn't be used outside of short vbl debugging sessions anyway. Pushed this one to drm-misc-next. Thanks for the patch. > + > diff = DIV_ROUND_CLOSEST_ULL(diff_ns, framedur_ns); > > if (diff == 0 && in_vblank_irq) > - DRM_DEBUG_VBL("crtc %u: Redundant vblirq ignored." > - " diff_ns = %lld, framedur_ns = %d)\n", > - pipe, (long long) diff_ns, framedur_ns); > + DRM_DEBUG_VBL("crtc %u: Redundant vblirq ignored\n", > + pipe); > } else { > /* some kind of default for drivers w/o accurate vbl timestamping */ > diff = in_vblank_irq ? 1 : 0; > -- > 2.21.0 > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel
diff --git a/drivers/gpu/drm/drm_vblank.c b/drivers/gpu/drm/drm_vblank.c index 0d704bddb1a6..603ab105125d 100644 --- a/drivers/gpu/drm/drm_vblank.c +++ b/drivers/gpu/drm/drm_vblank.c @@ -241,12 +241,16 @@ static void drm_update_vblank_count(struct drm_device *dev, unsigned int pipe, * on the difference in the timestamps and the * frame/field duration. */ + + DRM_DEBUG_VBL("crtc %u: Calculating number of vblanks." + " diff_ns = %lld, framedur_ns = %d)\n", + pipe, (long long) diff_ns, framedur_ns); + diff = DIV_ROUND_CLOSEST_ULL(diff_ns, framedur_ns); if (diff == 0 && in_vblank_irq) - DRM_DEBUG_VBL("crtc %u: Redundant vblirq ignored." - " diff_ns = %lld, framedur_ns = %d)\n", - pipe, (long long) diff_ns, framedur_ns); + DRM_DEBUG_VBL("crtc %u: Redundant vblirq ignored\n", + pipe); } else { /* some kind of default for drivers w/o accurate vbl timestamping */ diff = in_vblank_irq ? 1 : 0;
Since we are logging all vblank counter updates 30 lines below, it is also good to have some details whether and how vblank count difference is calculated. Signed-off-by: Oleg Vasilev <oleg.vasilev@intel.com> --- drivers/gpu/drm/drm_vblank.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-)