summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/vm/uma_core.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/vm/uma_core.c b/sys/vm/uma_core.c
index 2f1b765..359c9e8 100644
--- a/sys/vm/uma_core.c
+++ b/sys/vm/uma_core.c
@@ -483,6 +483,8 @@ cache_drain(uma_zone_t zone)
continue;
CPU_UNLOCK(zone, cpu);
}
+
+ zone->uz_cachefree = 0;
}
/*
@@ -1878,6 +1880,7 @@ sysctl_vm_zone(SYSCTL_HANDLER_ARGS)
if (error || cnt == 0)
goto out;
offset = tmpbuf;
+ mtx_lock(&uma_mtx);
LIST_FOREACH(z, &uma_zones, uz_link) {
if (cnt == 0) /* list may have changed size */
break;
@@ -1897,6 +1900,7 @@ sysctl_vm_zone(SYSCTL_HANDLER_ARGS)
cnt--;
offset += len;
}
+ mtx_unlock(&uma_mtx);
*offset++ = '\0';
error = SYSCTL_OUT(req, tmpbuf, offset - tmpbuf);
out:
OpenPOWER on IntegriCloud