diff options
author | Artem Bityutskiy <artem.bityutskiy@linux.intel.com> | 2012-10-12 17:55:57 +0300 |
---|---|---|
committer | Artem Bityutskiy <artem.bityutskiy@linux.intel.com> | 2012-10-12 17:56:49 +0300 |
commit | c1146487fb55e15ed1881cfb815b1390b1169976 (patch) | |
tree | d800b8340000d84491585356a5486d3a4394cc20 | |
parent | 705df5beb1bfcfc07e7034752c6e4035ce5d05d3 (diff) | |
download | linux-misc-zeroed.tar.gz |
mm: add debuggingzeroed
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
-rw-r--r-- | mm/page_alloc.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c index bbebc20e955d9..5ecc1c6699af3 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -694,11 +694,14 @@ static void free_pcppages_bulk(struct zone *zone, int count, 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 @@ void free_hot_cold_page(struct page *page, int cold) 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 @@ again: * '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 @@ again: 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 |