[Intel-gfx] [PATCH v8 10/13] drm/i915: add infrastructure to hold off preemption on a request

Chris Wilson chris at chris-wilson.co.uk
Tue Jul 9 14:18:47 UTC 2019


Quoting Lionel Landwerlin (2019-07-09 13:33:48)
> We want to set this flag in the next commit on requests containing
> perf queries so that the result of the perf query can just be a delta
> of global counters, rather than doing post processing of the OA
> buffer.
> 
> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
> ---
>  drivers/gpu/drm/i915/gt/intel_lrc.c         |  7 ++++++-
>  drivers/gpu/drm/i915/i915_priolist_types.h  |  7 +++++++
>  drivers/gpu/drm/i915/i915_request.c         |  4 ++--
>  drivers/gpu/drm/i915/i915_request.h         | 14 +++++++++++++-
>  drivers/gpu/drm/i915/intel_guc_submission.c | 10 +++++++++-
>  drivers/gpu/drm/i915/intel_pm.c             |  5 +++--
>  6 files changed, 40 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c
> index 30782af8f4bc..6c35d33f9647 100644
> --- a/drivers/gpu/drm/i915/gt/intel_lrc.c
> +++ b/drivers/gpu/drm/i915/gt/intel_lrc.c
> @@ -256,7 +256,12 @@ static inline int rq_prio(const struct i915_request *rq)
>  
>  static int effective_prio(const struct i915_request *rq)
>  {
> -       int prio = rq_prio(rq);
> +       int prio;
> +
> +       if (i915_request_has_perf(rq))
> +               prio = I915_USER_PRIORITY(I915_PRIORITY_PERF);

Ok, I may just sneak in a change here to embed the I915_USER_PRIORITY()
into the I915_PRIORITY_FOO itself so that it looks distinct from the set
of user priorities.

Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>

I'll work up a selftest and chase up some review for that. Thanks,
-Chris


More information about the Intel-gfx mailing list