Date: Sun, 16 Mar 2008 20:44:35 -0500 From: "Jeremy Messenger" <mezz7@cox.net> To: "E. J. Cerejo" <ejcerejo@optonline.net> Cc: freebsd-gnome@freebsd.org Subject: Re: Evolution crawls on FreeBSD Message-ID: <op.t740glh89aq2h7@mezz.mezzweb.com> In-Reply-To: <20080316213133.c1b5941f.ejcerejo@optonline.net> References: <20080301181608.5d393e02.ejcerejo@optonline.net> <1204415453.1262.26.camel@shumai.marcuscom.com> <20080301191214.58432ae0.ejcerejo@optonline.net> <1204417247.1262.29.camel@shumai.marcuscom.com> <20080301204637.74cfc75f.ejcerejo@optonline.net> <1204424514.1262.36.camel@shumai.marcuscom.com> <20080316213133.c1b5941f.ejcerejo@optonline.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 16 Mar 2008 20:31:33 -0500, E. J. Cerejo <ejcerejo@optonline.net= > = wrote: > On Sat, 01 Mar 2008 21:21:54 -0500 > Joe Marcus Clarke <marcus@marcuscom.com> wrote: > >> >> On Sat, 2008-03-01 at 20:46 -0500, E. J. Cerejo wrote: >> > On Sat, 01 Mar 2008 19:20:47 -0500 >> > Joe Marcus Clarke <marcus@marcuscom.com> wrote: >> > >> > > >> > > On Sat, 2008-03-01 at 19:12 -0500, E. J. Cerejo wrote: >> > > > On Sat, 01 Mar 2008 18:50:53 -0500 >> > > > Joe Marcus Clarke <marcus@marcuscom.com> wrote: >> > > > >> > > > > >> > > > > On Sat, 2008-03-01 at 18:16 -0500, E. J. Cerejo wrote: >> > > > > > I'm running FreeBSD 7.0RC3 and I'm trying to figure out why= = >> evolution takes over a minute to start, there are no error messages i= f = >> I run it from terminal window. First I was running 6.3 but I upgrade= d = >> to 7.0 thinking that it might of solve the problem but it didn't. Wh= at = >> amazes me is, I've got ubuntu installed on the same machine and it on= ly = >> takes 3 seconds to start, also it only takes 3 seconds to start in = >> windows. Evolution running like this is completely worthless. Any = >> ideas what might be causing this? Please respond to my email address= = >> also. >> > > > > >> > > > > This has been discussed on this mailing list before. The = >> number of >> > > > > plug-ins enabled in Evo slows down the load time as the loade= r = >> is >> > > > > spinning trying to load each plug-in. You should disable all= = >> unneeded >> > > > > plug-ins. >> > > > > >> > > > > Joe >> > > > > >> > > > > -- >> > > > > PGP Key : http://www.marcuscom.com/pgp.asc >> > > > >> > > > Plug-ins don't seem to have an effect when running it on ubuntu= , = >> all the plug-ins are enabled under ubuntu and still starts in 3 = >> seconds. Are you trying to say that the FreeBSD loader is kind of = >> primitive comparing to the linux loader? >> > > >> > > No. I'm saying that the tasks the FreeBSD loader performs takes = = >> longer >> > > than the ones performed by the Linux loader. >> > >> > Well, I disabled all the plugins and still takes 40 seconds to open= = >> that's a lot longer than linux with all the plugins enabled. As far = = >> I'm concerned evolution is out of my list of programs, I still have m= y = >> doubts about the real reason as to why it takes so long to open. In = = >> reality there's no real reason as to why a program will take so long = to = >> open, if that's the case evolution will loose a lot of users in the = >> FreeBSD community. >> >> You're free to build Evolution and e-d-s with debugging symbols, and >> watch it load in gdb if you don't believe me. Last time I did this, = I >> found most of the time spent in the loader. Any optimizations would >> certainly be welcome. > > This patch for this evolution bug was posted in questions by lenzi and= = > it solved that bug, I just thought you would like to know. It's not a= n = > evolution bug but glib20 instead. Read below again. > ---------------------------------x------------------------------ > > The problem is that glib on function g_module_load, searchs for a symb= ol > g_module_check_init, g_module_unload... by default. > > It occurs that the evolution code, that will be loaded, does not have > those functions available... so th glib (and dlsym) tries to find the > symbol in every load module in memory... and doing so consumes all cpu= > for several seconds, for each load module.... > > ! coded a solution for gmodule that tests for those special symbos, an= d > if found, uses dlsymb(RTLD_NEXT,....) instead of dlsym(handler....) > so it will search a much less modules, and evolution will start in 3 > seconds... (20 times less...) > > Of course the correct strategy is to correct code evolution module ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Here... > (libevolution-mail.so). will do next time.... > > modified file: /usr/ports/devel/glib20/files/patch-gmodule::gmodule-dl= .c > > please note this is only a temporary fix... the correct solution is to= > fix the evolution module.... ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^= ...and here. We already have speed up Evolution in GNOME 2.22, see here: http://lists.freebsd.org/pipermail/freebsd-gnome/2008-March/019485.html Cheers, Mezz > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D <snip> -- = mezz7@cox.net - mezz@FreeBSD.org FreeBSD GNOME Team http://www.FreeBSD.org/gnome/ - gnome@FreeBSD.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?op.t740glh89aq2h7>