Rough notes from Kernel Consolidation meeting
catalin.marinas at arm.com
Thu Sep 23 18:03:42 BST 2010
On Thu, 2010-09-23 at 16:15 +0100, Arnd Bergmann wrote:
> On Thursday 23 September 2010, Nicolas Pitre wrote:
> > > This highmem topic comes from the fact that highmem will be needed in
> > > the period of time between now and LPAE where we have boards with lots
> > > of memory but we can't address it all without highmem (unless we want
> > > to revisit the 3g/1g split, but I personally think not).
> > Note that LPAE does require highmem to be useful. The only way highmem
> > could be avoided is to move to a 64-bit architecture.
> Right, I'd even say LPAE can only make things worse because people
> will stick even more memory into their systems, most of which then
> becomes highmem.
If you really need so much memory, it's more efficient to have LPAE
+highmem than a swap device. The problem is if the OS doesn't need so
much memory but it is available, Linux tries to allocate from highmem
first. What could help is a different zone fall back mechanism trying to
allocate from lowmem up to a certain threshold.
Another option would be to use the highmem for hosting a swap via some
form of ramdisk or slram/phram.
Yet another option is some dynamic memory hotplug based on the amount of
spare memory you've got.
> We might be able to use MMU features to implement a 4G/4G split, which
> lets us use 3GB physical RAM or more (depending on vmalloc and I/O sizes)
> without highmem, but can have an even higher cost by significantly
> slowing down uaccess.
It would be tricky to create temporary mappings for uaccess (and may
involve get_user_pages or some form of pinning the pages in memory).
More information about the linaro-dev