more on Linux and filedescriptors

From: Martin Hamilton <martin@dont-contact.us>
Date: Mon, 11 Jan 1999 23:55:11 +0000

-----BEGIN PGP SIGNED MESSAGE-----

I'm finding it hard to persuade the Linux 2.2 kernel and Squid to
cooperate on the number of available file descriptors. Squid has a
routine - setMaxFD() in src/tools.c - which tries to set the upper
limit on the number of file descriptors available to Squid.

This number of FDs always seems (for me :-) to want to default to
1024, even after tweaking:
 
  . the auto-detected values of DEFAULT_FD_SETSIZE and SQUID_MAXFD
      in include/autoconf.h
  . the value of /proc/sys/fs/file-max (all we should need to do
      in theory ? :-)
  . NR_OPEN in <linux/fs.h>
  . NR_OPEN in <linux/limits.h>
  . OPEN_MAX in <linux/limits.h>
  . __FD_SETSIZE in <linux/posix_types.h>
  . FD_SETSIZE in <gnu/types.h>

I've been setting all of the above to 4096, but Squid always reports
256 FDs on startup (in the 'cache' log), and 1024 via the cache
manager interface. This is on a stock RedHat 5.2 box with the
2.2.0-preN kernel installed - where N is currently 6.

I'm not sure if this is a bug in the Linux kernel, a problem with the
way Squid figures out how many file descriptors are available, or just
me being dumb about what I should be changing with the 2.2 kernel.

I'd naively assumed that the value of SQUID_MAXFD would be propagated
through from include/autoconf.h right through into the Squid binaries,
but this doesn't seem to be happening.

Sayonara!

Martin

-----BEGIN PGP SIGNATURE-----
Version: 2.6.3i
Charset: noconv
Comment: Processed by Mailcrypt 3.4, an Emacs/PGP interface

iQCVAwUBNpqPUtZdpXZXTSjhAQEe3QP9HHMk8SLOynnnbcn0VcvxR2v+GGcoEkN3
FmhhpHLSpKlZYYc+Z6Sj4z+znfUySwS8wYuXv7w+M5YPNmr8lI1izOB8dwpV/di6
eG6ep9gTd6itJG0VsxvM9Y64dkYiYWpw6CtioEFYVX6vpOG559SNDGN/IF29m+AX
5CHN7y1Hisk=
=nFtZ
-----END PGP SIGNATURE-----
Received on Tue Jul 29 2003 - 13:15:55 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:12:02 MST