[Intel-gfx] [PATCH] drm/i915/gt: Ignore irq enabling on the virtual engines
Tvrtko Ursulin
tvrtko.ursulin at linux.intel.com
Mon Jul 13 10:19:58 UTC 2020
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 <chris at chris-wilson.co.uk>
> Cc: Mika Kuoppala <mika.kuoppala at linux.intel.com>
> Cc: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> Cc: <stable at 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:
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
Regards,
Tvrtko
>
> ve->base.cops = &virtual_context_ops;
> ve->base.request_alloc = execlists_request_alloc;
>
More information about the Intel-gfx
mailing list