svn commit: r327981 - user/markj/netdump/sys/vm
Mark Johnston
markj at FreeBSD.org
Mon Jan 15 00:47:34 UTC 2018
Author: markj
Date: Mon Jan 15 00:47:33 2018
New Revision: 327981
URL: https://svnweb.freebsd.org/changeset/base/327981
Log:
Add a flag to disable per-CPU item caching in a given zone.
Modified:
user/markj/netdump/sys/vm/uma.h
user/markj/netdump/sys/vm/uma_core.c
Modified: user/markj/netdump/sys/vm/uma.h
==============================================================================
--- user/markj/netdump/sys/vm/uma.h Mon Jan 15 00:29:17 2018 (r327980)
+++ user/markj/netdump/sys/vm/uma.h Mon Jan 15 00:47:33 2018 (r327981)
@@ -265,8 +265,8 @@ uma_zone_t uma_zcache_create(char *name, int size, uma
* information in the vm_page.
*/
#define UMA_ZONE_SECONDARY 0x0200 /* Zone is a Secondary Zone */
-/* 0x0400 Unused */
-#define UMA_ZONE_MAXBUCKET 0x0800 /* Use largest buckets */
+#define UMA_ZONE_NOBUCKET 0x0400 /* Do not use buckets. */
+#define UMA_ZONE_MAXBUCKET 0x0800 /* Use largest buckets. */
#define UMA_ZONE_CACHESPREAD 0x1000 /*
* Spread memory start locations across
* all possible cache lines. May
Modified: user/markj/netdump/sys/vm/uma_core.c
==============================================================================
--- user/markj/netdump/sys/vm/uma_core.c Mon Jan 15 00:29:17 2018 (r327980)
+++ user/markj/netdump/sys/vm/uma_core.c Mon Jan 15 00:47:33 2018 (r327981)
@@ -1659,10 +1659,12 @@ zone_ctor(void *mem, int size, void *udata, int flags)
}
out:
- if ((arg->flags & UMA_ZONE_MAXBUCKET) == 0)
- zone->uz_count = bucket_select(zone->uz_size);
- else
+ if ((arg->flags & UMA_ZONE_MAXBUCKET) != 0)
zone->uz_count = BUCKET_MAX;
+ else if ((arg->flags & UMA_ZONE_NOBUCKET) != 0)
+ zone->uz_count = 0;
+ else
+ zone->uz_count = bucket_select(zone->uz_size);
zone->uz_count_min = zone->uz_count;
return (0);
More information about the svn-src-user
mailing list