Subject: Re: bqrelse() addition ?
To: Jaromir Dolecek <dolecek@ics.muni.cz>
From: Frank van der Linden <frank@wins.uva.nl>
List: tech-kern
Date: 04/06/2000 16:13:17
On Thu, Apr 06, 2000 at 03:25:07PM +0200, Jaromir Dolecek wrote:
> I've noticed FreeBSD has a function bqrelse() - this one is similar
> to brelse(), but doesn't put the buf on free list, just on
> LRU or AGE list as appropriate. This seems to be good for cases where
> the caller expects to need the buf again soon, e.g. when it needs to read
> something often.

We do something similar for flushed delayed writes (B_VFLUSH). I'm not
sure how much of an optimization this particular one may be for us,
but I'm very hesitant to adopt any changes like this from the
FreeBSD code, because 1) we will get UBC when 1.5 is finally branched,
which changes everything, and 2) the FreeBSD vfs_bio seems to have grown
to a size that scares me, which also makes me think twice about
adopting code from it. I'm already unhappy with the amount of
special-cased code that softdep brought with it.

Of course, if you bring it in in a clean way, and can show the
performance gains..

- Frank