On Tue, Jan 17, 2012 at 11:26 PM, Carsten Haitzler <[email protected]>wrote:
> On Sat, 14 Jan 2012 23:19:59 -0500 Michael Blumenkrantz > <[email protected]> said: > > > On Sat, 14 Jan 2012 23:15:37 -0500 > > Youness Alaoui <[email protected]> wrote: > > > > > Hi, > > > > > > I've just updated my EFL build for the PS3 and it was broken. eina_init > > > isn't working anymore because eina_value doesn't init itself > correctly. The > > > issue is that if it's unable to iitialize a lock, it will fail the init > > > which fails eina_init (and ecore_init, etc..) > > > The problem is that on the PS3, there is no pthread library so threads > are > > > disabled on eina and eina_lock uses eina_inline_lock_void.x which just > > > returns FALSE/FAIL for every API call. This also causes another issue > with > > > evas which slows it down because it tries a eina_lock_take_try (which > > > fails) and forces it to wait a bit before doing anything then it spams > my > > > terminal with warnings about not being able to get a lock. > > > I would suggest to change the behavior of eina_lock (on 'void' > platforms, > > > which do not support locks) to always return TRUE/SUCCEED so it doesn't > > > break everything below it. > > > > > > What do you think ? > > > > > > Thanks, > > > KaKaRoTo > > unfortunately this would be an api break since eina_lock was present in > the > > 1.1 release... > > actually the void impl really should just "work as if there were no > threads at > all" so i'd say this is a bug in return value. i.e. its a platform on which > threads cannot exist thus locking is pointless. though my position on this > is... it will be not long when we simply will not work without threads. it > is > my intention to move us to having more internal threads and reduce the > maintenance cost of having non-threaded modes/paths as then its a vector > for > bugs and problems. so reality is the void thread impl will basically be > like an > appendix - useless legacy stuff :) > Yeah, I know your plan, in the meantime, I'm happy playing the lazy card until it becomes mandatory. Either way I don't think it was working before I came in, as I found many bugs on the no-threads part of the code as it was never tested by anyone. But I do agree, it's a bug in my opinion as it should just work as if locks were successful (no threads means no race conditions).. on the other hand some might see it as "you try to create a mutex but it failed because it's not supported" as being the expected behavior. it's a though call to be honest.. but all I know, is that without that patch, it just won't work for me right now. > -- > ------------- Codito, ergo sum - "I code, therefore I am" -------------- > The Rasterman (Carsten Haitzler) [email protected] > > > > ------------------------------------------------------------------------------ > Keep Your Developer Skills Current with LearnDevNow! > The most comprehensive online learning library for Microsoft developers > is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, > Metro Style Apps, more. Free future releases when you subscribe now! > http://p.sf.net/sfu/learndevnow-d2d > _______________________________________________ > enlightenment-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > ------------------------------------------------------------------------------ Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
