aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mm/page_alloc.c36
1 files changed, 17 insertions, 19 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index acbf58f8a1b7..8a6418b0d2c5 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -1305,34 +1305,30 @@ void si_meminfo_node(struct sysinfo *val, int nid)
1305 */ 1305 */
1306void show_free_areas(void) 1306void show_free_areas(void)
1307{ 1307{
1308 int cpu, temperature; 1308 int cpu;
1309 unsigned long active; 1309 unsigned long active;
1310 unsigned long inactive; 1310 unsigned long inactive;
1311 unsigned long free; 1311 unsigned long free;
1312 struct zone *zone; 1312 struct zone *zone;
1313 1313
1314 for_each_zone(zone) { 1314 for_each_zone(zone) {
1315 show_node(zone); 1315 if (!populated_zone(zone))
1316 printk("%s per-cpu:", zone->name);
1317
1318 if (!populated_zone(zone)) {
1319 printk(" empty\n");
1320 continue; 1316 continue;
1321 } else 1317
1322 printk("\n"); 1318 show_node(zone);
1319 printk("%s per-cpu:\n", zone->name);
1323 1320
1324 for_each_online_cpu(cpu) { 1321 for_each_online_cpu(cpu) {
1325 struct per_cpu_pageset *pageset; 1322 struct per_cpu_pageset *pageset;
1326 1323
1327 pageset = zone_pcp(zone, cpu); 1324 pageset = zone_pcp(zone, cpu);
1328 1325
1329 for (temperature = 0; temperature < 2; temperature++) 1326 printk("CPU %4d: Hot: hi:%5d, btch:%4d usd:%4d "
1330 printk("cpu %d %s: high %d, batch %d used:%d\n", 1327 "Cold: hi:%5d, btch:%4d usd:%4d\n",
1331 cpu, 1328 cpu, pageset->pcp[0].high,
1332 temperature ? "cold" : "hot", 1329 pageset->pcp[0].batch, pageset->pcp[0].count,
1333 pageset->pcp[temperature].high, 1330 pageset->pcp[1].high, pageset->pcp[1].batch,
1334 pageset->pcp[temperature].batch, 1331 pageset->pcp[1].count);
1335 pageset->pcp[temperature].count);
1336 } 1332 }
1337 } 1333 }
1338 1334
@@ -1354,6 +1350,9 @@ void show_free_areas(void)
1354 for_each_zone(zone) { 1350 for_each_zone(zone) {
1355 int i; 1351 int i;
1356 1352
1353 if (!populated_zone(zone))
1354 continue;
1355
1357 show_node(zone); 1356 show_node(zone);
1358 printk("%s" 1357 printk("%s"
1359 " free:%lukB" 1358 " free:%lukB"
@@ -1386,12 +1385,11 @@ void show_free_areas(void)
1386 for_each_zone(zone) { 1385 for_each_zone(zone) {
1387 unsigned long nr[MAX_ORDER], flags, order, total = 0; 1386 unsigned long nr[MAX_ORDER], flags, order, total = 0;
1388 1387
1388 if (!populated_zone(zone))
1389 continue;
1390
1389 show_node(zone); 1391 show_node(zone);
1390 printk("%s: ", zone->name); 1392 printk("%s: ", zone->name);
1391 if (!populated_zone(zone)) {
1392 printk("empty\n");
1393 continue;
1394 }
1395 1393
1396 spin_lock_irqsave(&zone->lock, flags); 1394 spin_lock_irqsave(&zone->lock, flags);
1397 for (order = 0; order < MAX_ORDER; order++) { 1395 for (order = 0; order < MAX_ORDER; order++) {