diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 10a8c6da385fc5dcae4105e4eeefe3440eabb91d..2a00f17c3bf453efa0460d1a9b92171b4f92e2b7 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -2106,6 +2106,7 @@ __alloc_pages_slowpath(gfp_t gfp_mask, unsigned int order,
 		first_zones_zonelist(zonelist, high_zoneidx, NULL,
 					&preferred_zone);
 
+rebalance:
 	/* This is the last chance, in general, before the goto nopage. */
 	page = get_page_from_freelist(gfp_mask, nodemask, order, zonelist,
 			high_zoneidx, alloc_flags & ~ALLOC_NO_WATERMARKS,
@@ -2113,7 +2114,6 @@ __alloc_pages_slowpath(gfp_t gfp_mask, unsigned int order,
 	if (page)
 		goto got_pg;
 
-rebalance:
 	/* Allocate without watermarks if the context allows */
 	if (alloc_flags & ALLOC_NO_WATERMARKS) {
 		page = __alloc_pages_high_priority(gfp_mask, order,