Subject: Re: buffer cache memory management revision
To: Paul Kranenburg <>
From: Simon Burge <>
List: tech-kern
Date: 12/01/2003 13:15:19
Paul Kranenburg wrote:

> Here's a complete set of patches for the new buffer cache memory
> allocation scheme, including MD changes for all platforms.
> The MD changes on most platforms are straightforward but some need
> special attention: the alpha, mips and vax use the buffer cache
> parameters early in the bootstrap process to size up kernel mapping
> resources.  I've provided an alternative for the `(nbuf * MAXBSIZE)'
> expression used for that in various pmap modules, for which I'm now
> solliciting feed-back.

I had to remove the allocsys() calls from sbmips/sbmips/machdep.c to
build for sbmips and then shift the results of buf_memcalc() by pagesize
on the mips pmap Sysmapsize calculation (the sysmap size is in pages).
I dunno if other archs (alpha, vax) need pages or bytes for their
calculations - maybe make buf_memcalc() return pages or even call it

  old sysmapsize         =   42778
  broken new sysmapsize  = 6754378
  working new sysmapsize =   18103

The resulting kernel works fine on sbmips and evbmips/walnut so far, but
I haven't put it under too much load - just built a couple of packages.

Oh, and "sysstat bufcache" will need updating :-)  I'll try to have
a look at that if you don't.

Simon Burge                            <>
NetBSD Support and Service: