Re: max fd's in linux

From: Dancer <dancer@dont-contact.us>
Date: Mon, 05 Oct 1998 23:37:20 +1000

Brian wrote:
>
> >
> > If the patch you are using is the patch I am thinking of, it only
> > patches the kernel, and not the library headers as well (as the previous
> > patch did).
> >
> > Apparently the increased value of FD_SETSIZE is picked up, but there are
> > a couple other library constants that might get missed. Such is life. I
> > hand-hack around such inconveniences.
>
> Its the patch recomended by Linus and linked to off his homepage. It does
> patch the header files:

These same values are mirrored by some of the C library headers,
specifically /usr/include/gnu/types.h

The very good
ftp://ftp.is.co.za/linux/local/kernel/filehandle.patch.linux.v7 deals
with this, while the even better
ftp://ftp.is.co.za/linux/local/kernel/filehandle.patch.linux.v8 alas,
does not.

D

>
> here is a section of the patch:
>
> diff -ruN --exclude *.orig --exclude *.rej --exclude *~
> linux-2.0.34pre15-secure/include/linux/fs.h linux/include/linux/fs.h
> --- linux-2.0.34pre15-secure/include/linux/fs.h Thu May 21 13:52:40 1998
> +++ linux/include/linux/fs.h Thu May 21 13:30:22 1998
> @@ -27,7 +27,7 @@
>
> /* Fixed constants first: */
> #undef NR_OPEN
> -#define NR_OPEN 256
> +#define NR_OPEN 3000
>
> #define NR_SUPER 64
> #define BLOCK_SIZE 1024
>
> --- linux-2.0.34pre15-secure/include/linux/limits.h Wed Jul 17
> 08:10:03 1996+++ linux/include/linux/limits.h Thu May 21 13:30:22 1998
> @@ -1,7 +1,7 @@
> #ifndef _LINUX_LIMITS_H
> #define _LINUX_LIMITS_H
>
> -#define NR_OPEN 256
> +#define NR_OPEN 3000
>
> #define NGROUPS_MAX 32 /* supplemental group IDs are available */
> #define ARG_MAX 131072 /* # bytes of args + environ for exec() */
>
> diff -ruN --exclude *.orig --exclude *.rej --exclude *~
> linux-2.0.34pre15-secure/include/linux/posix_types.h
> linux/include/linux/posix_types.h
> --- linux-2.0.34pre15-secure/include/linux/posix_types.h Sat Oct 25
> 09:35:58
> 1997
> +++ linux/include/linux/posix_types.h Thu May 21 13:30:22 1998
> @@ -30,7 +30,7 @@
> #define __NFDBITS (8 * sizeof(unsigned long))
>
> #undef __FD_SETSIZE
> -#define __FD_SETSIZE 1024
> +#define __FD_SETSIZE 4096
>
> #undef __FDSET_LONGS
> #define __FDSET_LONGS (__FD_SETSIZE/__NFDBITS)
>
> so you see, its doing alot of header file patching. I don't know how to
> patch squid though to make use of it, I was counting on Squid getting its
> information from the header files.
>
> What values does squid rely on and how can I fix this?
>
> >
> > D
> >
> > --
> > -----BEGIN GEEK CODE BLOCK-----
> > Version: 3.1
> > GAT d- s++: a C++++$ UL++++B+++S+++C++H++U++V+++$ P+++$ L+++ E-
> > W+++(--)$ N++ w++$>--- t+ 5++ X+() R+ tv b++++ DI+++ e- h-@
> > ------END GEEK CODE BLOCK------
> >
>
> --------------------------------------------------------------------------
> Brian Feeny (BF304) | ShreveNet Inc. - Premium Internet Service Provider
> Network Administrator | Shreveport, Louisiana - http://www.shreve.net/
> signal@shreve.net | Web Hosting, Virtual Domains, Storefronts,
> (318)222-2NET x 109 | Database/Web Integration, 56k, ISDN, T1

-- 
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GAT d- s++: a C++++$ UL++++B+++S+++C++H++U++V+++$ P+++$ L+++ E-
W+++(--)$ N++ w++$>--- t+ 5++ X+() R+ tv b++++ DI+++ e- h-@ 
------END GEEK CODE BLOCK------
Received on Mon Oct 05 1998 - 06:39:06 MDT

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