Index: test/mm/falloc1/test.c
===================================================================
--- test/mm/falloc1/test.c	(revision 4e147a6b5728fbdb666c31b993900fd3d6681518)
+++ test/mm/falloc1/test.c	(revision a294ad07c4e1a72ddd9bcff5b35ee94dc3ec6e28)
@@ -56,5 +56,5 @@
 			allocated = 0;
 			for (i = 0; i < MAX_FRAMES >> order; i++) {
-				frames[allocated] = frame_alloc(FRAME_ATOMIC | FRAME_KA, order, &status);
+				frames[allocated] = frame_alloc(FRAME_ATOMIC | FRAME_KA, order, &status, NULL);
 				
 				if (ALIGN_UP(frames[allocated], FRAME_SIZE << order) != frames[allocated]) {
Index: test/mm/falloc2/test.c
===================================================================
--- test/mm/falloc2/test.c	(revision 4e147a6b5728fbdb666c31b993900fd3d6681518)
+++ test/mm/falloc2/test.c	(revision a294ad07c4e1a72ddd9bcff5b35ee94dc3ec6e28)
@@ -64,5 +64,5 @@
 			allocated = 0;
 			for (i = 0; i < (MAX_FRAMES >> order); i++) {
-				frames[allocated] = frame_alloc(FRAME_ATOMIC | FRAME_KA, order, &status);
+				frames[allocated] = frame_alloc(FRAME_ATOMIC | FRAME_KA, order, &status, NULL);
 				if (status == 0) {
 					memsetb(frames[allocated], FRAME_SIZE << order, val);
Index: test/mm/mapping1/test.c
===================================================================
--- test/mm/mapping1/test.c	(revision 4e147a6b5728fbdb666c31b993900fd3d6681518)
+++ test/mm/mapping1/test.c	(revision a294ad07c4e1a72ddd9bcff5b35ee94dc3ec6e28)
@@ -48,6 +48,6 @@
 	printf("Memory management test mapping #1\n");
 
-	frame0 = frame_alloc(FRAME_KA, ONE_FRAME, NULL);
-	frame1 = frame_alloc(FRAME_KA, ONE_FRAME, NULL);	
+	frame0 = frame_alloc(FRAME_KA, ONE_FRAME, NULL, NULL);
+	frame1 = frame_alloc(FRAME_KA, ONE_FRAME, NULL, NULL);	
 
 	printf("Writing %L to physical address %P.\n", VALUE0, KA2PA(frame0));
Index: test/mm/slab1/test.c
===================================================================
--- test/mm/slab1/test.c	(revision 4e147a6b5728fbdb666c31b993900fd3d6681518)
+++ test/mm/slab1/test.c	(revision a294ad07c4e1a72ddd9bcff5b35ee94dc3ec6e28)
@@ -29,7 +29,36 @@
 #include <test.h>
 #include <mm/slab.h>
+#include <print.h>
+
+#define VAL_SIZE    128
+#define VAL_COUNT   1024
+
+void * data[16384];
 
 void test(void) 
 {
-	slab_cache_create("test_cache", 10, 0, NULL, NULL, 0);
+	slab_cache_t *cache;
+	int i;
+	
+
+	printf("Creating cache.\n");
+	cache = slab_cache_create("test_cache", VAL_SIZE, 0, NULL, NULL, SLAB_CACHE_NOMAGAZINE);
+	slab_print_list();
+	printf("Destroying cache.\n");
+	slab_cache_destroy(cache);
+
+	printf("Creating cache.\n");
+	cache = slab_cache_create("test_cache", VAL_SIZE, 0, NULL, NULL, 
+				  SLAB_CACHE_NOMAGAZINE);
+	
+	printf("Allocating %d items...", VAL_COUNT);
+	for (i=0; i < VAL_COUNT; i++) {
+		data[i] = slab_alloc(cache, 0);
+	}
+	printf("done.\n");
+	printf("Freeing %d items...", VAL_COUNT);
+	for (i=0; i < VAL_COUNT; i++) {
+		slab_free(cache, data[i]);
+	}
+	printf("done.\n");
 }
