Message ID | 1442502512-9129-1-git-send-email-jbarnes@virtuousgeek.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Thu, Sep 17, 2015 at 08:08:32AM -0700, Jesse Barnes wrote: > Use the new debug info in the intel_crtc struct in these functions > rather than passing them as args. > > v2: move min/max assignment back above first trace call (Ville) > use scanline from crtc->debug rather than fetching a new one (Ville) > v3: fix up trace_i915_pipe_update_end, needs end scanline (Ville) > > Requested-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > drivers/gpu/drm/i915/i915_trace.h | 26 +++++++++++++------------- > drivers/gpu/drm/i915/intel_sprite.c | 11 +++++------ > 2 files changed, 18 insertions(+), 19 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_trace.h b/drivers/gpu/drm/i915/i915_trace.h > index e6b5c74..d0993bc 100644 > --- a/drivers/gpu/drm/i915/i915_trace.h > +++ b/drivers/gpu/drm/i915/i915_trace.h > @@ -17,8 +17,8 @@ > /* pipe updates */ > > TRACE_EVENT(i915_pipe_update_start, > - TP_PROTO(struct intel_crtc *crtc, u32 min, u32 max), > - TP_ARGS(crtc, min, max), > + TP_PROTO(struct intel_crtc *crtc), > + TP_ARGS(crtc), > > TP_STRUCT__entry( > __field(enum pipe, pipe) > @@ -33,8 +33,8 @@ TRACE_EVENT(i915_pipe_update_start, > __entry->frame = crtc->base.dev->driver->get_vblank_counter(crtc->base.dev, > crtc->pipe); > __entry->scanline = intel_get_crtc_scanline(crtc); > - __entry->min = min; > - __entry->max = max; > + __entry->min = crtc->debug.min_vbl; > + __entry->max = crtc->debug.max_vbl; > ), > > TP_printk("pipe %c, frame=%u, scanline=%u, min=%u, max=%u", > @@ -43,8 +43,8 @@ TRACE_EVENT(i915_pipe_update_start, > ); > > TRACE_EVENT(i915_pipe_update_vblank_evaded, > - TP_PROTO(struct intel_crtc *crtc, u32 min, u32 max, u32 frame), > - TP_ARGS(crtc, min, max, frame), > + TP_PROTO(struct intel_crtc *crtc), > + TP_ARGS(crtc), > > TP_STRUCT__entry( > __field(enum pipe, pipe) > @@ -56,10 +56,10 @@ TRACE_EVENT(i915_pipe_update_vblank_evaded, > > TP_fast_assign( > __entry->pipe = crtc->pipe; > - __entry->frame = frame; > - __entry->scanline = intel_get_crtc_scanline(crtc); > - __entry->min = min; > - __entry->max = max; > + __entry->frame = crtc->debug.start_vbl_count; > + __entry->scanline = crtc->debug.scanline_start; > + __entry->min = crtc->debug.min_vbl; > + __entry->max = crtc->debug.max_vbl; > ), > > TP_printk("pipe %c, frame=%u, scanline=%u, min=%u, max=%u", > @@ -68,8 +68,8 @@ TRACE_EVENT(i915_pipe_update_vblank_evaded, > ); > > TRACE_EVENT(i915_pipe_update_end, > - TP_PROTO(struct intel_crtc *crtc, u32 frame), > - TP_ARGS(crtc, frame), > + TP_PROTO(struct intel_crtc *crtc, u32 frame, int scanline_end), > + TP_ARGS(crtc, frame, scanline_end), > > TP_STRUCT__entry( > __field(enum pipe, pipe) > @@ -80,7 +80,7 @@ TRACE_EVENT(i915_pipe_update_end, > TP_fast_assign( > __entry->pipe = crtc->pipe; > __entry->frame = frame; > - __entry->scanline = intel_get_crtc_scanline(crtc); > + __entry->scanline = scanline_end; > ), > > TP_printk("pipe %c, frame=%u, scanline=%u", > diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c > index 7de121d..79f7cc2 100644 > --- a/drivers/gpu/drm/i915/intel_sprite.c > +++ b/drivers/gpu/drm/i915/intel_sprite.c > @@ -102,7 +102,9 @@ void intel_pipe_update_start(struct intel_crtc *crtc) > if (WARN_ON(drm_crtc_vblank_get(&crtc->base))) > return; > > - trace_i915_pipe_update_start(crtc, min, max); > + crtc->debug.min_vbl = min; > + crtc->debug.max_vbl = max; > + trace_i915_pipe_update_start(crtc); > > for (;;) { > /* > @@ -133,15 +135,12 @@ void intel_pipe_update_start(struct intel_crtc *crtc) > > drm_crtc_vblank_put(&crtc->base); > > - crtc->debug.min_vbl = min; > - crtc->debug.max_vbl = max; > crtc->debug.scanline_start = scanline; > crtc->debug.start_vbl_time = ktime_get(); > crtc->debug.start_vbl_count = > dev->driver->get_vblank_counter(dev, pipe); > > - trace_i915_pipe_update_vblank_evaded(crtc, min, max, > - crtc->debug.start_vbl_count); > + trace_i915_pipe_update_vblank_evaded(crtc); > } > > /** > @@ -161,7 +160,7 @@ void intel_pipe_update_end(struct intel_crtc *crtc) > u32 end_vbl_count = dev->driver->get_vblank_counter(dev, pipe); > ktime_t end_vbl_time = ktime_get(); > > - trace_i915_pipe_update_end(crtc, end_vbl_count); > + trace_i915_pipe_update_end(crtc, end_vbl_count, scanline_end); > > local_irq_enable(); > > -- > 1.9.1 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
On Fri, 18 Sep 2015, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote: > On Thu, Sep 17, 2015 at 08:08:32AM -0700, Jesse Barnes wrote: >> Use the new debug info in the intel_crtc struct in these functions >> rather than passing them as args. >> >> v2: move min/max assignment back above first trace call (Ville) >> use scanline from crtc->debug rather than fetching a new one (Ville) >> v3: fix up trace_i915_pipe_update_end, needs end scanline (Ville) >> >> Requested-by: Ville Syrjälä <ville.syrjala@linux.intel.com> >> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org> > > Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Both pushed to drm-intel-next-queued, thanks for the patches and review. BR, Jani. > >> --- >> drivers/gpu/drm/i915/i915_trace.h | 26 +++++++++++++------------- >> drivers/gpu/drm/i915/intel_sprite.c | 11 +++++------ >> 2 files changed, 18 insertions(+), 19 deletions(-) >> >> diff --git a/drivers/gpu/drm/i915/i915_trace.h b/drivers/gpu/drm/i915/i915_trace.h >> index e6b5c74..d0993bc 100644 >> --- a/drivers/gpu/drm/i915/i915_trace.h >> +++ b/drivers/gpu/drm/i915/i915_trace.h >> @@ -17,8 +17,8 @@ >> /* pipe updates */ >> >> TRACE_EVENT(i915_pipe_update_start, >> - TP_PROTO(struct intel_crtc *crtc, u32 min, u32 max), >> - TP_ARGS(crtc, min, max), >> + TP_PROTO(struct intel_crtc *crtc), >> + TP_ARGS(crtc), >> >> TP_STRUCT__entry( >> __field(enum pipe, pipe) >> @@ -33,8 +33,8 @@ TRACE_EVENT(i915_pipe_update_start, >> __entry->frame = crtc->base.dev->driver->get_vblank_counter(crtc->base.dev, >> crtc->pipe); >> __entry->scanline = intel_get_crtc_scanline(crtc); >> - __entry->min = min; >> - __entry->max = max; >> + __entry->min = crtc->debug.min_vbl; >> + __entry->max = crtc->debug.max_vbl; >> ), >> >> TP_printk("pipe %c, frame=%u, scanline=%u, min=%u, max=%u", >> @@ -43,8 +43,8 @@ TRACE_EVENT(i915_pipe_update_start, >> ); >> >> TRACE_EVENT(i915_pipe_update_vblank_evaded, >> - TP_PROTO(struct intel_crtc *crtc, u32 min, u32 max, u32 frame), >> - TP_ARGS(crtc, min, max, frame), >> + TP_PROTO(struct intel_crtc *crtc), >> + TP_ARGS(crtc), >> >> TP_STRUCT__entry( >> __field(enum pipe, pipe) >> @@ -56,10 +56,10 @@ TRACE_EVENT(i915_pipe_update_vblank_evaded, >> >> TP_fast_assign( >> __entry->pipe = crtc->pipe; >> - __entry->frame = frame; >> - __entry->scanline = intel_get_crtc_scanline(crtc); >> - __entry->min = min; >> - __entry->max = max; >> + __entry->frame = crtc->debug.start_vbl_count; >> + __entry->scanline = crtc->debug.scanline_start; >> + __entry->min = crtc->debug.min_vbl; >> + __entry->max = crtc->debug.max_vbl; >> ), >> >> TP_printk("pipe %c, frame=%u, scanline=%u, min=%u, max=%u", >> @@ -68,8 +68,8 @@ TRACE_EVENT(i915_pipe_update_vblank_evaded, >> ); >> >> TRACE_EVENT(i915_pipe_update_end, >> - TP_PROTO(struct intel_crtc *crtc, u32 frame), >> - TP_ARGS(crtc, frame), >> + TP_PROTO(struct intel_crtc *crtc, u32 frame, int scanline_end), >> + TP_ARGS(crtc, frame, scanline_end), >> >> TP_STRUCT__entry( >> __field(enum pipe, pipe) >> @@ -80,7 +80,7 @@ TRACE_EVENT(i915_pipe_update_end, >> TP_fast_assign( >> __entry->pipe = crtc->pipe; >> __entry->frame = frame; >> - __entry->scanline = intel_get_crtc_scanline(crtc); >> + __entry->scanline = scanline_end; >> ), >> >> TP_printk("pipe %c, frame=%u, scanline=%u", >> diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c >> index 7de121d..79f7cc2 100644 >> --- a/drivers/gpu/drm/i915/intel_sprite.c >> +++ b/drivers/gpu/drm/i915/intel_sprite.c >> @@ -102,7 +102,9 @@ void intel_pipe_update_start(struct intel_crtc *crtc) >> if (WARN_ON(drm_crtc_vblank_get(&crtc->base))) >> return; >> >> - trace_i915_pipe_update_start(crtc, min, max); >> + crtc->debug.min_vbl = min; >> + crtc->debug.max_vbl = max; >> + trace_i915_pipe_update_start(crtc); >> >> for (;;) { >> /* >> @@ -133,15 +135,12 @@ void intel_pipe_update_start(struct intel_crtc *crtc) >> >> drm_crtc_vblank_put(&crtc->base); >> >> - crtc->debug.min_vbl = min; >> - crtc->debug.max_vbl = max; >> crtc->debug.scanline_start = scanline; >> crtc->debug.start_vbl_time = ktime_get(); >> crtc->debug.start_vbl_count = >> dev->driver->get_vblank_counter(dev, pipe); >> >> - trace_i915_pipe_update_vblank_evaded(crtc, min, max, >> - crtc->debug.start_vbl_count); >> + trace_i915_pipe_update_vblank_evaded(crtc); >> } >> >> /** >> @@ -161,7 +160,7 @@ void intel_pipe_update_end(struct intel_crtc *crtc) >> u32 end_vbl_count = dev->driver->get_vblank_counter(dev, pipe); >> ktime_t end_vbl_time = ktime_get(); >> >> - trace_i915_pipe_update_end(crtc, end_vbl_count); >> + trace_i915_pipe_update_end(crtc, end_vbl_count, scanline_end); >> >> local_irq_enable(); >> >> -- >> 1.9.1 >> >> _______________________________________________ >> Intel-gfx mailing list >> Intel-gfx@lists.freedesktop.org >> http://lists.freedesktop.org/mailman/listinfo/intel-gfx > > -- > Ville Syrjälä > Intel OTC > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
diff --git a/drivers/gpu/drm/i915/i915_trace.h b/drivers/gpu/drm/i915/i915_trace.h index e6b5c74..d0993bc 100644 --- a/drivers/gpu/drm/i915/i915_trace.h +++ b/drivers/gpu/drm/i915/i915_trace.h @@ -17,8 +17,8 @@ /* pipe updates */ TRACE_EVENT(i915_pipe_update_start, - TP_PROTO(struct intel_crtc *crtc, u32 min, u32 max), - TP_ARGS(crtc, min, max), + TP_PROTO(struct intel_crtc *crtc), + TP_ARGS(crtc), TP_STRUCT__entry( __field(enum pipe, pipe) @@ -33,8 +33,8 @@ TRACE_EVENT(i915_pipe_update_start, __entry->frame = crtc->base.dev->driver->get_vblank_counter(crtc->base.dev, crtc->pipe); __entry->scanline = intel_get_crtc_scanline(crtc); - __entry->min = min; - __entry->max = max; + __entry->min = crtc->debug.min_vbl; + __entry->max = crtc->debug.max_vbl; ), TP_printk("pipe %c, frame=%u, scanline=%u, min=%u, max=%u", @@ -43,8 +43,8 @@ TRACE_EVENT(i915_pipe_update_start, ); TRACE_EVENT(i915_pipe_update_vblank_evaded, - TP_PROTO(struct intel_crtc *crtc, u32 min, u32 max, u32 frame), - TP_ARGS(crtc, min, max, frame), + TP_PROTO(struct intel_crtc *crtc), + TP_ARGS(crtc), TP_STRUCT__entry( __field(enum pipe, pipe) @@ -56,10 +56,10 @@ TRACE_EVENT(i915_pipe_update_vblank_evaded, TP_fast_assign( __entry->pipe = crtc->pipe; - __entry->frame = frame; - __entry->scanline = intel_get_crtc_scanline(crtc); - __entry->min = min; - __entry->max = max; + __entry->frame = crtc->debug.start_vbl_count; + __entry->scanline = crtc->debug.scanline_start; + __entry->min = crtc->debug.min_vbl; + __entry->max = crtc->debug.max_vbl; ), TP_printk("pipe %c, frame=%u, scanline=%u, min=%u, max=%u", @@ -68,8 +68,8 @@ TRACE_EVENT(i915_pipe_update_vblank_evaded, ); TRACE_EVENT(i915_pipe_update_end, - TP_PROTO(struct intel_crtc *crtc, u32 frame), - TP_ARGS(crtc, frame), + TP_PROTO(struct intel_crtc *crtc, u32 frame, int scanline_end), + TP_ARGS(crtc, frame, scanline_end), TP_STRUCT__entry( __field(enum pipe, pipe) @@ -80,7 +80,7 @@ TRACE_EVENT(i915_pipe_update_end, TP_fast_assign( __entry->pipe = crtc->pipe; __entry->frame = frame; - __entry->scanline = intel_get_crtc_scanline(crtc); + __entry->scanline = scanline_end; ), TP_printk("pipe %c, frame=%u, scanline=%u", diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c index 7de121d..79f7cc2 100644 --- a/drivers/gpu/drm/i915/intel_sprite.c +++ b/drivers/gpu/drm/i915/intel_sprite.c @@ -102,7 +102,9 @@ void intel_pipe_update_start(struct intel_crtc *crtc) if (WARN_ON(drm_crtc_vblank_get(&crtc->base))) return; - trace_i915_pipe_update_start(crtc, min, max); + crtc->debug.min_vbl = min; + crtc->debug.max_vbl = max; + trace_i915_pipe_update_start(crtc); for (;;) { /* @@ -133,15 +135,12 @@ void intel_pipe_update_start(struct intel_crtc *crtc) drm_crtc_vblank_put(&crtc->base); - crtc->debug.min_vbl = min; - crtc->debug.max_vbl = max; crtc->debug.scanline_start = scanline; crtc->debug.start_vbl_time = ktime_get(); crtc->debug.start_vbl_count = dev->driver->get_vblank_counter(dev, pipe); - trace_i915_pipe_update_vblank_evaded(crtc, min, max, - crtc->debug.start_vbl_count); + trace_i915_pipe_update_vblank_evaded(crtc); } /** @@ -161,7 +160,7 @@ void intel_pipe_update_end(struct intel_crtc *crtc) u32 end_vbl_count = dev->driver->get_vblank_counter(dev, pipe); ktime_t end_vbl_time = ktime_get(); - trace_i915_pipe_update_end(crtc, end_vbl_count); + trace_i915_pipe_update_end(crtc, end_vbl_count, scanline_end); local_irq_enable();
Use the new debug info in the intel_crtc struct in these functions rather than passing them as args. v2: move min/max assignment back above first trace call (Ville) use scanline from crtc->debug rather than fetching a new one (Ville) v3: fix up trace_i915_pipe_update_end, needs end scanline (Ville) Requested-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org> --- drivers/gpu/drm/i915/i915_trace.h | 26 +++++++++++++------------- drivers/gpu/drm/i915/intel_sprite.c | 11 +++++------ 2 files changed, 18 insertions(+), 19 deletions(-)