diff --git a/mm/vmscan.c b/mm/vmscan.c index 94189499081f7f6bade9e266fb74e55976cf2667..025d8463c981ffb3165b002119af8b3b597d76aa 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -592,7 +592,7 @@ unsigned long lruvec_lru_size(struct lruvec *lruvec, enum lru_list lru, } #endif - for (zid = 0; zid <= zone_idx; zid++) { + for (zid = 0; zid <= zone_idx && zid < MAX_NR_ZONES; zid++) { struct zone *zone = &lruvec_pgdat(lruvec)->node_zones[zid]; if (!managed_zone(zone))