[Mesa-dev] [PATCH 9/9] i965: Drop _mesa_meta_pbo_TexSubImage() even for gen < 6

Tapani Pälli tapani.palli at intel.com
Wed Jan 25 07:28:00 UTC 2017


I tested dropping meta here separately in the context of this bug:
https://bugs.freedesktop.org/show_bug.cgi?id=99209

No regressions seen there.

Tested-by: Tapani Pälli <tapani.palli at intel.com>


On 12/20/2016 04:45 PM, Topi Pohjolainen wrote:
> Signed-off-by: Topi Pohjolainen <topi.pohjolainen at intel.com>
> ---
>   src/mesa/drivers/dri/i965/intel_tex_image.c    | 24 +++++++-----------------
>   src/mesa/drivers/dri/i965/intel_tex_subimage.c | 19 +++++--------------
>   2 files changed, 12 insertions(+), 31 deletions(-)
>
> diff --git a/src/mesa/drivers/dri/i965/intel_tex_image.c b/src/mesa/drivers/dri/i965/intel_tex_image.c
> index 67f83db..e503043 100644
> --- a/src/mesa/drivers/dri/i965/intel_tex_image.c
> +++ b/src/mesa/drivers/dri/i965/intel_tex_image.c
> @@ -127,7 +127,6 @@ intelTexImage(struct gl_context * ctx,
>   {
>      struct brw_context *brw = brw_context(ctx);
>      struct intel_texture_image *intelImage = intel_texture_image(texImage);
> -   bool ok;
>   
>      bool tex_busy = intelImage->mt && drm_intel_bo_busy(intelImage->mt->bo);
>   
> @@ -156,22 +155,13 @@ intelTexImage(struct gl_context * ctx,
>                                     format, type, pixels, unpack))
>         return;
>   
> -   if (brw->gen < 6 &&
> -       _mesa_meta_pbo_TexSubImage(ctx, dims, texImage, 0, 0, 0,
> -                                  texImage->Width, texImage->Height,
> -                                  texImage->Depth,
> -                                  format, type, pixels,
> -                                  tex_busy, unpack))
> -      return;
> -
> -   ok = intel_texsubimage_tiled_memcpy(ctx, dims, texImage,
> -                                       0, 0, 0, /*x,y,z offsets*/
> -                                       texImage->Width,
> -                                       texImage->Height,
> -                                       texImage->Depth,
> -                                       format, type, pixels, unpack,
> -                                       false /*allocate_storage*/);
> -   if (ok)
> +   if (intel_texsubimage_tiled_memcpy(ctx, dims, texImage,
> +                                      0, 0, 0, /*x,y,z offsets*/
> +                                      texImage->Width,
> +                                      texImage->Height,
> +                                      texImage->Depth,
> +                                      format, type, pixels, unpack,
> +                                      false /*allocate_storage*/))
>         return;
>   
>      DBG("%s: upload image %dx%dx%d pixels %p\n",
> diff --git a/src/mesa/drivers/dri/i965/intel_tex_subimage.c b/src/mesa/drivers/dri/i965/intel_tex_subimage.c
> index 741637a..60dc862 100644
> --- a/src/mesa/drivers/dri/i965/intel_tex_subimage.c
> +++ b/src/mesa/drivers/dri/i965/intel_tex_subimage.c
> @@ -395,7 +395,6 @@ intelTexSubImage(struct gl_context * ctx,
>   {
>      struct brw_context *brw = brw_context(ctx);
>      struct intel_mipmap_tree *mt = intel_texture_image(texImage)->mt;
> -   bool ok;
>   
>      bool tex_busy = mt && drm_intel_bo_busy(mt->bo);
>   
> @@ -416,19 +415,11 @@ intelTexSubImage(struct gl_context * ctx,
>                                     format, type, pixels, packing))
>         return;
>   
> -   ok = _mesa_meta_pbo_TexSubImage(ctx, dims, texImage,
> -                                   xoffset, yoffset, zoffset,
> -                                   width, height, depth, format, type,
> -                                   pixels, tex_busy, packing);
> -   if (ok)
> -      return;
> -
> -   ok = intel_texsubimage_tiled_memcpy(ctx, dims, texImage,
> -                                       xoffset, yoffset, zoffset,
> -                                       width, height, depth,
> -                                       format, type, pixels, packing,
> -                                       false /*for_glTexImage*/);
> -   if (ok)
> +   if (intel_texsubimage_tiled_memcpy(ctx, dims, texImage,
> +                                      xoffset, yoffset, zoffset,
> +                                      width, height, depth,
> +                                      format, type, pixels, packing,
> +                                      false /*for_glTexImage*/))
>        return;
>   
>      _mesa_store_texsubimage(ctx, dims, texImage,




More information about the mesa-dev mailing list