From: cedric Date: Wed, 30 May 2012 08:15:42 +0000 (+0000) Subject: evas: Don't wake up prepare thread when there is nothing to do. X-Git-Tag: submit/trunk/20120815.174732~287 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=53f2fafac44191f160bec4aa764bbfcf11793d23;p=profile%2Fivi%2Fevas.git evas: Don't wake up prepare thread when there is nothing to do. git-svn-id: http://svn.enlightenment.org/svn/e/trunk/evas@71543 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 --- diff --git a/ChangeLog b/ChangeLog index 6c002af..b7dd6fe 100644 --- a/ChangeLog +++ b/ChangeLog @@ -621,8 +621,8 @@ 2012-01-06 Sung W. Park (sung_) * Add EvasGL support to software backend using OSMesa. Requires OSMesa - library. Due to caveats in OSMesa, surface config stays with a - context rather than with a surface. So for now, the config of a + library. Due to caveats in OSMesa, surface config stays with a + context rather than with a surface. So for now, the config of a surface remains with the first context that it binds to. May need to come up with a different solution in the near future. @@ -650,14 +650,14 @@ 2012-01-20 Sung W. Park (sung_) - * Add Direct Rendering to Evas' window optimization for Evas_GL. This + * Add Direct Rendering to Evas' window optimization for Evas_GL. This optimization can be significant since it avoids and extra copy from an offscreen buffer. Normally, Evas_GL will render to a render - target using an FBO. This can be enabled by giving - EVAS_GL_OPTIONS_DIRECT hint in the config options_bits. Direct - rendering is actually done if the following conditions are met - - 1) All GL rendering is done in the pixel_getter callback 2) No - rotation on the image object 3) Corresponding image + target using an FBO. This can be enabled by giving + EVAS_GL_OPTIONS_DIRECT hint in the config options_bits. Direct + rendering is actually done if the following conditions are met - + 1) All GL rendering is done in the pixel_getter callback 2) No + rotation on the image object 3) Corresponding image object has alpha disabled. 2012-01-23 Tom Hacohen (TAsn) @@ -769,6 +769,9 @@ 2012-05-30 ChunEon Park (Hermet) * Fixed to clean up when map actually changed. Now rendering updates will be - correct after evas_map acutally disabled/enabled for the smart object. + correct after evas_map acutally disabled/enabled for the smart object. +2012-05-30 Cedric Bail + + * Don't wake up prepare thread if there is nothing to prepare. diff --git a/NEWS b/NEWS index bbc210d..82d8fb9 100644 --- a/NEWS +++ b/NEWS @@ -6,6 +6,7 @@ Changes since Evas 1.2.0: Improvements: * Lock less font rendering. * Reduce cost of propagating event by limiting the object we explore by using a bouncing box. + * Don't wake up prepare thread if there is nothing to prepare. Fixes: * Add missing files in the tarball. diff --git a/src/lib/engines/common/evas_pipe.c b/src/lib/engines/common/evas_pipe.c index f96eb2e..1a8e700 100644 --- a/src/lib/engines/common/evas_pipe.c +++ b/src/lib/engines/common/evas_pipe.c @@ -700,6 +700,8 @@ static void evas_common_pipe_load_do(void) { #ifdef BUILD_PTHREAD + if (!im_task && !text_task) return ; + /* Notify worker thread. */ pthread_barrier_wait(&(task_thbarrier[0]));