diff --git a/kern/include/arena.h b/kern/include/arena.h
index 049674c..1950cc2 100644
--- a/kern/include/arena.h
+++ b/kern/include/arena.h
@@ -94,7 +94,8 @@
  * units of @quantum.  If @source is provided, the arena will alloc new segments
  * from @source, calling @afunc to alloc and @ffunc to free.  Uses a slab
  * allocator for allocations up to @qcache_max (0 = no caching). */
-struct arena *arena_create(char *name, void *base, size_t size, size_t quantum,
+struct arena *arena_create(const char *name, void *base, size_t size,
+			   size_t quantum,
                            void *(*afunc)(struct arena *, size_t, int),
                            void (*ffunc)(struct arena *, void *, size_t),
                            struct arena *source, size_t qcache_max, int flags);
@@ -124,7 +125,7 @@
 /* Low-level memory allocator intefaces */
 extern struct arena *base_arena;
 extern struct arena *kpages_arena;
-struct arena *arena_builder(void *pgaddr, char *name, size_t quantum,
+struct arena *arena_builder(void *pgaddr, const char *name, size_t quantum,
                             void *(*afunc)(struct arena *, size_t, int),
                             void (*ffunc)(struct arena *, void *, size_t),
                             struct arena *source, size_t qcache_max);
diff --git a/kern/src/arena.c b/kern/src/arena.c
index 30b1edb..00807ee 100644
--- a/kern/src/arena.c
+++ b/kern/src/arena.c
@@ -133,8 +133,7 @@
 	}
 }
 
-/* Helper to init.  Split out from create so we can bootstrap. */
-static void arena_init(struct arena *arena, char *name, size_t quantum,
+static void arena_init(struct arena *arena, const char *name, size_t quantum,
                        void *(*afunc)(struct arena *, size_t, int),
                        void (*ffunc)(struct arena *, void *, size_t),
                        struct arena *source, size_t qcache_max)
@@ -181,7 +180,8 @@
 	qunlock(&arenas_and_slabs_lock);
 }
 
-struct arena *arena_create(char *name, void *base, size_t size, size_t quantum,
+struct arena *arena_create(const char *name, void *base, size_t size,
+			   size_t quantum,
                            void *(*afunc)(struct arena *, size_t, int),
                            void (*ffunc)(struct arena *, void *, size_t),
                            struct arena *source, size_t qcache_max, int flags)
@@ -1164,7 +1164,7 @@
  * This will be used for each NUMA domain's base arena, kpages_arena, and
  * kmalloc_arena, since the normal arena_create() won't work yet (no kmalloc).
  */
-struct arena *arena_builder(void *pgaddr, char *name, size_t quantum,
+struct arena *arena_builder(void *pgaddr, const char *name, size_t quantum,
                             void *(*afunc)(struct arena *, size_t, int),
                             void (*ffunc)(struct arena *, void *, size_t),
                             struct arena *source, size_t qcache_max)
