summaryrefslogtreecommitdiffstats
path: root/sys/vm/uma_int.h
diff options
context:
space:
mode:
authorjeff <jeff@FreeBSD.org>2003-09-19 23:27:46 +0000
committerjeff <jeff@FreeBSD.org>2003-09-19 23:27:46 +0000
commitaccdfbd6265c14ec2d89df2a586816981de7c8aa (patch)
treea0aa2bf104f24df4b2bdd54c03e8e9611e4b51da /sys/vm/uma_int.h
parent282f47fbc761b0f25d1ced2774e9ddd76067d9d6 (diff)
downloadFreeBSD-src-accdfbd6265c14ec2d89df2a586816981de7c8aa.zip
FreeBSD-src-accdfbd6265c14ec2d89df2a586816981de7c8aa.tar.gz
- Remove the working-set algorithm. Instead, use the per cpu buckets as the
working set cache. This has several advantages. Firstly, we never touch the per cpu queues now in the timeout handler. This removes one more reason for having per cpu locks. Secondly, it reduces the size of the zone by 8 bytes, bringing it under 200 bytes for a single proc x86 box. This tidies up other logic as well. - The 'destroy' flag no longer needs to be passed to zone_drain() since it always frees everything in the zone's slabs. - cache_drain() is now only called from zone_dtor() and so it destroys by default. It also does not need the destroy parameter now.
Diffstat (limited to 'sys/vm/uma_int.h')
-rw-r--r--sys/vm/uma_int.h7
1 files changed, 1 insertions, 6 deletions
diff --git a/sys/vm/uma_int.h b/sys/vm/uma_int.h
index 1828c94..b25468b 100644
--- a/sys/vm/uma_int.h
+++ b/sys/vm/uma_int.h
@@ -103,9 +103,7 @@
#define UMA_SLAB_MASK (PAGE_SIZE - 1) /* Mask to get back to the page */
#define UMA_SLAB_SHIFT PAGE_SHIFT /* Number of bits PAGE_MASK */
-#define UMA_BOOT_PAGES 30 /* Number of pages allocated for startup */
-#define UMA_WORKING_TIME 20 /* Seconds worth of items to keep */
-
+#define UMA_BOOT_PAGES 30 /* Pages allocated for startup */
/* Max waste before going to off page slab management */
#define UMA_MAX_WASTE (UMA_SLAB_SIZE / 10)
@@ -117,7 +115,6 @@
*/
#define UMA_HASH_SIZE_INIT 32
-
/*
* I should investigate other hashing algorithms. This should yield a low
* number of collisions if the pages are relatively contiguous.
@@ -231,8 +228,6 @@ struct uma_zone {
struct vm_object *uz_obj; /* Zone specific object */
vm_offset_t uz_kva; /* Base kva for zones with objs */
u_int32_t uz_maxpages; /* Maximum number of pages to alloc */
- u_int64_t uz_oallocs; /* old allocs count */
- u_int64_t uz_wssize; /* Working set size */
int uz_recurse; /* Allocation recursion count */
uint16_t uz_fills; /* Outstanding bucket fills */
uint16_t uz_count; /* Highest value ub_ptr can have */
OpenPOWER on IntegriCloud