[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Getting big areas of memory, in 2.3.x?



Hi,

On Thu, 9 Dec 1999 13:25:00 +0100 (CET), Ingo Molnar
<mingo@chiara.csoma.elte.hu> said:

> hm, does anyone have any conceptual problem with a new
> allocate_largemem(pages) interface in page_alloc.c? It's not
> terribly hard to scan all bitmaps for available RAM and mark the
> large memory area allocated and remove all pages from the
> freelists. 

Even better: the zoned allocator makes it pretty easy to reserve (say)
the top 25% of memory for use only by freeable (ie. page cache and
anonymous) pages: just make a separate zone for that.  If there is
memory that you know you can reshuffle, then a slow, swapout-style
exhaustive VM search will eventually let you allocate any page you
want from that zone (barring only mlock()ed pages).

That's maybe more work than we want for a problem which may disappear
eventually of its own accord: a lot of AGP chipsets these days have a
GART which is visible from the PCI side, and that lets you map
discontiguous physical pages into a virtual region which looks
contiguous to the PCI hardware.  There's similar hardware on the Sparc
and Alpha PCI boxes (is it universal on PCI buses on those platforms?)

--Stephen


--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://humbolt.geo.uu.nl/Linux-MM/