diff --git a/mm/zsmalloc.c b/mm/zsmalloc.c
index 08def3a0d2007c3030384e4cd4d04f83b5ac7c74..e98bb6ab4f7e76c8b3f6d29c165b43fd6a6da964 100644
--- a/mm/zsmalloc.c
+++ b/mm/zsmalloc.c
@@ -2412,7 +2412,9 @@ struct zs_pool *zs_create_pool(const char *name)
 	if (!pool->name)
 		goto err;
 
+#ifdef CONFIG_COMPACTION
 	init_waitqueue_head(&pool->migration_wait);
+#endif
 
 	if (create_cache(pool))
 		goto err;