diff --git a/mm/zsmalloc.c b/mm/zsmalloc.c
index 9198b16d4f1751938a927fb3352615a8ed070c73..68e8831068f4b52bb792fb0d5bc29dbee996039d 100644
--- a/mm/zsmalloc.c
+++ b/mm/zsmalloc.c
@@ -2162,7 +2162,7 @@ static void async_free_zspage(struct work_struct *work)
 		VM_BUG_ON(fullness != ZS_EMPTY);
 		class = pool->size_class[class_idx];
 		spin_lock(&class->lock);
-		__free_zspage(pool, pool->size_class[class_idx], zspage);
+		__free_zspage(pool, class, zspage);
 		spin_unlock(&class->lock);
 	}
 };