From: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
To: Chris Wilson <chris@chris-wilson.co.uk>, intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH v2] drm/i915: Include completed status in HW request tracepoints
Date: Tue, 1 May 2018 16:25:12 +0100 [thread overview]
Message-ID: <ea88638d-515c-4d91-906b-6f3e8d1cae25@linux.intel.com> (raw)
In-Reply-To: <20180501145801.23439-1-chris@chris-wilson.co.uk>
On 01/05/2018 15:58, Chris Wilson wrote:
> Include a bool to show whether the request is complete in every
> tracepoint. This especially helps when tracing the flow of requests
> through the HW.
>
> v2: Limit to in/out HW events, not all general request tracepoints.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> ---
> drivers/gpu/drm/i915/i915_trace.h | 17 +++++++++++------
> drivers/gpu/drm/i915/intel_guc_submission.c | 2 +-
> drivers/gpu/drm/i915/intel_lrc.c | 2 +-
> 3 files changed, 13 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_trace.h b/drivers/gpu/drm/i915/i915_trace.h
> index 408827bf5d96..66956af25da3 100644
> --- a/drivers/gpu/drm/i915/i915_trace.h
> +++ b/drivers/gpu/drm/i915/i915_trace.h
> @@ -691,6 +691,8 @@ DECLARE_EVENT_CLASS(i915_request_hw,
> __field(u32, seqno)
> __field(u32, global_seqno)
> __field(u32, port)
> + __field(u32, prio)
> + __field(u32, completed)
> ),
>
> TP_fast_assign(
> @@ -701,12 +703,15 @@ DECLARE_EVENT_CLASS(i915_request_hw,
> __entry->seqno = rq->fence.seqno;
> __entry->global_seqno = rq->global_seqno;
> __entry->port = port;
> + __entry->prio = rq->sched.attr.priority;
> + __entry->completed = i915_request_completed(rq);
> ),
>
> - TP_printk("dev=%u, hw_id=%u, ring=%u, ctx=%u, seqno=%u, global=%u, port=%u",
> + TP_printk("dev=%u, hw_id=%u, ring=%u, ctx=%u, seqno=%u, prio=%u, global=%u, port=%u, completed?=%d",
> __entry->dev, __entry->hw_id, __entry->ring, > - __entry->ctx, __entry->seqno,
> - __entry->global_seqno, __entry->port)
> + __entry->ctx, __entry->seqno, __entry->prio,
> + __entry->global_seqno, __entry->port,
> + __entry->completed)
> );
>
> DEFINE_EVENT(i915_request_hw, i915_request_in,
> @@ -714,9 +719,9 @@ DEFINE_EVENT(i915_request_hw, i915_request_in,
> TP_ARGS(rq, port)
> );
>
> -DEFINE_EVENT(i915_request, i915_request_out,
> - TP_PROTO(struct i915_request *rq),
> - TP_ARGS(rq)
> +DEFINE_EVENT(i915_request_hw, i915_request_out,
> + TP_PROTO(struct i915_request *rq, unsigned int port),
> + TP_ARGS(rq, port)
> );
> #else
> #if !defined(TRACE_HEADER_MULTI_READ)
> diff --git a/drivers/gpu/drm/i915/intel_guc_submission.c b/drivers/gpu/drm/i915/intel_guc_submission.c
> index c6bb5bebddfc..bd440687892a 100644
> --- a/drivers/gpu/drm/i915/intel_guc_submission.c
> +++ b/drivers/gpu/drm/i915/intel_guc_submission.c
> @@ -762,7 +762,7 @@ static void guc_submission_tasklet(unsigned long data)
>
> rq = port_request(port);
> while (rq && i915_request_completed(rq)) {
> - trace_i915_request_out(rq);
> + trace_i915_request_out(rq, 0);
> i915_request_put(rq);
>
> port = execlists_port_complete(execlists, port);
> diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
> index ffc74f562f77..396d9596d0aa 100644
> --- a/drivers/gpu/drm/i915/intel_lrc.c
> +++ b/drivers/gpu/drm/i915/intel_lrc.c
> @@ -402,7 +402,7 @@ execlists_context_schedule_out(struct i915_request *rq, unsigned long status)
> {
> intel_engine_context_out(rq->engine);
> execlists_context_status_change(rq, status);
> - trace_i915_request_out(rq);
> + trace_i915_request_out(rq, 0);
> }
>
> static void
>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Regards,
Tvrtko
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2018-05-01 15:25 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-01 13:41 [PATCH 1/2] drm/i915/execlists: Emit i915_trace_request_out for preemption Chris Wilson
2018-05-01 13:41 ` [PATCH 2/2] drm/i915: Include completed status in request tracepoints Chris Wilson
2018-05-01 14:41 ` Tvrtko Ursulin
2018-05-01 14:46 ` Chris Wilson
2018-05-01 14:58 ` [PATCH v2] drm/i915: Include completed status in HW " Chris Wilson
2018-05-01 15:25 ` Tvrtko Ursulin [this message]
2018-05-01 14:02 ` ✓ Fi.CI.BAT: success for series starting with [1/2] drm/i915/execlists: Emit i915_trace_request_out for preemption Patchwork
2018-05-01 14:37 ` [PATCH 1/2] " Tvrtko Ursulin
2018-05-01 15:05 ` ✓ Fi.CI.IGT: success for series starting with [1/2] " Patchwork
2018-05-01 15:06 ` ✗ Fi.CI.BAT: failure for series starting with [1/2] drm/i915/execlists: Emit i915_trace_request_out for preemption (rev2) Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ea88638d-515c-4d91-906b-6f3e8d1cae25@linux.intel.com \
--to=tvrtko.ursulin@linux.intel.com \
--cc=chris@chris-wilson.co.uk \
--cc=intel-gfx@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.