Red Hat Bugzilla – Bug 239945
liferea keeps waking up the cpu a lot
Last modified: 2007-11-30 17:12:04 EST
Description of problem:
/* setup the processing of feed update results */
this code sets a.. 100 miliseconds timer to look at a queue which will be empty
most of the time.
timer should only be set if there's actually anything in the queue...
Created attachment 154598 [details]
Patch to fix the 100ms timer
The patch attached fixes the 100ms timer. There's still at least one
once-per-second timer left that also wants fixing; but the 100ms one is a good
start to get fixed soon.
Applied patch, and tagged for F7. liferea-1.2.10c-2.fc7
sent patch to upstream.
(In reply to comment #2)
> There's still at least one
> once-per-second timer left that also wants fixing; but the 100ms one is a good
> start to get fixed soon.
So not quite fixed yet, reopening.
(In reply to comment #4)
> (In reply to comment #2)
> > There's still at least one
> > once-per-second timer left that also wants fixing; but the 100ms one is a good
> > start to get fixed soon.
> So not quite fixed yet, reopening.
Patch merged against 1.2.x and 1.3.x sources. I agree with changing the
100ms timer, but I do not with the second 1000ms which is only called
rarely (after HTTP errors) to allow 3 retries per request. So it is not
continuous timer and should cause not much load.
the 1 second timer is in feedlist.c, it's to call feedlist_auto_update() it
seems.... that's not the same as the 1 second http error timer, which is also
there but which is perfectly fine
While the last patch (applied in liferea-1.2.10c-2.fc7) helped a little. I think
there still needs to be much more done here. Before the patch liferea caused
about 170 wakeups a second according to powertop. Now it's down to around 160.
That still seems unreasonably high to me.
*** Bug 246021 has been marked as a duplicate of this bug. ***
liferea-1.2.19-2.fc7 has been pushed to the Fedora 7 testing repository. If problems still persist, please make note of it in this bug report.
Not sure if this is related, but liferea is stuck in a loop at the moment,
eating cpu. strace shows:
brk(0xdd35000) = 0xdd35000
brk(0xdd56000) = 0xdd56000
brk(0xdd77000) = 0xdd77000
brk(0xdd98000) = 0xdd98000
brk(0xddb9000) = 0xddb9000
brk(0xddda000) = 0xddda000
brk(0xddfb000) = 0xddfb000
brk(0xde1c000) = 0xde1c000
brk(0xde3d000) = 0xde3d000
brk(0xde5e000) = 0xde5e000
brk(0xde7f000) = 0xde7f000
liferea-1.2.19-2.fc7 has been pushed to the Fedora 7 stable repository. If problems still persist, please make note of it in this bug report.