Re: [PATCH 03/11] mm: mmzone: introduce zone_pfn_same_memmap()

From: Michal Nazarewicz
Date: Mon Dec 12 2011 - 09:35:15 EST


On Fri, Nov 18, 2011 at 05:43:10PM +0100, Marek Szyprowski wrote:
From: Michal Nazarewicz <mina86@xxxxxxxxxx>
diff --git a/mm/compaction.c b/mm/compaction.c
index 6afae0e..09c9702 100644
--- a/mm/compaction.c
+++ b/mm/compaction.c
@@ -111,7 +111,10 @@ skip:

next:
pfn += isolated;
- page += isolated;
+ if (zone_pfn_same_memmap(pfn - isolated, pfn))
+ page += isolated;
+ else
+ page = pfn_to_page(pfn);
}

On Mon, 12 Dec 2011 15:19:53 +0100, Mel Gorman <mel@xxxxxxxxx> wrote:
Is this necessary?

We are isolating pages, the largest of which is a MAX_ORDER_NR_PAGES
page. [...]

This is not true for CMA.

That said, everywhere else managed to avoid checks like this by always
scanning in units of pageblocks. Maybe this should be structured
the same way to guarantee pfn_valid is called at least per pageblock
(even though only once per MAX_ORDER_NR_PAGES is necessary).

I'll look into that.

--
Best regards, _ _
.o. | Liege of Serenely Enlightened Majesty of o' \,=./ `o
..o | Computer Science, MichaÅ âmina86â Nazarewicz (o o)
ooo +----<email/xmpp: mpn@xxxxxxxxxx>--------------ooO--(_)--Ooo--
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/