summaryrefslogtreecommitdiffstats
path: root/sys/vm/uma.h
diff options
context:
space:
mode:
authorjeff <jeff@FreeBSD.org>2002-06-17 22:02:41 +0000
committerjeff <jeff@FreeBSD.org>2002-06-17 22:02:41 +0000
commit030d3fdb720958d03b806333c701404e96a45088 (patch)
treefe7766503110bc305fe17c75033e53e8bff19901 /sys/vm/uma.h
parentba0c1d407b5f3469a8026b32d1ea0c5605c9018a (diff)
downloadFreeBSD-src-030d3fdb720958d03b806333c701404e96a45088.zip
FreeBSD-src-030d3fdb720958d03b806333c701404e96a45088.tar.gz
- Introduce the new M_NOVM option which tells uma to only check the currently
allocated slabs and bucket caches for free items. It will not go ask the vm for pages. This differs from M_NOWAIT in that it not only doesn't block, it doesn't even ask. - Add a new zcreate option ZONE_VM, that sets the BUCKETCACHE zflag. This tells uma that it should only allocate buckets out of the bucket cache, and not from the VM. It does this by using the M_NOVM option to zalloc when getting a new bucket. This is so that the VM doesn't recursively enter itself while trying to allocate buckets for vm_map_entry zones. If there are already allocated buckets when we get here we'll still use them but otherwise we'll skip it. - Use the ZONE_VM flag on vm map entries and pv entries on x86.
Diffstat (limited to 'sys/vm/uma.h')
-rw-r--r--sys/vm/uma.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/vm/uma.h b/sys/vm/uma.h
index fb144cf..2b35360 100644
--- a/sys/vm/uma.h
+++ b/sys/vm/uma.h
@@ -173,6 +173,7 @@ uma_zone_t uma_zcreate(char *name, size_t size, uma_ctor ctor, uma_dtor dtor,
#define UMA_ZONE_MALLOC 0x0010 /* For use by malloc(9) only! */
#define UMA_ZONE_NOFREE 0x0020 /* Do not free slabs of this type! */
#define UMA_ZONE_MTXCLASS 0x0040 /* Create a new lock class */
+#define UMA_ZONE_VM 0x0080 /* Used for internal vm datastructures */
/* Definitions for align */
#define UMA_ALIGN_PTR (sizeof(void *) - 1) /* Alignment fit for ptr */
OpenPOWER on IntegriCloud