Messages in this thread | | | From | Daniel Phillips <> | Subject | Re: 2.4.19pre1aa1 | Date | Mon, 4 Mar 2002 23:38:17 +0100 |
| |
On March 4, 2002 07:56 pm, Martin J. Bligh wrote: > >> 1) We can balance between zones easier by "swapping out" > >> pages to another zone. > > > > Yes, operations like "now migrate and bind this task to a certain > > cpu/mem pair" pretty much needs rmap or it will get the same complexity > > of swapout, that may be very very slow with lots of vm address space > > mapped. But this has nothing to do with the swap_out pass we were > > talking about previously. > > If we're out of memory on one node, and have free memory on another, > during the swap-out pass it would be quicker to transfer the page to > another node, ie "swap out the page to another zone" rather than swap > it out to disk. This is what I mean by the above comment (though you're > right, it helps with the more esoteric case of deliberate page migration too), > though I probably phrased it badly enough to make it incomprehensible ;-) > > I guess could this help with non-NUMA architectures too - if ZONE_NORMAL > is full, and ZONE_HIGHMEM has free pages, it would be nice to be able > to scan ZONE_NORMAL, and transfer pages to ZONE_HIGHMEM. In > reality, I suspect this won't be so useful, as there shouldn't be HIGHEM > capable page data sitting in ZONE_NORMAL unless ZONE_HIGHMEM > had been full at some point in the past?
That's the normal case when the cache is loaded up.
> And I'm not sure if we keep a bit > to say where the page could have been allocated from or not ?
No, we don't record the gfp_mask or, in the case of discontigmem, the zonelist. Perhaps this information could be recovered from the mapping, or lack of it. I don't know how you'd deduce that a page was required to be in zone_dma, for example, without specifically remembering that at page_alloc time.
-- Daniel - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |