Quoting Mika Kuoppala (2017-09-12 09:36:18) > @@ -1351,12 +1363,16 @@ static void reset_common_ring(struct intel_engine_cs *engine, > return; > } > > - if (request->ctx != port_request(port)->ctx) { > - i915_gem_request_put(port_request(port)); > - execlist_port_complete(el, port); > - } > + if (execlist_active_ports(el)) { > + struct execlist_port *port = execlist_port_head(el); > > - GEM_BUG_ON(request->ctx != port_request(port)->ctx); This needs a FIXME at least. For starters we need to drop requests until the ctx match (i.e. while (rq->ctx != port_request(port)->ctx)) and then we have the issue that we may have the same ctx multiple times in an N slot elsp. So while (rq->ctx != port_rquest(port)->ctx || i915_gem_request_completed(port_request(port))) ? -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx