First, my apologies for the very late reply. I did read your answers and
worked on them, but didn't have enough good data to reply.

What I found is that something in enlightenment goes into a tight loop
if I SIGSTOP a program like firefox-bin.
I tried unloading all modules and the tight loop does not stop, so I'm
guessing it must be the e17 core? (I was hopeful that the pager was
maybe hanging on trying to snapshot a stopped process window).

Any idea where to go from there? Can you reproduce on newer vesion of
e17 than what I have?
(launch firefox, sigstop it, strace enlightenment, and see whether
you get the strace bit I have below)

Thanks,
Marc

On Wed, Aug 14, 2013 at 01:49:43PM +1000, Dave wrote:
>  Disabling/Enabling modules is the only solution I can think of.
> 
>  You can do it from the command line like so:
>  qdbus org.enlightenment.wm.service /org/enlightenment/wm/RemoteObject 
> org.enlightenment.wm.Module.Disable clock
> 
>  Can't disable shelves, but you can disable the elements in a shelf.  A
> module config isn't affected if you disable, enable, unload, or load.
> 
>  Not too sure how much battery you'll save.  Maybe with modules that poll for
> data, like temperature, battery, or cpufreq .  I'd be interested to see your
> results.

strace shows this in a tight loop
recvfrom(9, 0x24990b4, 4096, 256, 0, 0) = -1 EAGAIN (Resource temporarily 
unavailable)
recvfrom(9, 0x24990b4, 4096, 256, 0, 0) = -1 EAGAIN (Resource temporarily 
unavailable)
poll([{fd=9, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=9, 
revents=POLLOUT}])
writev(9, 
[{"\214\3\n\0k\22L\1m\22L\1\6\4\30\0\0\0\0\0\6\4\30\0\31\0\0\0\30\2\0/"..., 
40}, {NULL, 0}, {"", 0}], 3) = 40
recvfrom(9, 0x24990b4, 4096, 256, 0, 0) = -1 EAGAIN (Resource temporarily 
unavailable)
poll([{fd=9, events=POLLIN|POLLOUT}], 1, 4294967295^C <unfinished ...>

Not sure what 9 is:
enlighten 4347 merlin    0r   CHR                1,3      0t0      1028 
/dev/null
enlighten 4347 merlin    1w   REG               0,25  1520680   6400659 
/home/merlin/.xsession-errors
enlighten 4347 merlin    2w   REG               0,25  1520680   6400659 
/home/merlin/.xsession-errors
enlighten 4347 merlin    3u  0000                0,9        0      4102 
anon_inode
enlighten 4347 merlin    4r  FIFO                0,8      0t0     14553 pipe
enlighten 4347 merlin    5w  FIFO                0,8      0t0     14553 pipe
enlighten 4347 merlin    6r  0000                0,9        0      4102 
anon_inode
enlighten 4347 merlin    7r   CHR                1,9      0t0      1033 
/dev/urandom
enlighten 4347 merlin    8u  unix 0xffff8801fd341240      0t0     14554 socket
enlighten 4347 merlin    9u  unix 0xffff8801fc97b840      0t0     12783 socket
enlighten 4347 merlin   10r  FIFO                0,8      0t0     13569 pipe
enlighten 4347 merlin   11w  FIFO                0,8      0t0     13569 pipe
enlighten 4347 merlin   12u  unix 0xffff8801faed7a80      0t0     12947 
/tmp/enlightenment-merlin/disp-
enlighten 4347 merlin   13u   CHR                1,5      0t0      1030 
/dev/zero

I couldn't track what socket this was, but I figured out that the tight
loop above happens when I kill -STOP some processes, and I do indeed to
this on batteries to save CPU cycles:
killall -STOP chrome chromium firefox-bin xmms mplayer pidgin procmeter3 
plugin-container

It seems any time I stop a process, eventually enlightenment notices and
loops on that recvfrom loop.

On Wed, Aug 14, 2013 at 02:12:34PM +1000, Dave wrote:
>  Actually, there is another solution.  Use profiles.  That'll work with
> shelves, and you can dynamically switch profiles from the command line.
 
Thanks for that other tip.
 
On Wed, Aug 14, 2013 at 03:33:14PM +0800, P Purkayastha wrote:
> Easier way:
> 
> enlightenment_remote -module-{disable,enable,load,unload}
> 
> I used this to check which modules make most wakeups. net module is 
> quite notorious and unloading it helps a lot. It updates the module 
> every couple of ms, which causes a lot of wakeups. I use the following 
> patch to reduce thenumber of wakeups:
> http://dpaste.com/1342674/

Thanks for that one, that's good to know.

Unfortunately, it seems that unloading all my modules didn't fix this
problem. I went in utilies and unloaded all the modules.
Then I went in system and unloaded everything too.

It did not stop the tight loop, but still that's good to know.

Thanks,
Marc
-- 
"A mouse is a device used to point at the xterm you want to type in" - A.S.R.
Microsoft is to operating systems ....
                                      .... what McDonalds is to gourmet cooking
Home page: http://marc.merlins.org/                         | PGP 1024R/763BE901

------------------------------------------------------------------------------
LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99!
1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint
2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack includes
Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. 
http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.clktrk
_______________________________________________
enlightenment-users mailing list
enlightenment-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-users

Reply via email to