Merge "gralloc: Do not map framebuffer memory unless needed"
diff --git a/libgralloc/framebuffer.cpp b/libgralloc/framebuffer.cpp
index 3828680..1851196 100644
--- a/libgralloc/framebuffer.cpp
+++ b/libgralloc/framebuffer.cpp
@@ -336,9 +336,15 @@
static int mapFrameBuffer(struct private_module_t* module)
{
- pthread_mutex_lock(&module->lock);
- int err = mapFrameBufferLocked(module);
- pthread_mutex_unlock(&module->lock);
+ int err = 0;
+ char property[PROPERTY_VALUE_MAX];
+ if((property_get("debug.gralloc.map_fb_memory", property, NULL) > 0) &&
+ (!strncmp(property, "1", PROPERTY_VALUE_MAX ) ||
+ (!strncasecmp(property,"true", PROPERTY_VALUE_MAX )))) {
+ pthread_mutex_lock(&module->lock);
+ err = mapFrameBufferLocked(module);
+ pthread_mutex_unlock(&module->lock);
+ }
return err;
}