[Intel-gfx] [CI 4/4] drm/i915/gem: Cancel contexts when hangchecking is disabled

Chris Wilson chris at chris-wilson.co.uk
Wed Oct 23 23:30:49 UTC 2019


Quoting Kumar Valsan, Prathap (2019-10-24 00:26:06)
> On Wed, Oct 23, 2019 at 01:21:51PM +0100, Chris Wilson wrote:
> > +
> > +     /*
> > +      * If the user has disabled hangchecking, we can not be sure that
> > +      * the batches will ever complete after the context is closed,
> > +      * keeping the context and all resources pinned forever. So in this
> > +      * case we opt to forcibly kill off all remaining requests on
> > +      * context close.
> > +      */
> > +     if (!i915_modparams.enable_hangcheck)
> > +             kill_context(ctx);
> 
> Why not killing the context always when a context is closed?

Because we historically have not and so desktop userspace has come to
depend on that behaviour (think one client handing over a framebuffer to
the display server with pending rendering).

> When hang_check is enabled, how would it know the context is closed and
> we should release its resources, unless and untill the context has
> hanged?

Exactly. The contexts persist until complete. The same dos prevention
rules apply to the outstanding work as applied when the context was
open.
-Chris


More information about the Intel-gfx mailing list