cvs commit: src/sys/vm vm_contig.c
alc at cs.rice.edu
Mon Jun 14 20:22:47 PDT 2004
On Mon, Jun 14, 2004 at 10:45:36PM -0400, Brian Feldman wrote:
> On Tue, Jun 15, 2004 at 01:02:00AM +0000, Brian Feldman wrote:
> > green 2004-06-15 01:02:00 UTC
> > FreeBSD src repository
> > Modified files:
> > sys/vm vm_contig.c
> > Log:
> > Make contigmalloc() more reliable:
> By the way, I'd be interested in specific "contigmalloc() wishlist"
> items anyone may have at this point. I think it could stand for a
> rewrite so it could be a lot more reliable still. On my system, the
> contigmalloc() still doesn't succeed if I don't stop any compilations
> currently in progress, but "totally reliable" isn't something that
> contigmalloc() was written in mind with.
> Peter Wemm expressed concern that contigmalloc() should really be
> allocating things from the top of usable physical memory. In addition
> to just rewriting it so that the page-by-page allocation is done
> transactionally and getting rid of the ugliness of unneededly forcing
> out all active and inactive pages possible, are there other major items?
Separate the physical memory allocation from the virtual address space
allocation. Specifically, there should be a function that I'll call
vm_page_alloc_contig() that returns a pointer to the first of n
consecutive vm_page's from the vm_page array. No kernel virtual
addresses would be allocated by this function.
More information about the cvs-all