arena: fix qcache double-free
This was nasty. The qcache would be freed twice, which meant that it
would get reused twice. It resulted in the full_slab_list having weird
shit on it: it looked like a SLIST of magazines!
Signed-off-by: Barret Rhoden <brho@cs.berkeley.edu>
diff --git a/kern/src/arena.c b/kern/src/arena.c
index 5a006d9..cbf1711 100644
--- a/kern/src/arena.c
+++ b/kern/src/arena.c
@@ -174,7 +174,7 @@
for (int i = 0; i < nr_qcaches; i++) {
kc = &arena->qcaches[i];
- kmem_cache_destroy(kc);
+ __kmem_cache_destroy(kc);
}
base_free(arena, arena->qcaches,