diff options
-rw-r--r-- | sys/vm/uma_core.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/vm/uma_core.c b/sys/vm/uma_core.c index 1a585a7..fd15954 100644 --- a/sys/vm/uma_core.c +++ b/sys/vm/uma_core.c @@ -2119,6 +2119,13 @@ sysctl_vm_zone(SYSCTL_HANDLER_ARGS) cachefree += cache->uc_freebucket->ub_ptr + 1; CPU_UNLOCK(cpu); } + /* + * The "UMA Zones" zone (master zone) does not have pcpu + * caches allocated for it, so the above computation is entirely + * bogus. Re-set cachefree to 0 in that case. + */ + if (z == zones) + cachefree = 0; LIST_FOREACH(bucket, &z->uz_full_bucket, ub_link) { cachefree += bucket->ub_ptr + 1; } |