Use alloc_init to make sure alloc_free is called