This is part of the same bug. The patch I just submitted from Gonzalo is an improved fix for this problem.


Henrik Nordstrom wrote:
Just wondering if this belongs to Bug #796 <url:http://www.squid-cache.org/bugs/show_bug.cgi?id=796>. If it does please attache the patch there and write a comment. Don't forget to get the attributions correct if the patch is not uploaded by the author.

Regards
Henrik


On Thu, 6 Nov 2003, David Nicklay wrote:



Hi,

I finally took some time to test this. Gonzalo's patch seems to address a lot of outstanding issues with comm_epoll including:

- CPU usage problem w/ idle clients (both local and remote)
- epoll kernel table being out of sync with fde table
- missed epoll table updates (happens on my boxes but not Gonzalo's)

Could someone apply this to the squid-3.0 HEAD?

Kudos to Gonzalo.



Gonzalo Arana wrote:



Hi,

(yes, it's me again :-( ).

I have this new patch which

1) issues epoll_ctl(EPOLL_CTL_(ADD|MOD|DEL)) according to handler == NULL or not AND based also on past epoll monitoring state (in
commSetSelect).


2) does some profiling in case it was defined on compile time
(PROF_(start|stop) ), and statistics counters are updated (haven't been
checked).

3) removes interest when no handler is defined for event (but
read_pending is set if applies)

4) returns COMM_TIMEOUT when no event has been detected

Last 2 'features' were already in my original patch.

BTW, I got 100% CPU problem when web client (wget) is run on the same
machine where squid does.  Running wget in other machine, gives me less
than 40% of CPU usage.

Hope this solves/explains the behaviour you had been having (english is
not my native language, so sorry if 'had been having' is not correct)
about CPU usage.

I'm posting this to you since you are the original author of
comm_epoll.cc, and I don't want to add noise to squid devel-list.

Thank you very much in advance,



-- David Nicklay Location: CNN Center - SE0811A Office: 404-827-2698 Cell: 404-545-6218



Reply via email to