Bug 517463

Summary: needless battery drain while idle: 100x/sec
Product: [Fedora] Fedora Reporter: Jan Kratochvil <jan.kratochvil>
Component: squidAssignee: Jiri Skala <jskala>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: 11CC: aglotov, henrik, jonathansteffan, jskala, mnagy
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: squid-3.1.0.13-6.fc12.x86_64 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-09-19 15:17:42 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Bug Depends On:    
Bug Blocks: 484668    

Description Jan Kratochvil 2009-08-14 03:59:22 EDT
Description of problem:
Needless battery drain when squid is in idle mode.
Using squid for cross-application cache, intelligent parent cache selection, URLs remapping etc.

Version-Release number of selected component (if applicable):
squid-3.0.STABLE18-1.fc11.x86_64

How reproducible:
Always

Steps to Reproduce:
1. service squid start
2. powertop

Actual results:
Top causes for wakeups:
   8.8% (101.6)             squid : __mod_timer (process_timeout) 

Expected results:
Top causes for wakeups:
   0.0% (  0.0)             squid : __mod_timer (process_timeout) 
:-)

Additional info:
Comment 1 Jan Kratochvil 2009-09-19 15:17:42 EDT
The primary problem of regular timer got fixed.

powertop now displays for squid only:
Top causes for wakeups:
   3.1% (  2.3)             squid : __mod_timer (process_timeout)

Still strace displays for squid some IMO needless syscalls so it would be nice to check their reason:
Process 4338 attached - interrupt to quit
epoll_wait(6, {}, 16384, 62)            = 0
epoll_wait(6, {}, 16384, 449)           = 0
epoll_wait(6, {}, 16384, 0)             = 0
epoll_wait(6, {}, 16384, 0)             = 0
epoll_wait(6, {}, 16384, 0)             = 0
epoll_wait(6, {}, 16384, 0)             = 0
epoll_wait(6, {}, 16384, 0)             = 0
epoll_wait(6, {}, 16384, 0)             = 0
epoll_wait(6, {}, 16384, 0)             = 0
epoll_wait(6, {}, 16384, 0)             = 0
epoll_wait(6, {}, 16384, 550)           = 0
epoll_wait(6, {}, 16384, 1)             = 0
epoll_wait(6, {}, 16384, 0)             = 0
epoll_wait(6, {}, 16384, 449)           = 0
epoll_wait(6, {}, 16384, 0)             = 0
epoll_wait(6, {}, 16384, 0)             = 0
epoll_wait(6, {}, 16384, 0)             = 0
(this number of lines is for approx. 1 sec)