OSDN Git Service

minigbm: Revert "minigbm: flush buffer instead of unmapping"
authorGurchetan Singh <gurchetansingh@chromium.org>
Wed, 4 Oct 2017 15:16:42 +0000 (08:16 -0700)
committerchrome-bot <chrome-bot@chromium.org>
Fri, 6 Oct 2017 04:24:42 +0000 (21:24 -0700)
It looks like munmap is probably necessary for i915 and serves
some important function. Let's revert until we can figure
out what's going on.

BUG=b:67073097
TEST=android.view.cts.SurfaceViewSyncTests#testVideoSurfaceViewCornerCoverage

This reverts commit 254dbb19c49fad4ab4f28b2d1f2982bd10bb7c0b.

Change-Id: Idac50930f9f13b4867110a31fadb1a2547d05d07
Reviewed-on: https://chromium-review.googlesource.com/699802
Commit-Ready: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org>
cros_gralloc/cros_gralloc_buffer.cc
gbm.c

index a78390f..f799129 100644 (file)
@@ -87,9 +87,12 @@ int32_t cros_gralloc_buffer::unlock()
                return -EINVAL;
        }
 
-       --lockcount_;
-       if (lock_data_[0])
-               return drv_bo_flush(bo_, lock_data_[0]);
+       if (!--lockcount_) {
+               if (lock_data_[0]) {
+                       drv_bo_unmap(bo_, lock_data_[0]);
+                       lock_data_[0] = nullptr;
+               }
+       }
 
        return 0;
 }
diff --git a/gbm.c b/gbm.c
index 906560a..a78921c 100644 (file)
--- a/gbm.c
+++ b/gbm.c
@@ -239,7 +239,7 @@ PUBLIC void *gbm_bo_map(struct gbm_bo *bo, uint32_t x, uint32_t y, uint32_t widt
 PUBLIC void gbm_bo_unmap(struct gbm_bo *bo, void *map_data)
 {
        assert(bo);
-       drv_bo_flush(bo->bo, map_data);
+       drv_bo_unmap(bo->bo, map_data);
 }
 
 PUBLIC uint32_t gbm_bo_get_width(struct gbm_bo *bo)