Quoting Tvrtko Ursulin (2020-07-13 11:19:58) > > On 11/07/2020 21:32, Chris Wilson wrote: > > We do not use the virtual engines for interrupts (they have physical > > components), but we do use them to decouple the fence signaling during > > submission. Currently, when we submit a completed request, we try to > > enable the interrupt handler for the virtual engine, but we never disarm > > it. A quick fix is then to mark the irq as enabled, and it will then > > remain enabled -- and this prevents us from waking the device and never > > letting it sleep again. > > > > Fixes: f8db4d051b5e ("drm/i915: Initialise breadcrumb lists on the virtual > > engine") > > Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> > > Cc: Mika Kuoppala <mika.kuopp...@linux.intel.com> > > Cc: Tvrtko Ursulin <tvrtko.ursu...@intel.com> > > Cc: <sta...@vger.kernel.org> # v5.5+ > > --- > > drivers/gpu/drm/i915/gt/intel_lrc.c | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c > > b/drivers/gpu/drm/i915/gt/intel_lrc.c > > index cd4262cc96e2..504e269bb166 100644 > > --- a/drivers/gpu/drm/i915/gt/intel_lrc.c > > +++ b/drivers/gpu/drm/i915/gt/intel_lrc.c > > @@ -5727,6 +5727,7 @@ intel_execlists_create_virtual(struct intel_engine_cs > > **siblings, > > intel_engine_init_active(&ve->base, ENGINE_VIRTUAL); > > intel_engine_init_breadcrumbs(&ve->base); > > intel_engine_init_execlists(&ve->base); > > + ve->base.breadcrumbs.irq_armed = true; > > Add a comment here saying this is a hack and why please. With that:
"This is a lot simpler than splitting breadcrumbs, although we do need to do that. But that was becoming a very hairy patch." -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx