I confirm this behavior on FreeBSD 11 (E21 & efl 1.18) and 10.2 (E19 & efl 1.17). On my notebook I revoked exec permissions from efreetd, if not the lifetime on battery was too short. For me the polling interval is about 3-5 secs too, far from 60 secs. Should we open a ticket?
Peter On 07/12/2016 10:54, Nik wrote: > On 12/07/2016 00:13, Carsten Haitzler (The Rasterman) wrote: > >> On Tue, 6 Dec 2016 15:32:42 +0100 Quelrond <[email protected]> said: >> >>> On 06/12/2016 14:32, Carsten Haitzler (The Rasterman) wrote: >>>> On Tue, 6 Dec 2016 14:17:51 +0100 Nik <[email protected]> said: >>>> >>>>> Hello folks! >>>>> >>>>> I'm using Enlightenment as my preferred DE again since recent update >>>>> which made it more usable >>>>> and stable than before on FreeBSD.However, I observed that the two >>>>> efreetd processes consume >>>>> a "huge" amount of CPU resources. Just by looking at "top" I would say >>>>> that the CPU load by each >>>>> of theses processes amounts to 50% in average on my notebook. >>>>> >>>>> Tracing these processes shows that they are calling "stat" on a bunch of >>>>> files in /usr/local/share/{icons,applications,pixmaps,...} >>>>> and ~/.local/{icons,applications,...} over and over again. >>>>> >>>>> Here is a sample output of "truss": >>>>> >>>>> .... >>>>> stat("/usr/local/share/icons/Faenza-Dark/status/64/gtk-dialog-warning.png", >>>>> { mode=-r--r--r-- ,inode=214359,size=4260,blksize=4608 }) = 0 (0x0) >>>>> stat("/usr/local/share/icons/Faenza-Dark/status/64/info.png",{ >>>>> mode=-r--r--r-- ,inode=214405,size=4486,blksize=4608 }) = 0 (0x0) >>>>> stat("/usr/local/share/icons/Faenza-Dark/status/64/network-error.png",{ >>>>> mode=-r--r--r-- ,inode=214380,size=2289,blksize=4096 }) = 0 (0x0) >>>>> stat("/usr/local/share/icons/Faenza-Dark/status/64/network-idle.png",{ >>>>> mode=-r--r--r-- ,inode=214376,size=1516,blksize=4096 }) = 0 (0x0) >>>>> stat("/usr/local/share/icons/Faenza-Dark/status/64/network-offline.png",{ >>>>> mode=-r--r--r-- ,inode=214484,size=1495,blksize=4096 }) = 0 (0x0) >>>>> stat("/usr/local/share/icons/Faenza-Dark/status/64/network-receive.png",{ >>>>> mode=-r--r--r-- ,inode=214337,size=2012,blksize=4096 }) = 0 (0x0) >>>>> stat >>>>> ("/usr/local/share/icons/Faenza-Dark/status/64/network-transmit-receive.png", >>>>> { mode=-r--r--r-- ,inode=214452,size=2420,blksize=4096 }) = 0 ... >>>>> >>>>> I'm running FreeBSD current with ZFS and Enlightenment version 021.3. >>>>> >>>>> Is it the "expected" behavior of efreetd? >>>>> If not, how can it be fixed? Any idea? >>>>> >>>>> Any constructive feedback is very much appreciated! >>>> hmmm. i sduspect this is the xdg icon/desktop file standards handling... >>>> and >>>> efreet is monitoring all files in the icon themes and desktop directories >>>> that it needs ... and is monitoring for changes. in linux it uses inotify >>>> to do this and the kernel messages userspace when a file event happens... >>>> on bsd we have to fall back to polling. and to adapt to changes we have to >>>> do this... this is how the standard is set up. what gnome did is force you >>>> to run a specific update tool to rebuild their cache files every time >>>> something changes. since we are not a dominant De we have to resort to >>>> checking for ourselves and watching for updates. :( >>>> >>> Thanks for this clarification, Rasterman. >>> Is it possible to change the polling interval? What is the default value? >>> >>> BTW, inotify-like interface of kqueue exists in FreeBSD ports tree: >>> http://www.freshports.org/devel/libinotify >>> It suffers from kqueue limitations, but it should work for icon themes >>> etc. as the number of files is not too high here... >> hmm wait. we do have kqueue support in eio. eio_monitor_kevent.c is there. >> i'm >> wondering why you're seeing stat's then as that smells of the polling >> fallback. >> there isn't a way of altering the poll interval in the polling fallback but >> the >> compiled-in fixed interval is 60 seconds. >> >> i wonder why then it's statting so many files i ti's not polling. and even >> then >> it'll only be every 60 sec.. ? >> > From what I see in the output of "truss" the polling interval seems to > be a few seconds (maybe at most 5 seconds) > and stat call goes over all files in each run (i.e., it is definitely > the fallback case). > > > ------------------------------------------------------------------------------ > Developer Access Program for Intel Xeon Phi Processors > Access to Intel Xeon Phi processor-based developer platforms. > With one year of Intel Parallel Studio XE. > Training and support from Colfax. > Order your platform today.http://sdm.link/xeonphi > _______________________________________________ > enlightenment-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/enlightenment-users ------------------------------------------------------------------------------ Developer Access Program for Intel Xeon Phi Processors Access to Intel Xeon Phi processor-based developer platforms. With one year of Intel Parallel Studio XE. Training and support from Colfax. Order your platform today.http://sdm.link/xeonphi _______________________________________________ enlightenment-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-users
