Bug 239945

Summary: liferea keeps waking up the cpu a lot
Product: [Fedora] Fedora Reporter: Arjan van de Ven <arjan>
Component: lifereaAssignee: Brian Pepple <bdpepple>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: bnocera, jeffutter, jwboyer, lmacken, lsof
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 1.2.19-2.fc7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-07-11 11:19:44 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 204948    
Attachments:
Description Flags
Patch to fix the 100ms timer none

Description Arjan van de Ven 2007-05-12 22:31:45 EDT
Description of problem:
        /* setup the processing of feed update results */
        g_timeout_add_full(G_PRIORITY_DEFAULT_IDLE,
                           100, 
                           update_dequeue_results,
                           NULL,
                           NULL);


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...
Comment 2 Arjan van de Ven 2007-05-12 22:52:05 EDT
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.
Comment 3 Brian Pepple 2007-05-13 16:05:15 EDT
Applied patch, and tagged for F7.  liferea-1.2.10c-2.fc7

sent patch to upstream.

Thanks, Arjan!
Comment 4 Bastien Nocera 2007-05-13 16:08:17 EDT
(In reply to comment #2)
<snip>
> 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.
Comment 5 Brian Pepple 2007-05-13 17:07:19 EDT
(In reply to comment #4)
> (In reply to comment #2)
> <snip>
> > 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.

From upstream:
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.

Comment 6 Arjan van de Ven 2007-05-13 22:06:29 EDT
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
Comment 7 Jeff Utter 2007-05-15 21:24:04 EDT
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.
Comment 8 Brian Pepple 2007-06-27 18:15:39 EDT
*** Bug 246021 has been marked as a duplicate of this bug. ***
Comment 9 Fedora Update System 2007-07-05 15:14:11 EDT
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.
Comment 10 Need Real Name 2007-07-06 13:39:25 EDT
WFM thanks!
Comment 11 Need Real Name 2007-07-08 10:58:04 EDT
liferea-1.2.19-2.fc7

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
Comment 12 Fedora Update System 2007-07-11 11:19:29 EDT
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.