mm: add debugging
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index bbebc20..5ecc1c6 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -694,11 +694,14 @@
if (count && pcp->nzcount) {
freed = do_free_pcppages_bulk(zone, count, pcp, NOTZEROED_PAGE);
pcp->nzcount -= freed;
+ printk("%s 1: zone %s: pcp %p: freed %d, count %d, pcp->zcount %d, pcp->nzcount %d\n", __func__, zone->name, pcp, freed, count, pcp->zcount, pcp->nzcount);
}
- if (freed < count)
+ if (freed < count) {
pcp->zcount -= do_free_pcppages_bulk(zone, count - freed,
pcp, ZEROED_PAGE);
+ printk("%s 2: zone %s: pcp %p: pcp->zcount %d, pcp->nzcount %d\n", __func__, zone->name, pcp, pcp->zcount, pcp->nzcount);
+ }
}
static void free_one_page(struct zone *zone, struct page *page, int order,
@@ -1349,6 +1352,7 @@
clear_highpage(page);
list_add(&page->lru, &pcp->lists[migratetype][ZEROED_PAGE]);
pcp->zcount++;
+ printk("%s: zone %s: pcp %p: zeroed a page, pcp->zcount %d, pcp->nzcount %d (sum %d), pcp->high %d\n", __func__, zone->name, pcp, pcp->zcount, pcp->nzcount, pcp->zcount + pcp->nzcount, pcp->high);
} else {
list_add(&page->lru, &pcp->lists[migratetype][NOTZEROED_PAGE]);
pcp->nzcount++;
@@ -1499,6 +1503,7 @@
* 'prep_new_page()' from doing this.
*/
gfp_flags &= ~__GFP_ZERO;
+ printk("%s: zone %s: pcp %p: zero page picked: pcp->zcount %d, pcp->nzcount %d (sum %d), pcp->high %d\n", __func__, zone->name, pcp, pcp->zcount, pcp->nzcount, pcp->zcount + pcp->nzcount, pcp->high);
} else if (pcp->nzcount) {
/*
* A non-zeroed page is requested and we have one in
@@ -1516,6 +1521,7 @@
page = fetch_from_pcp_list(pcp, migratetype,
ZEROED_PAGE, cold);
pcp->zcount--;
+ printk("%s: zone %s: pcp %p: non-zero page picked from zero list: pcp->zcount %d, pcp->nzcount %d (sum %d), pcp->high %d\n", __func__, zone->name, pcp, pcp->zcount, pcp->nzcount, pcp->zcount + pcp->nzcount, pcp->high);
} else {
/*
* A non-zeroed page is requested and our per-CPU lists