Hi Gonzalo,
I extracted this patch from the mail (attached) and tried it with todays
CVS but have a problem whereby squid now accepts the connection but just
sits there, with no content being served up.
Backtrace attached from gdb, does this help?
Program received signal SIGINT, Interrupt.
[Switching to Thread 1073783552 (LWP 14837)]
0x08123146 in epoll_wait (epfd=5, pevents=0x82c1f40, maxevents=128,
timeout=1000) at src/epoll.c:32
32 __sys_epoll_wait(epfd, pevents, maxevents, timeout)
Current language: auto; currently c
(gdb) bt full
#0 0x08123146 in epoll_wait (epfd=5, pevents=0x82c1f40, maxevents=128,
timeout=1000) at src/epoll.c:32
__res = 0
#1 0x08098d8a in comm_select (msec=1000) at comm_epoll.cc:189
num = 0
i = 1
fd = 22
F = (fde *) 0x82b87c8
hdl = (PF *) 0x1d
cevents = (epoll_event *) 0x82b36c8
last_timeout = 1068286510
#2 0x080c5bec in main (argc=4, argv=0xbffffa84) at main.cc:1142
loop_delay = 1000
errcount = 0
n = 1255030816
oldmask = 18
(gdb) info locals
__res = 0
(gdb)
Also, here's some output from squid -k debug
2003/11/08 23:18:50.996| comm_calliocallback: (nil)
2003/11/08 23:18:50.996| comm_iocallbackpending: (nil)
2003/11/08 23:18:50.996| comm_select(): got fd=22 events=1 monitoring=19
F->read_handler=0x80f5332 F->write_handler=(nil)
2003/11/08 23:18:50.996| comm_select(): Calling read handler on fd=22
2003/11/08 23:18:50.996| wccpHandleUdp: Called.
2003/11/08 23:18:50.996|
commSetSelect(fd=22,type=1,handler=0x80f5332,client_data=(nil),timeout=0)
2003/11/08 23:18:50.996| wccpHandleUdp: 64 bytes WCCP pkt from 192.168.0.1:
type=8, version=4, change=57, id=29669, number=1
2003/11/08 23:18:50.996| eventRun: RUN ID 3653
2003/11/08 23:18:50.996| eventRun: Running 'fqdncache_purgelru', id 3639
2003/11/08 23:18:50.996| eventAdd: Adding 'fqdncache_purgelru', in
10.000000 seconds
2003/11/08 23:18:50.996| fqdncache_purgelru: removed 0 entries
2003/11/08 23:18:50.997| comm_calliocallback: (nil)
2003/11/08 23:18:50.997| comm_iocallbackpending: (nil)
2003/11/08 23:18:50.997| eventRun: RUN ID 3654
2003/11/08 23:18:50.997| eventRun: Running 'ipcache_purgelru', id 3640
2003/11/08 23:18:50.997| eventAdd: Adding 'ipcache_purgelru', in 10.000000
seconds
2003/11/08 23:18:50.997| ipcache_purgelru: removed 0 entries
2003/11/08 23:18:50.997| comm_calliocallback: (nil)
2003/11/08 23:18:50.997| comm_iocallbackpending: (nil)
2003/11/08 23:18:50.999| comm_calliocallback: (nil)
2003/11/08 23:18:50.999| comm_iocallbackpending: (nil)
2003/11/08 23:18:50.999| comm_calliocallback: (nil)
2003/11/08 23:18:50.999| comm_iocallbackpending: (nil)
2003/11/08 23:18:50.999| comm_calliocallback: (nil)
Reverting the patch and squid works fine again.
Thanks,
Reuben
At 05:36 a.m. 8/11/2003, David Nicklay wrote:
>Hi,
>
>oops. Forgot to post the attachment. Here goes.
>
>Henrik Nordstrom wrote:
>>Can we please have the patch clean again.. (preferably as a MIME
>>attachment). I don't seem to have the original message left in my
>>archives, and trying to recover the patch from the inline discussion is a
>>bit cumbersome due to linewraps and other destructive email formatting
>>effects..
>>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.
This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:20:46 MST