Christoph Lameter wrote: > On Wed, 6 Dec 2006, Mel Gorman wrote: > >> Objective: Get contiguous block of free pages >> Required: Pages that can move >> Move means: Migrating them or reclaiming >> How we do it for high-order allocations: Take a page from the LRU, move >> the pages within that high-order block >> How we do it for unplug: Take the pages within the range of interest, move >> all the pages out of that range >> > > This is mostly the same. For unplug we would clear the freelists of > page in the unplug range and take the pages off the LRU that are in the > range of interest and then move them. Page migration takes pages off the > LRU. > You can also deal with memory hotplug by adding a Xen-style pseudo-physical vs machine address abstraction. This doesn't help with making space for contiguous allocations, but it does allow you to move "physical" pages from one machine page to another if you want to. The paravirt ops infrastructure has already appeared in -git, and I'll soon have patches to allow Xen's paravirtualized mmu mode to work with it, which is a superset of what would be required to implement movable pages for hotpluggable memory. (I don't know if you actually want to consider this approach; I'm just pointing out that it definitely a bad idea to conflate the two problems of memory fragmentation and hotplug.) J - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
- Follow-Ups:
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- From: Christoph Lameter <[email protected]>
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- References:
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- From: Andrew Morton <[email protected]>
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- From: Christoph Lameter <[email protected]>
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- From: Andrew Morton <[email protected]>
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- From: Christoph Lameter <[email protected]>
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- From: Andrew Morton <[email protected]>
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- From: Christoph Lameter <[email protected]>
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- From: Andrew Morton <[email protected]>
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- From: Christoph Lameter <[email protected]>
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- From: Andrew Morton <[email protected]>
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- From: Christoph Lameter <[email protected]>
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- From: [email protected] (Mel Gorman)
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- From: Christoph Lameter <[email protected]>
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- From: Mel Gorman <[email protected]>
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- From: Christoph Lameter <[email protected]>
- Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- Prev by Date: Re: I/O statistics per process
- Next by Date: Re: 2.6.19-rc6-mm2
- Previous by thread: Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- Next by thread: Re: [PATCH] Add __GFP_MOVABLE for callers to flag allocations that may be migrated
- Index(es):