[PATCH] intel: fix un-blanced map_refcount issue

Yuanhan Liu yuanhan.liu at linux.intel.com
Tue Mar 27 00:41:52 PDT 2012


This is a regression introduced by commit cdcfd5, which forget to
increase the map_refcount for successfully-mapped region. Thus caused a
wrong non-blanced map_refcount.

This would fix the regression found in the two following webglc testcase
on Pineview platform:
   texture-npot.html
   gl-max-texture-dimensions.html

Cc: Anuj Phogat <anuj.phogat at gmail.com>
Signed-off-by: Yuanhan Liu <yuanhan.liu at linux.intel.com>
---
 src/mesa/drivers/dri/intel/intel_regions.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/mesa/drivers/dri/intel/intel_regions.c b/src/mesa/drivers/dri/intel/intel_regions.c
index d2b737b..abea2bd 100644
--- a/src/mesa/drivers/dri/intel/intel_regions.c
+++ b/src/mesa/drivers/dri/intel/intel_regions.c
@@ -133,10 +133,10 @@ intel_region_map(struct intel_context *intel, struct intel_region *region,
 	 drm_intel_bo_map(region->bo, true);
 
       region->map = region->bo->virtual;
-      if (region->map) {
-         intel->num_mapped_regions++;
-         region->map_refcount++;
-      }
+   }
+   if (region->map) {
+      intel->num_mapped_regions++;
+      region->map_refcount++;
    }
 
    return region->map;
-- 
1.7.4.4



More information about the mesa-dev mailing list