diff options
author | Ariane van der Steldt <ariane@cvs.openbsd.org> | 2012-03-09 13:01:30 +0000 |
---|---|---|
committer | Ariane van der Steldt <ariane@cvs.openbsd.org> | 2012-03-09 13:01:30 +0000 |
commit | 193e3efb70083a72f3d299ea5f129cf83d547115 (patch) | |
tree | e7c9b8d210fe2b29062f1cf3a40c093bdf14800d /sys/uvm/uvm_extern.h | |
parent | dbaaf4ad89f61a154abf6b48600210ec50ecb62c (diff) |
New vmmap implementation.
no oks (it is really a pain to review properly)
extensively tested, I'm confident it'll be stable
'now is the time' from several icb inhabitants
Diff provides:
- ability to specify different allocators for different regions/maps
- a simpler implementation of the current allocator
- currently in compatibility mode: it will generate similar addresses
as the old allocator
Diffstat (limited to 'sys/uvm/uvm_extern.h')
-rw-r--r-- | sys/uvm/uvm_extern.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/uvm/uvm_extern.h b/sys/uvm/uvm_extern.h index 201abdb923a..991a44d4776 100644 --- a/sys/uvm/uvm_extern.h +++ b/sys/uvm/uvm_extern.h @@ -1,4 +1,4 @@ -/* $OpenBSD: uvm_extern.h,v 1.103 2011/07/08 00:10:59 tedu Exp $ */ +/* $OpenBSD: uvm_extern.h,v 1.104 2012/03/09 13:01:29 ariane Exp $ */ /* $NetBSD: uvm_extern.h,v 1.57 2001/03/09 01:02:12 chs Exp $ */ /* @@ -185,6 +185,7 @@ typedef int vm_prot_t; #define UVM_FLAG_AMAPPAD 0x100000 /* for bss: pad amap to reduce malloc() */ #define UVM_FLAG_TRYLOCK 0x200000 /* fail if we can not lock map */ #define UVM_FLAG_HOLE 0x400000 /* no backend */ +#define UVM_FLAG_QUERY 0x800000 /* do everything, except actual execution */ /* macros to extract info */ #define UVM_PROTECTION(X) ((X) & UVM_PROT_MASK) @@ -644,10 +645,9 @@ void km_free(void *, size_t, const struct kmem_va_mode *, const struct kmem_pa_mode *); /* uvm_map.c */ -#define uvm_map(_m, _a, _sz, _u, _f, _al, _fl) uvm_map_p(_m, _a, _sz, _u, _f, _al, _fl, 0) -int uvm_map_p(vm_map_t, vaddr_t *, vsize_t, +int uvm_map(vm_map_t, vaddr_t *, vsize_t, struct uvm_object *, voff_t, vsize_t, - uvm_flag_t, struct proc *); + uvm_flag_t); int uvm_map_pageable(vm_map_t, vaddr_t, vaddr_t, boolean_t, int); int uvm_map_pageable_all(vm_map_t, int, vsize_t); |