Quoting Chris Wilson (2019-04-24 11:00:03) > Quoting Tvrtko Ursulin (2019-04-16 15:50:27) > > > > On 16/04/2019 10:12, Chris Wilson wrote: > > > + rq = ERR_PTR(-ENODEV); > > > + with_intel_runtime_pm(engine->i915, wakeref) > > > + rq = i915_request_alloc(engine, ctx); > > > + if (IS_ERR(rq)) > > > + goto err_unpin; > > > + > > > + if (engine->emit_init_breadcrumb) { /* Be nice if we hang */ > > > + err = engine->emit_init_breadcrumb(rq); > > > + if (err) > > > + goto err_request; > > > + } > > > + > > > + err = engine->emit_bb_start(rq, batch->node.start, 0, 0); > > > > Why is batch needed here when everything else is happy to run from the ring? > > Because we are playing with HW registers, I want reset to work safely. > So long as we have init_breadcrumb, the payload scrubbing should work. > Ok. No, I am an idiot. The batch is so that we emulate userspace with unprivileged execution -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx