diff options
author | attilio <attilio@FreeBSD.org> | 2013-02-24 16:41:36 +0000 |
---|---|---|
committer | attilio <attilio@FreeBSD.org> | 2013-02-24 16:41:36 +0000 |
commit | 12289fcebc849f6eda9d53961cd2088c39310599 (patch) | |
tree | 7047ab7ee00ab2136a9fcd785a9ad30af0de326f /sys/vm/vm_object.h | |
parent | 6b1291b4d1f698048c27a58ed4ac41557801cf6d (diff) | |
download | FreeBSD-src-12289fcebc849f6eda9d53961cd2088c39310599.zip FreeBSD-src-12289fcebc849f6eda9d53961cd2088c39310599.tar.gz |
Retire the old UMA primitive uma_zone_set_obj() and replace it with the
more modern uma_zone_reserve_kva(). The difference is that it doesn't
rely anymore on an obj to allocate pages and the slab allocator doesn't
use any more any specific locking but atomic operations to complete
the operation.
Where possible, the uma_small_alloc() is instead used and the uk_kva
member becomes unused.
The subsequent cleanups also brings along the removal of
VM_OBJECT_LOCK_INIT() macro which is not used anymore as the code
can be easilly cleaned up to perform a single mtx_init(), private
to vm_object.c.
For the same reason, _vm_object_allocate() becomes private as well.
Sponsored by: EMC / Isilon storage division
Reviewed by: alc
Diffstat (limited to 'sys/vm/vm_object.h')
-rw-r--r-- | sys/vm/vm_object.h | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/sys/vm/vm_object.h b/sys/vm/vm_object.h index be454f5..2cfd37f 100644 --- a/sys/vm/vm_object.h +++ b/sys/vm/vm_object.h @@ -208,9 +208,6 @@ extern struct vm_object kmem_object_store; #define VM_OBJECT_LOCK(object) mtx_lock(&(object)->mtx) #define VM_OBJECT_LOCK_ASSERT(object, type) \ mtx_assert(&(object)->mtx, (type)) -#define VM_OBJECT_LOCK_INIT(object, type) \ - mtx_init(&(object)->mtx, "vm object", \ - (type), MTX_DEF | MTX_DUPOK) #define VM_OBJECT_LOCKED(object) mtx_owned(&(object)->mtx) #define VM_OBJECT_MTX(object) (&(object)->mtx) #define VM_OBJECT_TRYLOCK(object) mtx_trylock(&(object)->mtx) @@ -241,7 +238,6 @@ vm_object_cache_is_empty(vm_object_t object) } vm_object_t vm_object_allocate (objtype_t, vm_pindex_t); -void _vm_object_allocate (objtype_t, vm_pindex_t, vm_object_t); boolean_t vm_object_coalesce(vm_object_t, vm_ooffset_t, vm_size_t, vm_size_t, boolean_t); void vm_object_collapse (vm_object_t); |