diff --git a/mm/vmscan.c b/mm/vmscan.c
index 4c4d5f6cd8a3db7bac95858633ff2980ab2fb23d..700434db57352f7044ab08a3ddbd89c40cb9e17c 100644
--- a/mm/vmscan.c
+++ b/mm/vmscan.c
@@ -3530,7 +3530,8 @@ static void shrink_zones(struct zonelist *zonelist, struct scan_control *sc)
 		shrink_node(zone->zone_pgdat, sc);
 	}
 
-	consider_reclaim_throttle(first_pgdat, sc);
+	if (first_pgdat)
+		consider_reclaim_throttle(first_pgdat, sc);
 
 	/*
 	 * Restore to original mask to avoid the impact on the caller if we