[Intel-gfx] [PATCH] drm/i915: Preallocate request before access of the ring

Jani Nikula jani.nikula at linux.intel.com
Mon Jun 29 04:39:32 PDT 2015


On Wed, 06 May 2015, Daniel Vetter <daniel at ffwll.ch> wrote:
> On Thu, Apr 30, 2015 at 01:54:41PM +0100, Dave Gordon wrote:
>> On 29/04/15 17:10, yu.dai at intel.com wrote:
>> > From: Alex Dai <yu.dai at intel.com>
>> > 
>> > This is to avoid bad IO access caused by writing NOOP to wrap the
>> > ring buffer whilst ring is unpinned.
>> > 
>> > Signed-off-by: Alex Dai <yu.dai at intel.com>
>> > ---
>> >  drivers/gpu/drm/i915/intel_lrc.c | 6 +++---
>> >  1 file changed, 3 insertions(+), 3 deletions(-)
>> > 
>> > diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
>> > index 732fd63..3e8fcfd 100644
>> > --- a/drivers/gpu/drm/i915/intel_lrc.c
>> > +++ b/drivers/gpu/drm/i915/intel_lrc.c
>> > @@ -803,12 +803,12 @@ static int intel_logical_ring_begin(struct intel_ringbuffer *ringbuf,
>> >  	if (ret)
>> >  		return ret;
>> >  
>> > -	ret = logical_ring_prepare(ringbuf, ctx, num_dwords * sizeof(uint32_t));
>> > +	/* Preallocate the olr before touching the ring */
>> > +	ret = i915_gem_request_alloc(ring, ctx);
>> >  	if (ret)
>> >  		return ret;
>> >  
>> > -	/* Preallocate the olr before touching the ring */
>> > -	ret = i915_gem_request_alloc(ring, ctx);
>> > +	ret = logical_ring_prepare(ringbuf, ctx, num_dwords * sizeof(uint32_t));
>> >  	if (ret)
>> >  		return ret;
>> 
>> Reviewed-by: Dave Gordon <david.s.gordon at intel.com>
>> 
>> with input also from John Harrison <john.c.harrison at intel.com>, who
>> would like to point out that this will be superceded by the Anti-OLR
>> patches already posted. (In that model, the request will be allocated
>> much earlier, and passed around explicitly rather than dangling from the
>> context).
>
> Do we need this for execlist in general, i.e. cc: stable? Where's the bug
> report/igt testcase?
>
> For serious-looking bugs please add more details like that to the commit
> message, otherwise maintainers have no idea where to apply a patch.

And due to no reply, the maintainers have forgotten about patches like
this. Dropping from my fixes queue.

BR,
Jani.






>
> Thanks, Daniel
> -- 
> Daniel Vetter
> Software Engineer, Intel Corporation
> http://blog.ffwll.ch

-- 
Jani Nikula, Intel Open Source Technology Center


More information about the Intel-gfx mailing list