Re: [bug] xmms generating to many wakeups when idle

"Carlos R. Mafra" <[email protected]> Tue, 14 Aug 2007 15:16:59 -0300
Newsgroups gmane.comp.multimedia.xmms.devel
Message-ID <[email protected]>
Dirk Jagdmann wrote:
>> Does somebody in this list have a clue to solve this issue?
>> I am not a programmer, but I guess there are some unecessary
>> usleep()'s in the code.
> 
> xmms1 development has totally halted and I doubt anybody is willing to 
> inspect the xmms code if it could be changed. The audacious 
> (http://audacious-media-player.org/Main_Page) player is a fork of 
> xmms/bmp and is currently under heavy development. If you like to try 
> this player and reevaluate it with powertop the developers of audacious 
> may be able to help on this issue.

I've tested audacious this morning too, but it is even worse than xmms
regarding this issue. When both are idle this is what I get:

Top causes for wakeups:
   34.7% (136.8)         audacious : schedule_timeout (process_timeout)
   23.7% ( 93.3)              xmms : schedule_timeout (process_timeout)

I have also tried to take a look at xmms code, and I found out that
one of the major causes of wakeups is this line in main.c:

mainwin_timeout_tag = gtk_timeout_add(10, idle_func, NULL);

If I increase the number 10, I get less wakeups. If I comment the whole
line the number of wakeups decrease a lot (I get 10 instead of 93).

However, I don't know the effect of changing this value, because to
make the vanilla xmms 1.2.10 compile with gcc-4.2.1 I had to change
some things (I removed two lines from General/ir/ir.h). Xmms then
compiles fine, but is unable to load and play songs. Modifying the
source code further to decrease the wakeups, I get the same behaviour
(does not play).

Carlos R. Mafra