[Mesa-dev] [PATCH] i965: Remove spurious mutex frobbing around call to intel_miptree_blit

Ian Romanick idr at freedesktop.org
Wed Jun 21 18:12:06 UTC 2017


On 06/20/2017 01:33 PM, Kristian Høgsberg wrote:
> On Mon, Jun 19, 2017 at 2:33 PM, Ian Romanick <idr at freedesktop.org> wrote:
>> From: Ian Romanick <ian.d.romanick at intel.com>
>>
>> These locks were added in 2f28a0dc, but I don't see anything in the
>> intel_miptree_blit path that should make this necessary.
> 
> I doubt it's needed now with the new blorp. If I remember correctly, I
> had to drop the lock there since intel_miptree_blit() could hit the XY
> blit path that requires a fast clear resolve. The fast resolve being
> meta, would then try to lock the texture again.

I figured it was something like that.  If I add that commentary to the
commit message, can I call that a Reviewed-by?

> Kristian
> 
>> Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
>> Cc: Kristian Høgsberg <krh at bitplanet.net>
>> ---
>>  src/mesa/drivers/dri/i965/intel_tex_copy.c | 19 ++++++-------------
>>  1 file changed, 6 insertions(+), 13 deletions(-)
>>
>> diff --git a/src/mesa/drivers/dri/i965/intel_tex_copy.c b/src/mesa/drivers/dri/i965/intel_tex_copy.c
>> index 9c255ae..e0d5cad 100644
>> --- a/src/mesa/drivers/dri/i965/intel_tex_copy.c
>> +++ b/src/mesa/drivers/dri/i965/intel_tex_copy.c
>> @@ -51,7 +51,6 @@ intel_copy_texsubimage(struct brw_context *brw,
>>                         GLint x, GLint y, GLsizei width, GLsizei height)
>>  {
>>     const GLenum internalFormat = intelImage->base.Base.InternalFormat;
>> -   bool ret;
>>
>>     /* No pixel transfer operations (zoom, bias, mapping), just a blit */
>>     if (brw->ctx._ImageTransferState)
>> @@ -83,19 +82,13 @@ intel_copy_texsubimage(struct brw_context *brw,
>>     int dst_slice = slice + intelImage->base.Base.Face +
>>                     intelImage->base.Base.TexObject->MinLayer;
>>
>> -   _mesa_unlock_texture(&brw->ctx, intelImage->base.Base.TexObject);
>> -
>>     /* blit from src buffer to texture */
>> -   ret = intel_miptree_blit(brw,
>> -                            irb->mt, irb->mt_level, irb->mt_layer,
>> -                            x, y, irb->Base.Base.Name == 0,
>> -                            intelImage->mt, dst_level, dst_slice,
>> -                            dstx, dsty, false,
>> -                            width, height, GL_COPY);
>> -
>> -   _mesa_lock_texture(&brw->ctx, intelImage->base.Base.TexObject);
>> -
>> -   return ret;
>> +   return intel_miptree_blit(brw,
>> +                             irb->mt, irb->mt_level, irb->mt_layer,
>> +                             x, y, irb->Base.Base.Name == 0,
>> +                             intelImage->mt, dst_level, dst_slice,
>> +                             dstx, dsty, false,
>> +                             width, height, GL_COPY);
>>  }
>>
>>
>> --
>> 2.9.4
>>



More information about the mesa-dev mailing list