Re: [PATCH 00/10] fix freepage count problems due to memory isolation

From: Vlastimil Babka
Date: Thu Jul 17 2014 - 05:28:30 EST


On 07/17/2014 08:12 AM, Joonsoo Kim wrote:

Hm I see. So what if it wasn't a special pcplist, but a special "free list"
where the pages would be just linked together as on pcplist, regardless of
order, and would not merge until the CPU that drives the memory isolation
process decides it is safe to flush them away. That would remove the need for
IPI's and provide the same guarantees I think.

Looks good. It would work. I think that your solution is better than mine.
I will implement it and test.

Thanks. But maybe there's still a good use for marking pages specially as isolated, and not PageBuddy with freepage_migratetype set to MIGRATE_ISOLATE. Why do we buddy-merge them anyway? I don't think CMA or memory offlining benefits from that, and it only makes the code more complex?
So maybe we could split isolated buddy pages to order-0 marked as PageIsolated and have a single per-zone list instead of order-based freelists?

Do we really need to check PageBuddy()? Could a page get marked as PageIsolate()
but still go to normal list instead of isolate list?

Checking PageBuddy() is used for identifying page linked in normal
list.

Ah right, forgot it walks by pfn scanning, not by traversing the free list.

Thanks.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxxx For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>


--
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/