summaryrefslogtreecommitdiffstats
path: root/sys/vm/uma_dbg.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/vm/uma_dbg.c')
-rw-r--r--sys/vm/uma_dbg.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/vm/uma_dbg.c b/sys/vm/uma_dbg.c
index 729558b..c5ca8c8 100644
--- a/sys/vm/uma_dbg.c
+++ b/sys/vm/uma_dbg.c
@@ -42,6 +42,9 @@
#include <sys/mutex.h>
#include <sys/malloc.h>
+#include <vm/vm.h>
+#include <vm/vm_object.h>
+#include <vm/vm_page.h>
#include <vm/uma.h>
#include <vm/uma_int.h>
#include <vm/uma_dbg.h>
@@ -194,10 +197,8 @@ uma_dbg_getslab(uma_zone_t zone, void *item)
mem = (u_int8_t *)((unsigned long)item & (~UMA_SLAB_MASK));
if (zone->uz_flags & UMA_ZFLAG_MALLOC) {
- mtx_lock(&malloc_mtx);
- slab = hash_sfind(mallochash, mem);
- mtx_unlock(&malloc_mtx);
- } else if (zone->uz_flags & UMA_ZFLAG_OFFPAGE) {
+ slab = vtoslab((vm_offset_t)mem);
+ } else if (zone->uz_flags & UMA_ZFLAG_HASH) {
ZONE_LOCK(zone);
slab = hash_sfind(&zone->uz_hash, mem);
ZONE_UNLOCK(zone);
OpenPOWER on IntegriCloud