xmalloc: statically initialize pool list head and lock
authorJan Beulich <jbeulich@suse.com>
Thu, 11 Apr 2019 08:25:22 +0000 (10:25 +0200)
committerJan Beulich <jbeulich@suse.com>
Thu, 11 Apr 2019 08:25:22 +0000 (10:25 +0200)
There's no need to execute any instructions for doing so.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: George Dunlap <george.dunlap@citrix.com>
Reviewed-by: Wei Liu <wei.liu2@citrix.com>
xen/common/xmalloc_tlsf.c

index b256dc56cfc83f5a18e30bc4b7b63daf2b6077b7..2076953ac48bccd7e1006b8f378b64b4c597132e 100644 (file)
@@ -65,8 +65,8 @@
 #define PREV_FREE       (0x2)
 #define PREV_USED       (0x0)
 
-static spinlock_t pool_list_lock;
-static struct list_head pool_list_head;
+static DEFINE_SPINLOCK(pool_list_lock);
+static LIST_HEAD(pool_list_head);
 
 struct free_ptr {
     struct bhdr *prev;
@@ -551,8 +551,6 @@ static void *xmalloc_whole_pages(unsigned long size, unsigned long align)
 
 static void tlsf_init(void)
 {
-    INIT_LIST_HEAD(&pool_list_head);
-    spin_lock_init(&pool_list_lock);
     xenpool = xmem_pool_create(
         "xmalloc", xmalloc_pool_get, xmalloc_pool_put,
         PAGE_SIZE, 0, PAGE_SIZE);