On Mon, 19 Sep 2005, Adrian Chadd wrote:

IIRC, you could replace the statically defined arrays based on MAXFD with
a start-up initialised array based on whatever you detect ulimit to be.
I can't imagine that'd be an intrusive patch and I can't remember anything
that would clash with this when I was working on it.

This is not the main problem. The main problem is delay pools and a few other minor things still using fd_set or other FD_SETSIZE derived data types.

Yo'ud just have to replace the SQUID_MAXFD define with a variable or inline
function thats assigned once early in main() then allocate the arrays
for the squidfd struct and the delay pool stuff. It might be a good idea
to finally rip out any use of fdset outside of the select() code.

Yes, but not material for Squid-2.5.

Yeah. src/delaypools.c still uses fdsets. Replacing delay_no_delay with a
char array would fix that. I had a patch to do that but I don't remember
why I didn't commit it, or why it wasn't thought of as a good idea.

There should be some discussion in the squid-dev archives regarding this IIRC. Probably me rejecting this change for the STABLE cycle of 2.5. There is some discussion related to this in the last days February 2003 where you submitted a patch on the grounds that your Squid was apparently unstable when using fd_set.

   http://www.squid-cache.org/mail-archive/squid-dev/200302/0227.html

ending with me not being very happy about making this large change in 2.5 and asking you to verify the facts about the instability you experienced one more time..

   http://www.squid-cache.org/mail-archive/squid-dev/200302/0240.html
   http://www.squid-cache.org/mail-archive/squid-dev/200302/0245.html

Regards
Henrik

Reply via email to