2015-03-25 오후 7:56에 Mel Gorman 이(가) 쓴 글:
On Wed, Mar 25, 2015 at 11:39:15AM +0900, Gioh Kim wrote:
My driver allocates more than 40MB pages via alloc_page() at a time and
maps them at virtual address. Totally it uses 300~400MB pages.
If I run a heavy load test for a few days in 1GB memory system, I cannot allocate even order=3 pages
because-of the external fragmentation.
I thought I needed a anti-fragmentation solution for my driver.
But there is no allocation function that considers fragmentation.
The compaction is not helpful because it is only for movable pages, not unmovable pages.
This patch proposes a allocation function allocates only pages in the same pageblock.
Is this not what CMA is for? Or creating a MOVABLE zone?
It's not related to CMA and MOVABLE zone.
It's for compaction and anti-fragmentation for any zone.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>