diff options
author | attilio <attilio@FreeBSD.org> | 2013-05-13 15:40:51 +0000 |
---|---|---|
committer | attilio <attilio@FreeBSD.org> | 2013-05-13 15:40:51 +0000 |
commit | 291f413ed8d0dec9c88fc58da7a31334ad3c09cd (patch) | |
tree | f5e951fdd104c25d0807d6e05ce05e3ff0c03bde /sys/vm/vm_phys.h | |
parent | 3ab4b4db19663ed22fdaf264f9401d1d2a38371d (diff) | |
download | FreeBSD-src-291f413ed8d0dec9c88fc58da7a31334ad3c09cd.zip FreeBSD-src-291f413ed8d0dec9c88fc58da7a31334ad3c09cd.tar.gz |
o Add accessor functions to add and remove pages from a specific
freelist.
o Split the pool of free pages queues really by domain and not rely on
definition of VM_RAW_NFREELIST.
o For MAXMEMDOM > 1, wrap the RR allocation logic into a specific
function that is called when calculating the allocation domain.
The RR counter is kept, currently, per-thread.
In the future it is expected that such function evolves in a real
policy decision referee, based on specific informations retrieved by
per-thread and per-vm_object attributes.
o Add the concept of "probed domains" under the form of vm_ndomains.
It is responsibility for every architecture willing to support multiple
memory domains to correctly probe vm_ndomains along with mem_affinity
segments attributes. Those two values are supposed to remain always
consistent.
Please also note that vm_ndomains and td_dom_rr_idx are both int
because segments already store domains as int. Ideally u_int would
have much more sense. Probabilly this should be cleaned up in the
future.
o Apply RR domain selection also to vm_phys_zero_pages_idle().
Sponsored by: EMC / Isilon storage division
Partly obtained from: jeff
Reviewed by: alc
Tested by: jeff
Diffstat (limited to 'sys/vm/vm_phys.h')
-rw-r--r-- | sys/vm/vm_phys.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/vm/vm_phys.h b/sys/vm/vm_phys.h index 7b7b33b..9812816 100644 --- a/sys/vm/vm_phys.h +++ b/sys/vm/vm_phys.h @@ -48,6 +48,7 @@ struct mem_affinity { }; extern struct mem_affinity *mem_affinity; +extern int vm_ndomains; /* * The following functions are only to be used by the virtual memory system. |