Re: general protection faults with 2.0.30 and filehandle patch

Andi Kleen (andi@mind.aec.at)
20 May 1997 12:14:23 +0200


Oskar Pearson <oskar@is.co.za> writes:

> Hi All
>
> This is with 2.0.30 with the filehandle patch from
> www.linux.org.za/filehandle.patch.linux (or
> ftp://ftp.is.co.za/linux/local/filehandle.patch.linux)
>
> squid has been re-compiled to handle 3000 fd's per process
> and we are running libc 5.4.17

You can't run a unpatched 2.0 kernel with 3000fds per process.
The sys_select() routine will overflow the kernel stack: it puts
6*(NR_OPEN/8) bytes on the kernel stack (2250bytes for NR_OPEN=3000)
The kernel stack is currently limited to 4KB, so when an interrupt routine
occurs that needs needs much kernel stack (for example the 2940 driver)
your machine will crash.

-A.