[Mesa-dev] [PATCH V8 7/8] intel: Account for mt->offset in intel_miptree_map

Abdiel Janulgue abdiel.janulgue at linux.intel.com
Wed Jan 30 05:40:25 PST 2013


We need to take account the offset from original bo when using glTexSubImage()
and other functions that manipulate the subregion of an exported texture.
Offsets are appended to mapped region address and when blitting from a source
region.

Signed-off-by: Abdiel Janulgue <abdiel.janulgue at linux.intel.com>
---
 src/mesa/drivers/dri/intel/intel_mipmap_tree.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/mesa/drivers/dri/intel/intel_mipmap_tree.c b/src/mesa/drivers/dri/intel/intel_mipmap_tree.c
index 31abdad..3c4749f 100644
--- a/src/mesa/drivers/dri/intel/intel_mipmap_tree.c
+++ b/src/mesa/drivers/dri/intel/intel_mipmap_tree.c
@@ -1120,7 +1120,7 @@ intel_miptree_map_gtt(struct intel_context *intel,
    assert(y % bh == 0);
    y /= bh;
 
-   base = intel_region_map(intel, mt->region, map->mode);
+   base = intel_region_map(intel, mt->region, map->mode) + mt->offset;
 
    if (base == NULL)
       map->ptr = NULL;
@@ -1180,7 +1180,7 @@ intel_miptree_map_blit(struct intel_context *intel,
    if (!intelEmitCopyBlit(intel,
 			  mt->region->cpp,
 			  mt->region->pitch, mt->region->bo,
-			  0, mt->region->tiling,
+			  mt->offset, mt->region->tiling,
 			  map->stride, map->bo,
 			  0, I915_TILING_NONE,
 			  x, y,
-- 
1.7.9.5



More information about the mesa-dev mailing list