[Intel-gfx] [PATCH 04/10] drm/i915/guc: Add a second client, to be used for preemption
Michał Winiarski
michal.winiarski at intel.com
Thu Oct 5 16:00:36 UTC 2017
On Thu, Oct 05, 2017 at 03:22:59PM +0000, Daniele Ceraolo Spurio wrote:
>
>
> On 05/10/17 02:13, Michał Winiarski wrote:
> > From: Dave Gordon <david.s.gordon at intel.com>
> >
> > This second client is created with priority KMD_HIGH, and marked
> > as preemptive. This will allow us to request preemption using GuC actions.
> >
> > Cc: Chris Wilson <chris at chris-wilson.co.uk>
> > Cc: Jeff Mcgee <jeff.mcgee at intel.com>
> > Cc: Michal Wajdeczko <michal.wajdeczko at intel.com>
> > Cc: Oscar Mateo <oscar.mateo at intel.com>
> > Signed-off-by: Dave Gordon <david.s.gordon at intel.com>
> > Signed-off-by: Michał Winiarski <michal.winiarski at intel.com>
> > ---
> > drivers/gpu/drm/i915/i915_debugfs.c | 4 ++++
> > drivers/gpu/drm/i915/i915_guc_submission.c | 32 ++++++++++++++++++++++++++----
> > drivers/gpu/drm/i915/intel_uc.h | 1 +
> > 3 files changed, 33 insertions(+), 4 deletions(-)
[SNIP]
> > diff --git a/drivers/gpu/drm/i915/intel_uc.h b/drivers/gpu/drm/i915/intel_uc.h
> > index 10e8f0ed02e4..c6c6f8513bbf 100644
> > --- a/drivers/gpu/drm/i915/intel_uc.h
> > +++ b/drivers/gpu/drm/i915/intel_uc.h
> > @@ -107,6 +107,7 @@ struct intel_guc {
> > struct ida stage_ids;
> > struct i915_guc_client *execbuf_client;
> > + struct i915_guc_client *preempt_client;
> > DECLARE_BITMAP(doorbell_bitmap, GUC_NUM_DOORBELLS);
> > uint32_t db_cacheline; /* Cyclic counter mod pagesize */
> >
>
>
> I think you also need to update guc_init_doorbell_hw() to handle the new
> client. The comment in there says:
>
> /* Now for every client (and not only execbuf_client) make sure their
> * doorbells are known by the GuC */
But I don't want the doorbell for preempt_client...
I'm not submitting anything 'directly' using this client (just indirectly -
through preempt action).
Are you sure we need the doorbell?
Last time I tried to refactor GuC submission to use doorbell per engine, I got
the info that I should *avoid* allocating multiple doorbells.
-Michał
>
> Daniele
More information about the Intel-gfx
mailing list