[Intel-gfx] [PATCH 2/3] drm/i915/guc: Always enable the breadcrumbs irq
Michał Winiarski
michal.winiarski at intel.com
Tue Oct 24 13:02:15 UTC 2017
On Fri, Oct 20, 2017 at 10:16:47PM +0100, Chris Wilson wrote:
> Quoting Chris Wilson (2017-10-20 22:06:39)
> > The execlists emulation on top of the GuC (used for scheduling and
> > preemption) depends on the MI_USER_INTERRUPT for its notifications and
> > tasklet action. As we always employ the irq, there is no advantage in
> > ever disabling it while we are using the GuC, so allow us to arm the
> > breadcrumb irq when enabling GuC submission and disarm upon disabling.
> > The impact should be lessened by the delayed irq disabling we do (we
> > only disable after receiving an interrupt for which no one was wanting),
> > but allowing guc to explicitly manage the irq in relation to itself is
> > simpler and prevents an issue with losing an interrupt for preemption
> > as it is not coupled to an active request.
> >
> > Internally, we add a reference counter (breadcrumbs.irq_users) as a
> > simple mechanism to allow GuC to keep the breadcrumb irq enabled. It
> > also means that the missed-breadcrumb timer is permanently active.
>
> Scratch that part; the timer is only enabled for waiters.
> -Chris
With additional note that as a consequence, we're basically postponing the
irq_disable until idle_work_handler.
Reviewed-by: Michał Winiarski <michal.winiarski at intel.com>
-Michał
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
More information about the Intel-gfx
mailing list