From: Ankita Garg <[email protected]>

Verify that the zonelists were created appropriately.

Signed-off-by: Ankita Garg <[email protected]>
Signed-off-by: Srivatsa S. Bhat <[email protected]>
---

 mm/mm_init.c |   57 ++++++++++++++++++++++++++++++---------------------------
 1 file changed, 30 insertions(+), 27 deletions(-)

diff --git a/mm/mm_init.c b/mm/mm_init.c
index 1ffd97a..5c19842 100644
--- a/mm/mm_init.c
+++ b/mm/mm_init.c
@@ -21,6 +21,7 @@ int mminit_loglevel;
 /* The zonelists are simply reported, validation is manual. */
 void mminit_verify_zonelist(void)
 {
+       struct mem_region *region;
        int nid;
 
        if (mminit_loglevel < MMINIT_VERIFY)
@@ -28,37 +29,39 @@ void mminit_verify_zonelist(void)
 
        for_each_online_node(nid) {
                pg_data_t *pgdat = NODE_DATA(nid);
-               struct zone *zone;
-               struct zoneref *z;
-               struct zonelist *zonelist;
-               int i, listid, zoneid;
-
-               BUG_ON(MAX_ZONELISTS > 2);
-               for (i = 0; i < MAX_ZONELISTS * MAX_NR_ZONES; i++) {
-
-                       /* Identify the zone and nodelist */
-                       zoneid = i % MAX_NR_ZONES;
-                       listid = i / MAX_NR_ZONES;
-                       zonelist = &pgdat->node_zonelists[listid];
-                       zone = &pgdat->node_zones[zoneid];
-                       if (!populated_zone(zone))
-                               continue;
-
-                       /* Print information about the zonelist */
-                       printk(KERN_DEBUG "mminit::zonelist %s %d:%s = ",
-                               listid > 0 ? "thisnode" : "general", nid,
-                               zone->name);
-
-                       /* Iterate the zonelist */
-                       for_each_zone_zonelist(zone, z, zonelist, zoneid) {
+               for_each_mem_region_in_node(region, nid) {
+                       struct zone *zone;
+                       struct zoneref *z;
+                       struct zonelist *zonelist;
+                       int i, listid, zoneid;
+
+                       BUG_ON(MAX_ZONELISTS > 2);
+                       for (i = 0; i < MAX_ZONELISTS * MAX_NR_ZONES; i++) {
+
+                               /* Identify the zone and nodelist */
+                               zoneid = i % MAX_NR_ZONES;
+                               listid = i / MAX_NR_ZONES;
+                               zonelist = &pgdat->node_zonelists[listid];
+                               zone = &region->region_zones[zoneid];
+                               if (!populated_zone(zone))
+                                       continue;
+
+                               /* Print information about the zonelist */
+                               printk(KERN_DEBUG "mminit::zonelist %s %d:%s = 
",
+                                       listid > 0 ? "thisnode" : "general", 
nid,
+                                       zone->name);
+
+                               /* Iterate the zonelist */
+                               for_each_zone_zonelist(zone, z, zonelist, 
zoneid) {
 #ifdef CONFIG_NUMA
-                               printk(KERN_CONT "%d:%s ",
-                                       zone->node, zone->name);
+                                       printk(KERN_CONT "%d:%s ",
+                                               zone->node, zone->name);
 #else
-                               printk(KERN_CONT "0:%s ", zone->name);
+                                       printk(KERN_CONT "0:%s ", zone->name);
 #endif /* CONFIG_NUMA */
+                               }
+                               printk(KERN_CONT "\n");
                        }
-                       printk(KERN_CONT "\n");
                }
        }
 }

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to