diff options
author | Ariane van der Steldt <ariane@cvs.openbsd.org> | 2009-06-01 17:42:34 +0000 |
---|---|---|
committer | Ariane van der Steldt <ariane@cvs.openbsd.org> | 2009-06-01 17:42:34 +0000 |
commit | d30afc0ec38415711bc30130e9412a6026468e8b (patch) | |
tree | ee3b3b40a267f69f54dca2c401c95db8de083c91 /sys/uvm/uvm_extern.h | |
parent | f5deafb272a62d5cf541c0d5ded06c603823ad2f (diff) |
physmem allocator: change the view of free memory from single free pages
to free ranges.
Classify memory based on region with associated use-counter (which is used
to construct a priority list of where to allocate memory).
Based on code from tedu@, help from many.
Ok art@
Diffstat (limited to 'sys/uvm/uvm_extern.h')
-rw-r--r-- | sys/uvm/uvm_extern.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/sys/uvm/uvm_extern.h b/sys/uvm/uvm_extern.h index 5ff1e2ddad2..bc6a766590a 100644 --- a/sys/uvm/uvm_extern.h +++ b/sys/uvm/uvm_extern.h @@ -1,4 +1,4 @@ -/* $OpenBSD: uvm_extern.h,v 1.76 2009/04/20 00:30:18 oga Exp $ */ +/* $OpenBSD: uvm_extern.h,v 1.77 2009/06/01 17:42:33 ariane Exp $ */ /* $NetBSD: uvm_extern.h,v 1.57 2001/03/09 01:02:12 chs Exp $ */ /* @@ -221,11 +221,12 @@ typedef int vm_prot_t; #define UVM_PGA_ZERO 0x0002 /* returned page must be zeroed */ /* - * flags for uvm_pglistalloc() + * flags for uvm_pglistalloc() and uvm_pmr_getpages() */ #define UVM_PLA_WAITOK 0x0001 /* may sleep */ #define UVM_PLA_NOWAIT 0x0002 /* can't sleep (need one of the two) */ #define UVM_PLA_ZERO 0x0004 /* zero all pages before returning */ +#define UVM_PLA_TRY_CONTIG 0x0008 /* try to allocate a contig range */ /* * lockflags that control the locking behavior of various functions. @@ -589,6 +590,10 @@ int uvm_pglistalloc(psize_t, paddr_t, struct pglist *, int, int); void uvm_pglistfree(struct pglist *); +/* uvm_pmemrange.c */ + +void uvm_pmr_use_inc(paddr_t, paddr_t); + /* uvm_swap.c */ void uvm_swap_init(void); |