Move objcache test func
authorJack Miller <jack@codezen.org>
Mon, 28 Mar 2016 23:59:30 +0000 (18:59 -0500)
committerJack Miller <jack@codezen.org>
Mon, 28 Mar 2016 23:59:30 +0000 (18:59 -0500)
include/objcache.h
kernel/main.c
mm/objcache.c

index fcb7ecf..e1d4481 100644 (file)
@@ -34,3 +34,11 @@ struct objcache {
 void *objcache_get(struct objcache *objcache);
 void objcache_free(struct objcache *objcache, void *obj);
 void objcache_init(struct objcache *objcache, u32 obj_size);
+
+#define TEST_OBJCACHE
+
+#ifdef TEST_OBJCACHE
+void test_objcache(void);
+#else
+#define test_objcache(...)
+#endif
index 1551c9c..58c4ae9 100644 (file)
 
 #include <objcache.h>
 
-struct test_struct {
-       u64 a;
-       u64 b;
-       u64 c;
-       u64 d;
-};
-
-DEFINE_OBJCACHE(test_cache, struct test_struct);
-
 void main (void *info_phys, unsigned long end_structures)
 {
-       struct test_struct *ta, *tb;
-       int i;
-
        page_alloc_init(info_phys, end_structures);
 
        vga_init();
@@ -45,12 +33,7 @@ void main (void *info_phys, unsigned long end_structures)
        /* ACPI init probes ACPI tables and generates smp_wake calls */
        acpi_init();
 
-       /* test struct is 32 bytes, with one object worth of overhead in the cache
-        * which means 128 allocs should get us to roll over into another page
-        */
-
-       ta = objcache_get(&test_cache);
-       objcache_free(&test_cache, ta);
+       test_objcache();
 
        asm ("sti" : : );
 
index c2576c1..3cb1b88 100644 (file)
@@ -173,3 +173,20 @@ void objcache_init(struct objcache *objcache, u32 obj_size)
     else
         objcache->obj_size = MIN_OBJ_SIZE;
 }
+
+#ifdef TEST_OBJCACHE
+
+struct test_struct {
+       u64 a;
+       u64 b;
+       u64 c;
+       u64 d;
+};
+
+DEFINE_OBJCACHE(test_cache, struct test_struct);
+
+void test_objcache(void)
+{
+
+}
+#endif