[Mesa-dev] [PATCH 1/2] intel: Fix performance regression from miptree blit changes.

Eric Anholt eric at anholt.net
Thu May 30 12:16:04 PDT 2013


When making v2 of da2880bea05bfc87109477ab026a7f5401fc8f0c, I carefully
checked all of the calls in that commit to see that I'd updated them, but
forgot to update the new calls in the later commits such as
.e845c5cf7abce55759501a473459aff3bf25c9ca.  As a result, we were getting Y
tiled temporaries even though the whole point of the temporary was to
untile!

The steady state of the intro scene of lightsmark goes from 13 to 17 fps.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=65154
---
 src/mesa/drivers/dri/intel/intel_mipmap_tree.c  | 2 +-
 src/mesa/drivers/dri/intel/intel_tex_subimage.c | 3 +--
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/mesa/drivers/dri/intel/intel_mipmap_tree.c b/src/mesa/drivers/dri/intel/intel_mipmap_tree.c
index 5f1e171..8ecda20 100644
--- a/src/mesa/drivers/dri/intel/intel_mipmap_tree.c
+++ b/src/mesa/drivers/dri/intel/intel_mipmap_tree.c
@@ -1500,7 +1500,7 @@ intel_miptree_map_blit(struct intel_context *intel,
                                   0, 0,
                                   map->w, map->h, 1,
                                   false, 0,
-                                  (1 << I915_TILING_NONE));
+                                  INTEL_MIPTREE_TILING_NONE);
    if (!map->mt) {
       fprintf(stderr, "Failed to allocate blit temporary\n");
       goto fail;
diff --git a/src/mesa/drivers/dri/intel/intel_tex_subimage.c b/src/mesa/drivers/dri/intel/intel_tex_subimage.c
index 834288b..bd178bb 100644
--- a/src/mesa/drivers/dri/intel/intel_tex_subimage.c
+++ b/src/mesa/drivers/dri/intel/intel_tex_subimage.c
@@ -91,8 +91,7 @@ intel_blit_texsubimage(struct gl_context * ctx,
       intel_miptree_create(intel, GL_TEXTURE_2D, texImage->TexFormat,
                            0, 0,
                            width, height, 1,
-                           false, 0,
-                           (1 << I915_TILING_NONE) /* force_tiling_mask */);
+                           false, 0, INTEL_MIPTREE_TILING_NONE);
    if (!temp_mt)
       goto err;
 
-- 
1.8.3.rc0



More information about the mesa-dev mailing list