Date: Sun, 16 Feb 1997 10:09:27 +0300 (MSK) From: =?KOI8-R?B?4c7E0sXKIP7F0s7P1w==?= <ache@nagual.ru> To: Bruce Evans <bde@zeta.org.au> Cc: cvs-all@freefall.freebsd.org, CVS-committers@freefall.freebsd.org, cvs-sys@freefall.freebsd.org Subject: Re: cvs commit: src/sys/sys types.h Message-ID: <Pine.BSF.3.95q.970216100350.593B-100000@nagual.ru> In-Reply-To: <199702160334.OAA05142@godzilla.zeta.org.au>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 16 Feb 1997, Bruce Evans wrote: > Please back it out. The kernel is not read for this. It always rounds up > to a multiple of FD_SETSIZE bits. This will clobber old applications. While I back it out, it seems that the kernel illegally use FD_SETSIZE now for rounding up, this process not related directly to FD_SETSIZE. What about adding in sys_generic.c something like #define FD_ROUNDSIZE 256 and use it instead of FD_SETSIZE for rounding? In this way existen apps will work. > It also bzeros a multiple of 6 * FDSETSIZE bits. This will take a > fairly long time with a large FD_SETSIZE. It already takes too long. > All this is because select() is specified to handle `struct fd_set's. > The kernel handles whole objects. This problem fixes too by using FD_ROUNDSIZE instead of FD_SETSIZE. I.e. only roundup2(nfd, 256) bits will be zeroed. I plan to fix sys_generic.c, any objections? -- Andrey A. Chernov <ache@null.net> http://www.nagual.ru/~ache/
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.95q.970216100350.593B-100000>