[Intel-gfx] [PATCH 1/2] drm/i915: Add GuC support for engine busy stats

Tvrtko Ursulin tvrtko.ursulin at linux.intel.com
Fri Dec 22 09:53:46 UTC 2017


Hi guys,

Anyone has the bandwidth to review the below tiny patch, or suggest some 
else as potential reviewer?

Truth be told I only tested it lightly, but it passed the perf_pmu unit 
tests. Goal is to bring engine busyness PMU reporting accuracy to the 
same level as execlists.

Regards,

Tvrtko

On 29/11/2017 12:33, Tvrtko Ursulin wrote:
> From: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> 
> Wire up the engine busy stats accounting to the GuC submission backend.
> 
> Since there is not context out interrupt we need to place the accounting
> callbacks per-request in order to correctly pair with user interrupts.
> 
> v2: Rebase.
> v3: Commit update.
> 
> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> ---
>   drivers/gpu/drm/i915/intel_guc_submission.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_guc_submission.c b/drivers/gpu/drm/i915/intel_guc_submission.c
> index 912ff143d531..d80d2a3214da 100644
> --- a/drivers/gpu/drm/i915/intel_guc_submission.c
> +++ b/drivers/gpu/drm/i915/intel_guc_submission.c
> @@ -781,6 +781,7 @@ static void guc_dequeue(struct intel_engine_cs *engine)
>   			INIT_LIST_HEAD(&rq->priotree.link);
>   
>   			__i915_gem_request_submit(rq);
> +			intel_engine_context_in(rq->engine);
>   			trace_i915_gem_request_in(rq,
>   						  port_index(port, execlists));
>   			last = rq;
> @@ -813,6 +814,7 @@ static void guc_submission_tasklet(unsigned long data)
>   
>   	rq = port_request(&port[0]);
>   	while (rq && i915_gem_request_completed(rq)) {
> +		intel_engine_context_out(rq->engine);
>   		trace_i915_gem_request_out(rq);
>   		i915_gem_request_put(rq);
>   
> @@ -1453,8 +1455,6 @@ int intel_guc_submission_enable(struct intel_guc *guc)
>   		execlists->tasklet.func = guc_submission_tasklet;
>   		engine->park = guc_submission_park;
>   		engine->unpark = guc_submission_unpark;
> -
> -		engine->flags &= ~I915_ENGINE_SUPPORTS_STATS;
>   	}
>   
>   	return 0;
> 


More information about the Intel-gfx mailing list