Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 20 Feb 1997 16:03:52 +0300 (MSK)
From:      =?KOI8-R?B?4c7E0sXKIP7F0s7P1w==?= <ache@nagual.ru>
To:        Bruce Evans <bde@freefall.freebsd.org>
Cc:        CVS-committers@freefall.freebsd.org, cvs-all@freefall.freebsd.org, cvs-sys@freefall.freebsd.org
Subject:   Re: cvs commit:  src/sys/kern sys_generic.c
Message-ID:  <Pine.BSF.3.95q.970220155115.662A-100000@nagual.ru>
In-Reply-To: <199702201151.DAA07900@freefall.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 20 Feb 1997, Bruce Evans wrote:

> bde         97/02/20 03:51:53
> 
>   Modified:    sys/kern  sys_generic.c
>   Log:
>   Improved select():
>   - avoid malloc() if the number of fds is small.
>   - pack the bits better so that `small' is quite large.
>   - don't waste time generating zero bits for null fd_set pointers or
>     scanning these bits.
>   
>   Possibly improved select():
>   - free malloc()ed storage before returning.  This is simpler and I
>     think huge select()s aren't worth optimizing since they are rare,
>     relative gain would be small and there would be tiny costs for all
>     selects().

Thanks, but I see no commit for removing p_selbits_size and p_selbits
fields from struct proc... kern_exit.c also does free for p_selbits and
needs fixing after remove.

BTW, do we really need free() of malloc storage before return? If program
use huge select once, in most practical cases it will mean that the same
select code will be executed again, i.e. the same hudge select will be
malloced/freeed. Maybe return to old p_selbits caching scheme?

-- 
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.970220155115.662A-100000>