summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_object.h
diff options
context:
space:
mode:
authorattilio <attilio@FreeBSD.org>2013-02-24 16:41:36 +0000
committerattilio <attilio@FreeBSD.org>2013-02-24 16:41:36 +0000
commit12289fcebc849f6eda9d53961cd2088c39310599 (patch)
tree7047ab7ee00ab2136a9fcd785a9ad30af0de326f /sys/vm/vm_object.h
parent6b1291b4d1f698048c27a58ed4ac41557801cf6d (diff)
downloadFreeBSD-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.h4
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);
OpenPOWER on IntegriCloud