[Intel-gfx] [PATCH] drm/i915: Do not end i915 batch buffers prematurely

Summers, Stuart stuart.summers at intel.com
Fri Oct 18 14:35:58 UTC 2019


On Thu, 2019-10-17 at 14:42 -0700, Daniele Ceraolo Spurio wrote:
> 
> On 10/17/19 12:37 PM, Stuart Summers wrote:
> > During engine initialization in i915 load, the batch buffers
> > being used to set up the initial context are being prematurely
> > ended. In most scenarios, this does not cause a problem, but
> 
> That's not a batch that we add the BBEND to, that's the context
> itself.

True.

> 
> > in the rare event the engine expects the context to be added
> > without an explicit MI_BATCH_BUFFER_END instruction, do not
> > insert this instruction prematurely.
> > 
> 
> We only add the BBEND when there is no state to restore, so why
> would 
> the engine expect to execute a bunch of no-ops?

That is also true. Seems like an unlikely situation. Let me dig a bit
more before coming back here.

Thanks,
Stuart

> 
> Daniele
> 
> > Signed-off-by: Stuart Summers <stuart.summers at intel.com>
> > ---
> >   drivers/gpu/drm/i915/gt/intel_lrc.c | 2 +-
> >   1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c
> > b/drivers/gpu/drm/i915/gt/intel_lrc.c
> > index e9fe9f79cedd..ec067c29ac65 100644
> > --- a/drivers/gpu/drm/i915/gt/intel_lrc.c
> > +++ b/drivers/gpu/drm/i915/gt/intel_lrc.c
> > @@ -3805,7 +3805,7 @@ populate_lr_context(struct intel_context *ce,
> >   	/* The second page of the context object contains some fields
> > which must
> >   	 * be set up prior to the first execution. */
> >   	regs = vaddr + LRC_STATE_PN * PAGE_SIZE;
> > -	execlists_init_reg_state(regs, ce, engine, ring, inhibit);
> > +	execlists_init_reg_state(regs, ce, engine, ring, false);
> >   	if (inhibit)
> >   		regs[CTX_CONTEXT_CONTROL] |=
> >   			_MASKED_BIT_ENABLE(CTX_CTRL_ENGINE_CTX_RESTORE_
> > INHIBIT);
> > 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3270 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/intel-gfx/attachments/20191018/53045d00/attachment.bin>


More information about the Intel-gfx mailing list